typia 7.0.0-dev.20241112 → 7.0.0-dev.20241114

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 (890) hide show
  1. package/lib/TypeGuardError.js +12 -31
  2. package/lib/TypeGuardError.js.map +1 -1
  3. package/lib/executable/TypiaGenerateWizard.js +52 -159
  4. package/lib/executable/TypiaGenerateWizard.js.map +1 -1
  5. package/lib/executable/TypiaPatchWizard.js +26 -78
  6. package/lib/executable/TypiaPatchWizard.js.map +1 -1
  7. package/lib/executable/TypiaSetupWizard.js +115 -250
  8. package/lib/executable/TypiaSetupWizard.js.map +1 -1
  9. package/lib/executable/setup/ArgumentParser.js +16 -60
  10. package/lib/executable/setup/ArgumentParser.js.map +1 -1
  11. package/lib/executable/setup/CommandExecutor.js +3 -3
  12. package/lib/executable/setup/CommandExecutor.js.map +1 -1
  13. package/lib/executable/setup/FileRetriever.js +4 -4
  14. package/lib/executable/setup/FileRetriever.js.map +1 -1
  15. package/lib/executable/setup/PackageManager.js +41 -97
  16. package/lib/executable/setup/PackageManager.js.map +1 -1
  17. package/lib/executable/setup/PluginConfigurator.js +36 -72
  18. package/lib/executable/setup/PluginConfigurator.js.map +1 -1
  19. package/lib/executable/typia.js +48 -95
  20. package/lib/executable/typia.js.map +1 -1
  21. package/lib/factories/CommentFactory.js +41 -103
  22. package/lib/factories/CommentFactory.js.map +1 -1
  23. package/lib/factories/ExpressionFactory.d.ts +6 -1
  24. package/lib/factories/ExpressionFactory.js +72 -65
  25. package/lib/factories/ExpressionFactory.js.map +1 -1
  26. package/lib/factories/IdentifierFactory.js +16 -20
  27. package/lib/factories/IdentifierFactory.js.map +1 -1
  28. package/lib/factories/JsonMetadataFactory.js +19 -44
  29. package/lib/factories/JsonMetadataFactory.js.map +1 -1
  30. package/lib/factories/LiteralFactory.js +12 -43
  31. package/lib/factories/LiteralFactory.js.map +1 -1
  32. package/lib/factories/MetadataCollection.js +96 -171
  33. package/lib/factories/MetadataCollection.js.map +1 -1
  34. package/lib/factories/MetadataCommentTagFactory.js +264 -383
  35. package/lib/factories/MetadataCommentTagFactory.js.map +1 -1
  36. package/lib/factories/MetadataFactory.js +81 -273
  37. package/lib/factories/MetadataFactory.js.map +1 -1
  38. package/lib/factories/MetadataTypeTagFactory.js +116 -188
  39. package/lib/factories/MetadataTypeTagFactory.js.map +1 -1
  40. package/lib/factories/MetadataTypeTagSchemaFactory.js +30 -54
  41. package/lib/factories/MetadataTypeTagSchemaFactory.js.map +1 -1
  42. package/lib/factories/NumericRangeFactory.js +14 -30
  43. package/lib/factories/NumericRangeFactory.js.map +1 -1
  44. package/lib/factories/ProtobufFactory.js +432 -1111
  45. package/lib/factories/ProtobufFactory.js.map +1 -1
  46. package/lib/factories/StatementFactory.js +24 -34
  47. package/lib/factories/StatementFactory.js.map +1 -1
  48. package/lib/factories/TemplateFactory.js +18 -20
  49. package/lib/factories/TemplateFactory.js.map +1 -1
  50. package/lib/factories/TypeFactory.js +32 -40
  51. package/lib/factories/TypeFactory.js.map +1 -1
  52. package/lib/factories/ValueFactory.js +6 -13
  53. package/lib/factories/ValueFactory.js.map +1 -1
  54. package/lib/factories/internal/metadata/MetadataHelper.js +5 -5
  55. package/lib/factories/internal/metadata/MetadataHelper.js.map +1 -1
  56. package/lib/factories/internal/metadata/emend_metadata_atomics.js +14 -41
  57. package/lib/factories/internal/metadata/emend_metadata_atomics.js.map +1 -1
  58. package/lib/factories/internal/metadata/emplace_metadata_alias.js +5 -32
  59. package/lib/factories/internal/metadata/emplace_metadata_alias.js.map +1 -1
  60. package/lib/factories/internal/metadata/emplace_metadata_array_type.js +5 -32
  61. package/lib/factories/internal/metadata/emplace_metadata_array_type.js.map +1 -1
  62. package/lib/factories/internal/metadata/emplace_metadata_object.js +100 -172
  63. package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
  64. package/lib/factories/internal/metadata/emplace_metadata_tuple.js +13 -40
  65. package/lib/factories/internal/metadata/emplace_metadata_tuple.js.map +1 -1
  66. package/lib/factories/internal/metadata/explore_metadata.js +6 -17
  67. package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
  68. package/lib/factories/internal/metadata/iterate_metadata.js +18 -29
  69. package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
  70. package/lib/factories/internal/metadata/iterate_metadata_alias.js +10 -12
  71. package/lib/factories/internal/metadata/iterate_metadata_alias.js.map +1 -1
  72. package/lib/factories/internal/metadata/iterate_metadata_array.js +18 -52
  73. package/lib/factories/internal/metadata/iterate_metadata_array.js.map +1 -1
  74. package/lib/factories/internal/metadata/iterate_metadata_atomic.js +12 -12
  75. package/lib/factories/internal/metadata/iterate_metadata_atomic.js.map +1 -1
  76. package/lib/factories/internal/metadata/iterate_metadata_coalesce.js +4 -4
  77. package/lib/factories/internal/metadata/iterate_metadata_coalesce.js.map +1 -1
  78. package/lib/factories/internal/metadata/iterate_metadata_collection.js +47 -120
  79. package/lib/factories/internal/metadata/iterate_metadata_collection.js.map +1 -1
  80. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js +20 -42
  81. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js.map +1 -1
  82. package/lib/factories/internal/metadata/iterate_metadata_constant.js +21 -36
  83. package/lib/factories/internal/metadata/iterate_metadata_constant.js.map +1 -1
  84. package/lib/factories/internal/metadata/iterate_metadata_escape.js +9 -20
  85. package/lib/factories/internal/metadata/iterate_metadata_escape.js.map +1 -1
  86. package/lib/factories/internal/metadata/iterate_metadata_function.js +18 -45
  87. package/lib/factories/internal/metadata/iterate_metadata_function.js.map +1 -1
  88. package/lib/factories/internal/metadata/iterate_metadata_intersection.js +94 -262
  89. package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
  90. package/lib/factories/internal/metadata/iterate_metadata_map.js +14 -25
  91. package/lib/factories/internal/metadata/iterate_metadata_map.js.map +1 -1
  92. package/lib/factories/internal/metadata/iterate_metadata_native.js +87 -136
  93. package/lib/factories/internal/metadata/iterate_metadata_native.js.map +1 -1
  94. package/lib/factories/internal/metadata/iterate_metadata_object.js +8 -9
  95. package/lib/factories/internal/metadata/iterate_metadata_object.js.map +1 -1
  96. package/lib/factories/internal/metadata/iterate_metadata_set.js +14 -27
  97. package/lib/factories/internal/metadata/iterate_metadata_set.js.map +1 -1
  98. package/lib/factories/internal/metadata/iterate_metadata_sort.js +47 -169
  99. package/lib/factories/internal/metadata/iterate_metadata_sort.js.map +1 -1
  100. package/lib/factories/internal/metadata/iterate_metadata_template.js +12 -23
  101. package/lib/factories/internal/metadata/iterate_metadata_template.js.map +1 -1
  102. package/lib/factories/internal/metadata/iterate_metadata_tuple.js +6 -6
  103. package/lib/factories/internal/metadata/iterate_metadata_tuple.js.map +1 -1
  104. package/lib/factories/internal/metadata/iterate_metadata_union.js +3 -16
  105. package/lib/factories/internal/metadata/iterate_metadata_union.js.map +1 -1
  106. package/lib/functional.js +1 -1
  107. package/lib/functional.js.map +1 -1
  108. package/lib/http.js +1 -1
  109. package/lib/http.js.map +1 -1
  110. package/lib/index.js +1 -1
  111. package/lib/index.js.map +1 -1
  112. package/lib/internal/_ProtobufReader.js +54 -55
  113. package/lib/internal/_ProtobufReader.js.map +1 -1
  114. package/lib/internal/_ProtobufSizer.js +41 -43
  115. package/lib/internal/_ProtobufSizer.js.map +1 -1
  116. package/lib/internal/_ProtobufWriter.js +49 -50
  117. package/lib/internal/_ProtobufWriter.js.map +1 -1
  118. package/lib/internal/_accessExpressionAsString.js +4 -8
  119. package/lib/internal/_accessExpressionAsString.js.map +1 -1
  120. package/lib/internal/_assertGuard.js +2 -2
  121. package/lib/internal/_assertGuard.js.map +1 -1
  122. package/lib/internal/_functionalTypeGuardErrorFactory.js +2 -4
  123. package/lib/internal/_functionalTypeGuardErrorFactory.js.map +1 -1
  124. package/lib/internal/_httpFormDataReadArray.js +1 -1
  125. package/lib/internal/_httpFormDataReadArray.js.map +1 -1
  126. package/lib/internal/_httpFormDataReadBigint.js +8 -10
  127. package/lib/internal/_httpFormDataReadBigint.js.map +1 -1
  128. package/lib/internal/_httpFormDataReadBlob.js +7 -9
  129. package/lib/internal/_httpFormDataReadBlob.js.map +1 -1
  130. package/lib/internal/_httpFormDataReadBoolean.js +12 -14
  131. package/lib/internal/_httpFormDataReadBoolean.js.map +1 -1
  132. package/lib/internal/_httpFormDataReadFile.js +7 -9
  133. package/lib/internal/_httpFormDataReadFile.js.map +1 -1
  134. package/lib/internal/_httpFormDataReadNumber.js +9 -11
  135. package/lib/internal/_httpFormDataReadNumber.js.map +1 -1
  136. package/lib/internal/_httpFormDataReadString.js +7 -9
  137. package/lib/internal/_httpFormDataReadString.js.map +1 -1
  138. package/lib/internal/_httpHeaderReadBigint.js +2 -4
  139. package/lib/internal/_httpHeaderReadBigint.js.map +1 -1
  140. package/lib/internal/_httpHeaderReadBoolean.js +7 -9
  141. package/lib/internal/_httpHeaderReadBoolean.js.map +1 -1
  142. package/lib/internal/_httpHeaderReadNumber.js +3 -5
  143. package/lib/internal/_httpHeaderReadNumber.js.map +1 -1
  144. package/lib/internal/_httpParameterReadBigint.js +2 -4
  145. package/lib/internal/_httpParameterReadBigint.js.map +1 -1
  146. package/lib/internal/_httpParameterReadBoolean.js +7 -9
  147. package/lib/internal/_httpParameterReadBoolean.js.map +1 -1
  148. package/lib/internal/_httpParameterReadNumber.js +3 -5
  149. package/lib/internal/_httpParameterReadNumber.js.map +1 -1
  150. package/lib/internal/_httpParameterReadString.js +1 -3
  151. package/lib/internal/_httpParameterReadString.js.map +1 -1
  152. package/lib/internal/_httpQueryParseURLSearchParams.js +2 -2
  153. package/lib/internal/_httpQueryParseURLSearchParams.js.map +1 -1
  154. package/lib/internal/_httpQueryReadArray.js +1 -1
  155. package/lib/internal/_httpQueryReadArray.js.map +1 -1
  156. package/lib/internal/_httpQueryReadBigint.js +2 -4
  157. package/lib/internal/_httpQueryReadBigint.js.map +1 -1
  158. package/lib/internal/_httpQueryReadBoolean.js +10 -12
  159. package/lib/internal/_httpQueryReadBoolean.js.map +1 -1
  160. package/lib/internal/_httpQueryReadNumber.js +3 -5
  161. package/lib/internal/_httpQueryReadNumber.js.map +1 -1
  162. package/lib/internal/_httpQueryReadString.js +1 -3
  163. package/lib/internal/_httpQueryReadString.js.map +1 -1
  164. package/lib/internal/_isBetween.js +1 -3
  165. package/lib/internal/_isBetween.js.map +1 -1
  166. package/lib/internal/_isBigintString.js +1 -1
  167. package/lib/internal/_isBigintString.js.map +1 -1
  168. package/lib/internal/_isFormatByte.d.ts +1 -0
  169. package/lib/internal/_isFormatByte.js +10 -0
  170. package/lib/internal/_isFormatByte.js.map +1 -0
  171. package/lib/internal/_isFormatDate.d.ts +1 -0
  172. package/lib/internal/_isFormatDate.js +7 -0
  173. package/lib/internal/_isFormatDate.js.map +1 -0
  174. package/lib/internal/_isFormatDateTime.d.ts +1 -0
  175. package/lib/internal/_isFormatDateTime.js +7 -0
  176. package/lib/internal/_isFormatDateTime.js.map +1 -0
  177. package/lib/internal/_isFormatDuration.d.ts +1 -0
  178. package/lib/internal/_isFormatDuration.js +7 -0
  179. package/lib/internal/_isFormatDuration.js.map +1 -0
  180. package/lib/internal/_isFormatEmail.d.ts +1 -0
  181. package/lib/internal/_isFormatEmail.js +7 -0
  182. package/lib/internal/_isFormatEmail.js.map +1 -0
  183. package/lib/internal/_isFormatHostname.d.ts +1 -0
  184. package/lib/internal/_isFormatHostname.js +7 -0
  185. package/lib/internal/_isFormatHostname.js.map +1 -0
  186. package/lib/internal/_isFormatIdnEmail.d.ts +1 -0
  187. package/lib/internal/_isFormatIdnEmail.js +7 -0
  188. package/lib/internal/_isFormatIdnEmail.js.map +1 -0
  189. package/lib/internal/_isFormatIdnHostname.d.ts +1 -0
  190. package/lib/internal/_isFormatIdnHostname.js +7 -0
  191. package/lib/internal/_isFormatIdnHostname.js.map +1 -0
  192. package/lib/internal/_isFormatIpv4.d.ts +1 -0
  193. package/lib/internal/_isFormatIpv4.js +7 -0
  194. package/lib/internal/_isFormatIpv4.js.map +1 -0
  195. package/lib/internal/_isFormatIpv6.d.ts +1 -0
  196. package/lib/internal/_isFormatIpv6.js +7 -0
  197. package/lib/internal/_isFormatIpv6.js.map +1 -0
  198. package/lib/internal/_isFormatIri.d.ts +1 -0
  199. package/lib/internal/_isFormatIri.js +7 -0
  200. package/lib/internal/_isFormatIri.js.map +1 -0
  201. package/lib/internal/_isFormatIriReference.d.ts +1 -0
  202. package/lib/internal/_isFormatIriReference.js +7 -0
  203. package/lib/internal/_isFormatIriReference.js.map +1 -0
  204. package/lib/internal/_isFormatJsonPointer.d.ts +1 -0
  205. package/lib/internal/_isFormatJsonPointer.js +7 -0
  206. package/lib/internal/_isFormatJsonPointer.js.map +1 -0
  207. package/lib/internal/_isFormatPassword.d.ts +1 -0
  208. package/lib/internal/_isFormatPassword.js +6 -0
  209. package/lib/internal/_isFormatPassword.js.map +1 -0
  210. package/lib/internal/_isFormatRegex.d.ts +1 -0
  211. package/lib/internal/_isFormatRegex.js +14 -0
  212. package/lib/internal/_isFormatRegex.js.map +1 -0
  213. package/lib/internal/_isFormatRelativeJsonPointer.d.ts +1 -0
  214. package/lib/internal/_isFormatRelativeJsonPointer.js +7 -0
  215. package/lib/internal/_isFormatRelativeJsonPointer.js.map +1 -0
  216. package/lib/internal/_isFormatTime.d.ts +1 -0
  217. package/lib/internal/_isFormatTime.js +7 -0
  218. package/lib/internal/_isFormatTime.js.map +1 -0
  219. package/lib/internal/_isFormatUri.d.ts +1 -0
  220. package/lib/internal/_isFormatUri.js +8 -0
  221. package/lib/internal/_isFormatUri.js.map +1 -0
  222. package/lib/internal/_isFormatUriReference.d.ts +1 -0
  223. package/lib/internal/_isFormatUriReference.js +7 -0
  224. package/lib/internal/_isFormatUriReference.js.map +1 -0
  225. package/lib/internal/_isFormatUriTemplate.d.ts +1 -0
  226. package/lib/internal/_isFormatUriTemplate.js +7 -0
  227. package/lib/internal/_isFormatUriTemplate.js.map +1 -0
  228. package/lib/internal/_isFormatUrl.d.ts +1 -0
  229. package/lib/internal/_isFormatUrl.js +7 -0
  230. package/lib/internal/_isFormatUrl.js.map +1 -0
  231. package/lib/internal/_isFormatUuid.d.ts +1 -0
  232. package/lib/internal/_isFormatUuid.js +7 -0
  233. package/lib/internal/_isFormatUuid.js.map +1 -0
  234. package/lib/internal/_isTypeFloat.d.ts +1 -0
  235. package/lib/internal/_isTypeFloat.js +8 -0
  236. package/lib/internal/_isTypeFloat.js.map +1 -0
  237. package/lib/internal/_isTypeInt32.d.ts +1 -0
  238. package/lib/internal/_isTypeInt32.js +8 -0
  239. package/lib/internal/_isTypeInt32.js.map +1 -0
  240. package/lib/internal/_isTypeInt64.d.ts +1 -0
  241. package/lib/internal/_isTypeInt64.js +8 -0
  242. package/lib/internal/_isTypeInt64.js.map +1 -0
  243. package/lib/internal/_isTypeUint32.d.ts +1 -0
  244. package/lib/internal/_isTypeUint32.js +8 -0
  245. package/lib/internal/_isTypeUint32.js.map +1 -0
  246. package/lib/internal/_isTypeUint64.d.ts +1 -0
  247. package/lib/internal/_isTypeUint64.js +8 -0
  248. package/lib/internal/_isTypeUint64.js.map +1 -0
  249. package/lib/internal/_jsonStringifyNumber.js +3 -3
  250. package/lib/internal/_jsonStringifyNumber.js.map +1 -1
  251. package/lib/internal/_jsonStringifyRest.js +1 -1
  252. package/lib/internal/_jsonStringifyRest.js.map +1 -1
  253. package/lib/internal/_jsonStringifyString.js +5 -5
  254. package/lib/internal/_jsonStringifyString.js.map +1 -1
  255. package/lib/internal/_jsonStringifyTail.js +1 -3
  256. package/lib/internal/_jsonStringifyTail.js.map +1 -1
  257. package/lib/internal/_llmApplicationFinalize.js +10 -33
  258. package/lib/internal/_llmApplicationFinalize.js.map +1 -1
  259. package/lib/internal/_miscCloneAny.js +6 -42
  260. package/lib/internal/_miscCloneAny.js.map +1 -1
  261. package/lib/internal/_notationAny.js +3 -24
  262. package/lib/internal/_notationAny.js.map +1 -1
  263. package/lib/internal/_notationCamel.js +8 -12
  264. package/lib/internal/_notationCamel.js.map +1 -1
  265. package/lib/internal/_notationPascal.js +3 -5
  266. package/lib/internal/_notationPascal.js.map +1 -1
  267. package/lib/internal/_notationSnake.js +16 -16
  268. package/lib/internal/_notationSnake.js.map +1 -1
  269. package/lib/internal/_randomArray.js +5 -5
  270. package/lib/internal/_randomArray.js.map +1 -1
  271. package/lib/internal/_randomBigint.js +2 -4
  272. package/lib/internal/_randomBigint.js.map +1 -1
  273. package/lib/internal/_randomBoolean.js +1 -1
  274. package/lib/internal/_randomBoolean.js.map +1 -1
  275. package/lib/internal/_randomFormatByte.js +2 -2
  276. package/lib/internal/_randomFormatByte.js.map +1 -1
  277. package/lib/internal/_randomFormatDate.js +2 -2
  278. package/lib/internal/_randomFormatDate.js.map +1 -1
  279. package/lib/internal/_randomFormatDatetime.js +2 -2
  280. package/lib/internal/_randomFormatDatetime.js.map +1 -1
  281. package/lib/internal/_randomFormatDuration.js +14 -40
  282. package/lib/internal/_randomFormatDuration.js.map +1 -1
  283. package/lib/internal/_randomFormatEmail.js +7 -11
  284. package/lib/internal/_randomFormatEmail.js.map +1 -1
  285. package/lib/internal/_randomFormatHostname.js +3 -5
  286. package/lib/internal/_randomFormatHostname.js.map +1 -1
  287. package/lib/internal/_randomFormatIdnEmail.js +2 -2
  288. package/lib/internal/_randomFormatIdnEmail.js.map +1 -1
  289. package/lib/internal/_randomFormatIdnHostname.js +2 -2
  290. package/lib/internal/_randomFormatIdnHostname.js.map +1 -1
  291. package/lib/internal/_randomFormatIpv4.js +7 -11
  292. package/lib/internal/_randomFormatIpv4.js.map +1 -1
  293. package/lib/internal/_randomFormatIpv6.js +7 -11
  294. package/lib/internal/_randomFormatIpv6.js.map +1 -1
  295. package/lib/internal/_randomFormatIri.js +2 -2
  296. package/lib/internal/_randomFormatIri.js.map +1 -1
  297. package/lib/internal/_randomFormatIriReference.js +2 -2
  298. package/lib/internal/_randomFormatIriReference.js.map +1 -1
  299. package/lib/internal/_randomFormatJsonPointer.js +3 -7
  300. package/lib/internal/_randomFormatJsonPointer.js.map +1 -1
  301. package/lib/internal/_randomFormatPassword.js +6 -8
  302. package/lib/internal/_randomFormatPassword.js.map +1 -1
  303. package/lib/internal/_randomFormatRegex.js +2 -2
  304. package/lib/internal/_randomFormatRegex.js.map +1 -1
  305. package/lib/internal/_randomFormatRelativeJsonPointer.js +6 -8
  306. package/lib/internal/_randomFormatRelativeJsonPointer.js.map +1 -1
  307. package/lib/internal/_randomFormatTime.js +9 -11
  308. package/lib/internal/_randomFormatTime.js.map +1 -1
  309. package/lib/internal/_randomFormatUri.js +2 -2
  310. package/lib/internal/_randomFormatUri.js.map +1 -1
  311. package/lib/internal/_randomFormatUriReference.js +2 -2
  312. package/lib/internal/_randomFormatUriReference.js.map +1 -1
  313. package/lib/internal/_randomFormatUriTemplate.js +2 -2
  314. package/lib/internal/_randomFormatUriTemplate.js.map +1 -1
  315. package/lib/internal/_randomFormatUrl.js +7 -11
  316. package/lib/internal/_randomFormatUrl.js.map +1 -1
  317. package/lib/internal/_randomFormatUuid.js +5 -7
  318. package/lib/internal/_randomFormatUuid.js.map +1 -1
  319. package/lib/internal/_randomInteger.js +14 -16
  320. package/lib/internal/_randomInteger.js.map +1 -1
  321. package/lib/internal/_randomNumber.js +15 -15
  322. package/lib/internal/_randomNumber.js.map +1 -1
  323. package/lib/internal/_randomPattern.js +5 -5
  324. package/lib/internal/_randomPattern.js.map +1 -1
  325. package/lib/internal/_randomPick.js +7 -9
  326. package/lib/internal/_randomPick.js.map +1 -1
  327. package/lib/internal/_randomString.js +10 -12
  328. package/lib/internal/_randomString.js.map +1 -1
  329. package/lib/internal/_throwTypeGuardError.js +2 -2
  330. package/lib/internal/_throwTypeGuardError.js.map +1 -1
  331. package/lib/internal/_validateReport.js +4 -4
  332. package/lib/internal/_validateReport.js.map +1 -1
  333. package/lib/internal/private/__notationCapitalize.js +1 -3
  334. package/lib/internal/private/__notationCapitalize.js.map +1 -1
  335. package/lib/internal/private/__notationUnsnake.js +20 -22
  336. package/lib/internal/private/__notationUnsnake.js.map +1 -1
  337. package/lib/json.js +1 -1
  338. package/lib/json.js.map +1 -1
  339. package/lib/llm.js +1 -1
  340. package/lib/llm.js.map +1 -1
  341. package/lib/misc.js +1 -1
  342. package/lib/misc.js.map +1 -1
  343. package/lib/module.js +1 -1
  344. package/lib/module.js.map +1 -1
  345. package/lib/notations.js +1 -1
  346. package/lib/notations.js.map +1 -1
  347. package/lib/programmers/AssertProgrammer.js +142 -200
  348. package/lib/programmers/AssertProgrammer.js.map +1 -1
  349. package/lib/programmers/CheckerProgrammer.js +595 -801
  350. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  351. package/lib/programmers/FeatureProgrammer.js +104 -155
  352. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  353. package/lib/programmers/ImportProgrammer.js +51 -99
  354. package/lib/programmers/ImportProgrammer.js.map +1 -1
  355. package/lib/programmers/IsProgrammer.js +84 -137
  356. package/lib/programmers/IsProgrammer.js.map +1 -1
  357. package/lib/programmers/RandomProgrammer.js +403 -608
  358. package/lib/programmers/RandomProgrammer.js.map +1 -1
  359. package/lib/programmers/TypiaProgrammer.js +115 -285
  360. package/lib/programmers/TypiaProgrammer.js.map +1 -1
  361. package/lib/programmers/ValidateProgrammer.js +120 -179
  362. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  363. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js +33 -58
  364. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js.map +1 -1
  365. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js +41 -71
  366. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js.map +1 -1
  367. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js +19 -46
  368. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js.map +1 -1
  369. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js +13 -36
  370. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js.map +1 -1
  371. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js +26 -51
  372. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js.map +1 -1
  373. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js +21 -58
  374. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js.map +1 -1
  375. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js +20 -45
  376. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js.map +1 -1
  377. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js +33 -71
  378. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js.map +1 -1
  379. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js +21 -58
  380. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js.map +1 -1
  381. package/lib/programmers/functional/internal/FunctionalGeneralProgrammer.js +6 -6
  382. package/lib/programmers/functional/internal/FunctionalGeneralProgrammer.js.map +1 -1
  383. package/lib/programmers/helpers/AtomicPredicator.js +6 -12
  384. package/lib/programmers/helpers/AtomicPredicator.js.map +1 -1
  385. package/lib/programmers/helpers/CloneJoiner.js +25 -56
  386. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  387. package/lib/programmers/helpers/FunctionProgrammer.js +31 -64
  388. package/lib/programmers/helpers/FunctionProgrammer.js.map +1 -1
  389. package/lib/programmers/helpers/HttpMetadataUtil.js +12 -37
  390. package/lib/programmers/helpers/HttpMetadataUtil.js.map +1 -1
  391. package/lib/programmers/helpers/NotationJoiner.js +25 -56
  392. package/lib/programmers/helpers/NotationJoiner.js.map +1 -1
  393. package/lib/programmers/helpers/OptionPredicator.js +4 -12
  394. package/lib/programmers/helpers/OptionPredicator.js.map +1 -1
  395. package/lib/programmers/helpers/ProtobufUtil.js +119 -309
  396. package/lib/programmers/helpers/ProtobufUtil.js.map +1 -1
  397. package/lib/programmers/helpers/PruneJoiner.js +36 -72
  398. package/lib/programmers/helpers/PruneJoiner.js.map +1 -1
  399. package/lib/programmers/helpers/RandomJoiner.js +43 -86
  400. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  401. package/lib/programmers/helpers/StringifyJoinder.js +35 -59
  402. package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
  403. package/lib/programmers/helpers/StringifyPredicator.js +5 -9
  404. package/lib/programmers/helpers/StringifyPredicator.js.map +1 -1
  405. package/lib/programmers/helpers/UnionExplorer.js +138 -194
  406. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  407. package/lib/programmers/helpers/UnionPredicator.js +26 -83
  408. package/lib/programmers/helpers/UnionPredicator.js.map +1 -1
  409. package/lib/programmers/helpers/disable_function_programmer_declare.js +10 -10
  410. package/lib/programmers/helpers/disable_function_programmer_declare.js.map +1 -1
  411. package/lib/programmers/http/HttpAssertFormDataProgrammer.js +21 -55
  412. package/lib/programmers/http/HttpAssertFormDataProgrammer.js.map +1 -1
  413. package/lib/programmers/http/HttpAssertHeadersProgrammer.js +21 -55
  414. package/lib/programmers/http/HttpAssertHeadersProgrammer.js.map +1 -1
  415. package/lib/programmers/http/HttpAssertQueryProgrammer.js +21 -55
  416. package/lib/programmers/http/HttpAssertQueryProgrammer.js.map +1 -1
  417. package/lib/programmers/http/HttpFormDataProgrammer.js +62 -93
  418. package/lib/programmers/http/HttpFormDataProgrammer.js.map +1 -1
  419. package/lib/programmers/http/HttpHeadersProgrammer.js +80 -149
  420. package/lib/programmers/http/HttpHeadersProgrammer.js.map +1 -1
  421. package/lib/programmers/http/HttpIsFormDataProgrammer.js +20 -54
  422. package/lib/programmers/http/HttpIsFormDataProgrammer.js.map +1 -1
  423. package/lib/programmers/http/HttpIsHeadersProgrammer.js +20 -54
  424. package/lib/programmers/http/HttpIsHeadersProgrammer.js.map +1 -1
  425. package/lib/programmers/http/HttpIsQueryProgrammer.js +20 -54
  426. package/lib/programmers/http/HttpIsQueryProgrammer.js.map +1 -1
  427. package/lib/programmers/http/HttpParameterProgrammer.js +22 -58
  428. package/lib/programmers/http/HttpParameterProgrammer.js.map +1 -1
  429. package/lib/programmers/http/HttpQueryProgrammer.js +60 -94
  430. package/lib/programmers/http/HttpQueryProgrammer.js.map +1 -1
  431. package/lib/programmers/http/HttpValidateFormDataProgrammer.js +19 -54
  432. package/lib/programmers/http/HttpValidateFormDataProgrammer.js.map +1 -1
  433. package/lib/programmers/http/HttpValidateHeadersProgrammer.js +19 -54
  434. package/lib/programmers/http/HttpValidateHeadersProgrammer.js.map +1 -1
  435. package/lib/programmers/http/HttpValidateQueryProgrammer.js +19 -54
  436. package/lib/programmers/http/HttpValidateQueryProgrammer.js.map +1 -1
  437. package/lib/programmers/internal/check_array_length.js +17 -17
  438. package/lib/programmers/internal/check_array_length.js.map +1 -1
  439. package/lib/programmers/internal/check_bigint.js +18 -18
  440. package/lib/programmers/internal/check_bigint.js.map +1 -1
  441. package/lib/programmers/internal/check_dynamic_key.js +57 -141
  442. package/lib/programmers/internal/check_dynamic_key.js.map +1 -1
  443. package/lib/programmers/internal/check_dynamic_properties.js +46 -96
  444. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  445. package/lib/programmers/internal/check_everything.js +6 -8
  446. package/lib/programmers/internal/check_everything.js.map +1 -1
  447. package/lib/programmers/internal/check_native.js +5 -5
  448. package/lib/programmers/internal/check_native.js.map +1 -1
  449. package/lib/programmers/internal/check_number.js +35 -63
  450. package/lib/programmers/internal/check_number.js.map +1 -1
  451. package/lib/programmers/internal/check_object.js +12 -14
  452. package/lib/programmers/internal/check_object.js.map +1 -1
  453. package/lib/programmers/internal/check_string.js +18 -18
  454. package/lib/programmers/internal/check_string.js.map +1 -1
  455. package/lib/programmers/internal/check_template.js +11 -13
  456. package/lib/programmers/internal/check_template.js.map +1 -1
  457. package/lib/programmers/internal/check_union_array_like.js +42 -57
  458. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  459. package/lib/programmers/internal/decode_union_object.js +33 -63
  460. package/lib/programmers/internal/decode_union_object.js.map +1 -1
  461. package/lib/programmers/internal/feature_object_entries.js +34 -36
  462. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  463. package/lib/programmers/internal/json_schema_alias.js +9 -9
  464. package/lib/programmers/internal/json_schema_alias.js.map +1 -1
  465. package/lib/programmers/internal/json_schema_array.js +20 -22
  466. package/lib/programmers/internal/json_schema_array.js.map +1 -1
  467. package/lib/programmers/internal/json_schema_bigint.js +7 -9
  468. package/lib/programmers/internal/json_schema_bigint.js.map +1 -1
  469. package/lib/programmers/internal/json_schema_boolean.js +7 -9
  470. package/lib/programmers/internal/json_schema_boolean.js.map +1 -1
  471. package/lib/programmers/internal/json_schema_constant.js +18 -20
  472. package/lib/programmers/internal/json_schema_constant.js.map +1 -1
  473. package/lib/programmers/internal/json_schema_description.js +2 -2
  474. package/lib/programmers/internal/json_schema_description.js.map +1 -1
  475. package/lib/programmers/internal/json_schema_discriminator.js +10 -10
  476. package/lib/programmers/internal/json_schema_discriminator.js.map +1 -1
  477. package/lib/programmers/internal/json_schema_escaped.js +19 -27
  478. package/lib/programmers/internal/json_schema_escaped.js.map +1 -1
  479. package/lib/programmers/internal/json_schema_native.js +3 -3
  480. package/lib/programmers/internal/json_schema_native.js.map +1 -1
  481. package/lib/programmers/internal/json_schema_number.js +7 -9
  482. package/lib/programmers/internal/json_schema_number.js.map +1 -1
  483. package/lib/programmers/internal/json_schema_object.js +68 -92
  484. package/lib/programmers/internal/json_schema_object.js.map +1 -1
  485. package/lib/programmers/internal/json_schema_plugin.js +8 -42
  486. package/lib/programmers/internal/json_schema_plugin.js.map +1 -1
  487. package/lib/programmers/internal/json_schema_station.js +75 -178
  488. package/lib/programmers/internal/json_schema_station.js.map +1 -1
  489. package/lib/programmers/internal/json_schema_string.js +7 -9
  490. package/lib/programmers/internal/json_schema_string.js.map +1 -1
  491. package/lib/programmers/internal/json_schema_template.js +22 -85
  492. package/lib/programmers/internal/json_schema_template.js.map +1 -1
  493. package/lib/programmers/internal/json_schema_title.js +5 -5
  494. package/lib/programmers/internal/json_schema_title.js.map +1 -1
  495. package/lib/programmers/internal/json_schema_tuple.js +10 -12
  496. package/lib/programmers/internal/json_schema_tuple.js.map +1 -1
  497. package/lib/programmers/internal/metadata_to_pattern.js +21 -57
  498. package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
  499. package/lib/programmers/internal/postfix_of_tuple.js +1 -3
  500. package/lib/programmers/internal/postfix_of_tuple.js.map +1 -1
  501. package/lib/programmers/internal/prune_object_properties.js +11 -11
  502. package/lib/programmers/internal/prune_object_properties.js.map +1 -1
  503. package/lib/programmers/internal/stringify_dynamic_properties.js +25 -49
  504. package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
  505. package/lib/programmers/internal/stringify_native.js +2 -4
  506. package/lib/programmers/internal/stringify_native.js.map +1 -1
  507. package/lib/programmers/internal/stringify_regular_properties.js +17 -44
  508. package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
  509. package/lib/programmers/internal/template_to_pattern.js +8 -10
  510. package/lib/programmers/internal/template_to_pattern.js.map +1 -1
  511. package/lib/programmers/internal/wrap_metadata_rest_tuple.js +6 -6
  512. package/lib/programmers/internal/wrap_metadata_rest_tuple.js.map +1 -1
  513. package/lib/programmers/json/JsonApplicationProgrammer.js +81 -143
  514. package/lib/programmers/json/JsonApplicationProgrammer.js.map +1 -1
  515. package/lib/programmers/json/JsonAssertParseProgrammer.js +18 -53
  516. package/lib/programmers/json/JsonAssertParseProgrammer.js.map +1 -1
  517. package/lib/programmers/json/JsonAssertStringifyProgrammer.js +22 -56
  518. package/lib/programmers/json/JsonAssertStringifyProgrammer.js.map +1 -1
  519. package/lib/programmers/json/JsonIsParseProgrammer.js +18 -53
  520. package/lib/programmers/json/JsonIsParseProgrammer.js.map +1 -1
  521. package/lib/programmers/json/JsonIsStringifyProgrammer.js +21 -55
  522. package/lib/programmers/json/JsonIsStringifyProgrammer.js.map +1 -1
  523. package/lib/programmers/json/JsonSchemasProgrammer.js +35 -64
  524. package/lib/programmers/json/JsonSchemasProgrammer.js.map +1 -1
  525. package/lib/programmers/json/JsonStringifyProgrammer.js +363 -581
  526. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  527. package/lib/programmers/json/JsonValidateParseProgrammer.js +18 -53
  528. package/lib/programmers/json/JsonValidateParseProgrammer.js.map +1 -1
  529. package/lib/programmers/json/JsonValidateStringifyProgrammer.js +22 -56
  530. package/lib/programmers/json/JsonValidateStringifyProgrammer.js.map +1 -1
  531. package/lib/programmers/llm/LlmApplicationProgrammer.js +70 -131
  532. package/lib/programmers/llm/LlmApplicationProgrammer.js.map +1 -1
  533. package/lib/programmers/llm/LlmSchemaProgrammer.js +65 -100
  534. package/lib/programmers/llm/LlmSchemaProgrammer.js.map +1 -1
  535. package/lib/programmers/misc/MiscAssertCloneProgrammer.js +21 -55
  536. package/lib/programmers/misc/MiscAssertCloneProgrammer.js.map +1 -1
  537. package/lib/programmers/misc/MiscAssertPruneProgrammer.js +21 -55
  538. package/lib/programmers/misc/MiscAssertPruneProgrammer.js.map +1 -1
  539. package/lib/programmers/misc/MiscCloneProgrammer.js +414 -582
  540. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  541. package/lib/programmers/misc/MiscIsCloneProgrammer.js +21 -55
  542. package/lib/programmers/misc/MiscIsCloneProgrammer.js.map +1 -1
  543. package/lib/programmers/misc/MiscIsPruneProgrammer.js +21 -55
  544. package/lib/programmers/misc/MiscIsPruneProgrammer.js.map +1 -1
  545. package/lib/programmers/misc/MiscLiteralsProgrammer.js +32 -55
  546. package/lib/programmers/misc/MiscLiteralsProgrammer.js.map +1 -1
  547. package/lib/programmers/misc/MiscPruneProgrammer.js +291 -441
  548. package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
  549. package/lib/programmers/misc/MiscValidateCloneProgrammer.js +21 -55
  550. package/lib/programmers/misc/MiscValidateCloneProgrammer.js.map +1 -1
  551. package/lib/programmers/misc/MiscValidatePruneProgrammer.js +21 -55
  552. package/lib/programmers/misc/MiscValidatePruneProgrammer.js.map +1 -1
  553. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js +21 -55
  554. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js.map +1 -1
  555. package/lib/programmers/notations/NotationGeneralProgrammer.js +371 -534
  556. package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -1
  557. package/lib/programmers/notations/NotationIsGeneralProgrammer.js +21 -55
  558. package/lib/programmers/notations/NotationIsGeneralProgrammer.js.map +1 -1
  559. package/lib/programmers/notations/NotationValidateGeneralProgrammer.js +21 -55
  560. package/lib/programmers/notations/NotationValidateGeneralProgrammer.js.map +1 -1
  561. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js +22 -55
  562. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js.map +1 -1
  563. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.js +21 -55
  564. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.js.map +1 -1
  565. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +156 -222
  566. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
  567. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +279 -402
  568. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  569. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js +20 -54
  570. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js.map +1 -1
  571. package/lib/programmers/protobuf/ProtobufIsEncodeProgrammer.js +21 -55
  572. package/lib/programmers/protobuf/ProtobufIsEncodeProgrammer.js.map +1 -1
  573. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +68 -117
  574. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
  575. package/lib/programmers/protobuf/ProtobufValidateDecodeProgrammer.js +19 -54
  576. package/lib/programmers/protobuf/ProtobufValidateDecodeProgrammer.js.map +1 -1
  577. package/lib/programmers/protobuf/ProtobufValidateEncodeProgrammer.js +21 -55
  578. package/lib/programmers/protobuf/ProtobufValidateEncodeProgrammer.js.map +1 -1
  579. package/lib/protobuf.js +1 -1
  580. package/lib/protobuf.js.map +1 -1
  581. package/lib/reflect.js +1 -1
  582. package/lib/reflect.js.map +1 -1
  583. package/lib/schemas/metadata/Metadata.js +248 -625
  584. package/lib/schemas/metadata/Metadata.js.map +1 -1
  585. package/lib/schemas/metadata/MetadataAlias.js +22 -48
  586. package/lib/schemas/metadata/MetadataAlias.js.map +1 -1
  587. package/lib/schemas/metadata/MetadataAliasType.js +9 -10
  588. package/lib/schemas/metadata/MetadataAliasType.js.map +1 -1
  589. package/lib/schemas/metadata/MetadataApplication.js +15 -18
  590. package/lib/schemas/metadata/MetadataApplication.js.map +1 -1
  591. package/lib/schemas/metadata/MetadataArray.js +23 -49
  592. package/lib/schemas/metadata/MetadataArray.js.map +1 -1
  593. package/lib/schemas/metadata/MetadataArrayType.js +9 -10
  594. package/lib/schemas/metadata/MetadataArrayType.js.map +1 -1
  595. package/lib/schemas/metadata/MetadataAtomic.js +46 -76
  596. package/lib/schemas/metadata/MetadataAtomic.js.map +1 -1
  597. package/lib/schemas/metadata/MetadataComponents.js +44 -128
  598. package/lib/schemas/metadata/MetadataComponents.js.map +1 -1
  599. package/lib/schemas/metadata/MetadataConstant.js +11 -12
  600. package/lib/schemas/metadata/MetadataConstant.js.map +1 -1
  601. package/lib/schemas/metadata/MetadataConstantValue.js +17 -18
  602. package/lib/schemas/metadata/MetadataConstantValue.js.map +1 -1
  603. package/lib/schemas/metadata/MetadataEscaped.js +12 -13
  604. package/lib/schemas/metadata/MetadataEscaped.js.map +1 -1
  605. package/lib/schemas/metadata/MetadataFunction.js +13 -14
  606. package/lib/schemas/metadata/MetadataFunction.js.map +1 -1
  607. package/lib/schemas/metadata/MetadataMap.js +19 -46
  608. package/lib/schemas/metadata/MetadataMap.js.map +1 -1
  609. package/lib/schemas/metadata/MetadataNative.js +22 -48
  610. package/lib/schemas/metadata/MetadataNative.js.map +1 -1
  611. package/lib/schemas/metadata/MetadataObject.js +23 -49
  612. package/lib/schemas/metadata/MetadataObject.js.map +1 -1
  613. package/lib/schemas/metadata/MetadataObjectType.js +32 -45
  614. package/lib/schemas/metadata/MetadataObjectType.js.map +1 -1
  615. package/lib/schemas/metadata/MetadataParameter.js +10 -11
  616. package/lib/schemas/metadata/MetadataParameter.js.map +1 -1
  617. package/lib/schemas/metadata/MetadataProperty.js +10 -11
  618. package/lib/schemas/metadata/MetadataProperty.js.map +1 -1
  619. package/lib/schemas/metadata/MetadataSet.js +19 -46
  620. package/lib/schemas/metadata/MetadataSet.js.map +1 -1
  621. package/lib/schemas/metadata/MetadataTemplate.js +27 -55
  622. package/lib/schemas/metadata/MetadataTemplate.js.map +1 -1
  623. package/lib/schemas/metadata/MetadataTuple.js +8 -9
  624. package/lib/schemas/metadata/MetadataTuple.js.map +1 -1
  625. package/lib/schemas/metadata/MetadataTupleType.js +12 -13
  626. package/lib/schemas/metadata/MetadataTupleType.js.map +1 -1
  627. package/lib/tags/Format.d.ts +6 -4
  628. package/lib/tags/Type.d.ts +4 -4
  629. package/lib/tags/internal/FormatCheatSheet.js +23 -25
  630. package/lib/tags/internal/FormatCheatSheet.js.map +1 -1
  631. package/lib/transform.js +8 -8
  632. package/lib/transform.js.map +1 -1
  633. package/lib/transformers/CallExpressionTransformer.js +370 -480
  634. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  635. package/lib/transformers/FileTransformer.js +40 -85
  636. package/lib/transformers/FileTransformer.js.map +1 -1
  637. package/lib/transformers/ImportTransformer.js +25 -33
  638. package/lib/transformers/ImportTransformer.js.map +1 -1
  639. package/lib/transformers/NodeTransformer.js +8 -10
  640. package/lib/transformers/NodeTransformer.js.map +1 -1
  641. package/lib/transformers/TransformerError.js +25 -44
  642. package/lib/transformers/TransformerError.js.map +1 -1
  643. package/lib/transformers/features/AssertTransformer.js +9 -24
  644. package/lib/transformers/features/AssertTransformer.js.map +1 -1
  645. package/lib/transformers/features/CreateAssertTransformer.js +9 -24
  646. package/lib/transformers/features/CreateAssertTransformer.js.map +1 -1
  647. package/lib/transformers/features/CreateIsTransformer.js +3 -18
  648. package/lib/transformers/features/CreateIsTransformer.js.map +1 -1
  649. package/lib/transformers/features/CreateRandomTransformer.js +7 -18
  650. package/lib/transformers/features/CreateRandomTransformer.js.map +1 -1
  651. package/lib/transformers/features/CreateValidateTransformer.js +3 -18
  652. package/lib/transformers/features/CreateValidateTransformer.js.map +1 -1
  653. package/lib/transformers/features/IsTransformer.js +3 -18
  654. package/lib/transformers/features/IsTransformer.js.map +1 -1
  655. package/lib/transformers/features/RandomTransformer.js +9 -9
  656. package/lib/transformers/features/RandomTransformer.js.map +1 -1
  657. package/lib/transformers/features/ValidateTransformer.js +3 -18
  658. package/lib/transformers/features/ValidateTransformer.js.map +1 -1
  659. package/lib/transformers/features/functional/FunctionalGenericTransformer.js +19 -32
  660. package/lib/transformers/features/functional/FunctionalGenericTransformer.js.map +1 -1
  661. package/lib/transformers/features/http/CreateHttpAssertFormDataTransformer.js +3 -16
  662. package/lib/transformers/features/http/CreateHttpAssertFormDataTransformer.js.map +1 -1
  663. package/lib/transformers/features/http/CreateHttpAssertHeadersTransformer.js +3 -16
  664. package/lib/transformers/features/http/CreateHttpAssertHeadersTransformer.js.map +1 -1
  665. package/lib/transformers/features/http/CreateHttpAssertQueryTransformer.js +3 -16
  666. package/lib/transformers/features/http/CreateHttpAssertQueryTransformer.js.map +1 -1
  667. package/lib/transformers/features/http/CreateHttpFormDataTransformer.js +3 -16
  668. package/lib/transformers/features/http/CreateHttpFormDataTransformer.js.map +1 -1
  669. package/lib/transformers/features/http/CreateHttpHeadersTransformer.js +3 -16
  670. package/lib/transformers/features/http/CreateHttpHeadersTransformer.js.map +1 -1
  671. package/lib/transformers/features/http/CreateHttpIsFormDataTransformer.js +3 -16
  672. package/lib/transformers/features/http/CreateHttpIsFormDataTransformer.js.map +1 -1
  673. package/lib/transformers/features/http/CreateHttpIsHeadersTransformer.js +3 -16
  674. package/lib/transformers/features/http/CreateHttpIsHeadersTransformer.js.map +1 -1
  675. package/lib/transformers/features/http/CreateHttpIsQueryTransformer.js +3 -16
  676. package/lib/transformers/features/http/CreateHttpIsQueryTransformer.js.map +1 -1
  677. package/lib/transformers/features/http/CreateHttpParameterTransformer.js +3 -16
  678. package/lib/transformers/features/http/CreateHttpParameterTransformer.js.map +1 -1
  679. package/lib/transformers/features/http/CreateHttpQueryTransformer.js +3 -16
  680. package/lib/transformers/features/http/CreateHttpQueryTransformer.js.map +1 -1
  681. package/lib/transformers/features/http/CreateHttpValidateFormDataTransformer.js +3 -16
  682. package/lib/transformers/features/http/CreateHttpValidateFormDataTransformer.js.map +1 -1
  683. package/lib/transformers/features/http/CreateHttpValidateHeadersTransformer.js +3 -16
  684. package/lib/transformers/features/http/CreateHttpValidateHeadersTransformer.js.map +1 -1
  685. package/lib/transformers/features/http/CreateHttpValidateQueryTransformer.js +3 -16
  686. package/lib/transformers/features/http/CreateHttpValidateQueryTransformer.js.map +1 -1
  687. package/lib/transformers/features/http/HttpAssertFormDataTransformer.js +3 -16
  688. package/lib/transformers/features/http/HttpAssertFormDataTransformer.js.map +1 -1
  689. package/lib/transformers/features/http/HttpAssertHeadersTransformer.js +3 -16
  690. package/lib/transformers/features/http/HttpAssertHeadersTransformer.js.map +1 -1
  691. package/lib/transformers/features/http/HttpAssertQueryTransformer.js +3 -16
  692. package/lib/transformers/features/http/HttpAssertQueryTransformer.js.map +1 -1
  693. package/lib/transformers/features/http/HttpFormDataTransformer.js +3 -16
  694. package/lib/transformers/features/http/HttpFormDataTransformer.js.map +1 -1
  695. package/lib/transformers/features/http/HttpHeadersTransformer.js +3 -16
  696. package/lib/transformers/features/http/HttpHeadersTransformer.js.map +1 -1
  697. package/lib/transformers/features/http/HttpIsFormDataTransformer.js +3 -16
  698. package/lib/transformers/features/http/HttpIsFormDataTransformer.js.map +1 -1
  699. package/lib/transformers/features/http/HttpIsHeadersTransformer.js +3 -16
  700. package/lib/transformers/features/http/HttpIsHeadersTransformer.js.map +1 -1
  701. package/lib/transformers/features/http/HttpIsQueryTransformer.js +3 -16
  702. package/lib/transformers/features/http/HttpIsQueryTransformer.js.map +1 -1
  703. package/lib/transformers/features/http/HttpParameterTransformer.js +3 -16
  704. package/lib/transformers/features/http/HttpParameterTransformer.js.map +1 -1
  705. package/lib/transformers/features/http/HttpQueryTransformer.js +3 -16
  706. package/lib/transformers/features/http/HttpQueryTransformer.js.map +1 -1
  707. package/lib/transformers/features/http/HttpValidateFormDataTransformer.js +3 -16
  708. package/lib/transformers/features/http/HttpValidateFormDataTransformer.js.map +1 -1
  709. package/lib/transformers/features/http/HttpValidateHeadersTransformer.js +3 -16
  710. package/lib/transformers/features/http/HttpValidateHeadersTransformer.js.map +1 -1
  711. package/lib/transformers/features/http/HttpValidateQueryTransformer.js +3 -16
  712. package/lib/transformers/features/http/HttpValidateQueryTransformer.js.map +1 -1
  713. package/lib/transformers/features/json/JsonApplicationTransformer.js +41 -43
  714. package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
  715. package/lib/transformers/features/json/JsonAssertParseTransformer.js +3 -16
  716. package/lib/transformers/features/json/JsonAssertParseTransformer.js.map +1 -1
  717. package/lib/transformers/features/json/JsonAssertStringifyTransformer.js +3 -16
  718. package/lib/transformers/features/json/JsonAssertStringifyTransformer.js.map +1 -1
  719. package/lib/transformers/features/json/JsonCreateAssertParseTransformer.js +3 -16
  720. package/lib/transformers/features/json/JsonCreateAssertParseTransformer.js.map +1 -1
  721. package/lib/transformers/features/json/JsonCreateAssertStringifyTransformer.js +3 -16
  722. package/lib/transformers/features/json/JsonCreateAssertStringifyTransformer.js.map +1 -1
  723. package/lib/transformers/features/json/JsonCreateIsParseTransformer.js +3 -16
  724. package/lib/transformers/features/json/JsonCreateIsParseTransformer.js.map +1 -1
  725. package/lib/transformers/features/json/JsonCreateIsStringifyTransformer.js +3 -16
  726. package/lib/transformers/features/json/JsonCreateIsStringifyTransformer.js.map +1 -1
  727. package/lib/transformers/features/json/JsonCreateStringifyTransformer.js +3 -16
  728. package/lib/transformers/features/json/JsonCreateStringifyTransformer.js.map +1 -1
  729. package/lib/transformers/features/json/JsonCreateValidateParseTransformer.js +3 -16
  730. package/lib/transformers/features/json/JsonCreateValidateParseTransformer.js.map +1 -1
  731. package/lib/transformers/features/json/JsonCreateValidateStringifyProgrammer.js +3 -16
  732. package/lib/transformers/features/json/JsonCreateValidateStringifyProgrammer.js.map +1 -1
  733. package/lib/transformers/features/json/JsonIsParseTransformer.js +3 -16
  734. package/lib/transformers/features/json/JsonIsParseTransformer.js.map +1 -1
  735. package/lib/transformers/features/json/JsonIsStringifyTransformer.js +3 -16
  736. package/lib/transformers/features/json/JsonIsStringifyTransformer.js.map +1 -1
  737. package/lib/transformers/features/json/JsonSchemasTransformer.js +62 -115
  738. package/lib/transformers/features/json/JsonSchemasTransformer.js.map +1 -1
  739. package/lib/transformers/features/json/JsonStringifyTransformer.js +3 -16
  740. package/lib/transformers/features/json/JsonStringifyTransformer.js.map +1 -1
  741. package/lib/transformers/features/json/JsonValidateParseTransformer.js +3 -16
  742. package/lib/transformers/features/json/JsonValidateParseTransformer.js.map +1 -1
  743. package/lib/transformers/features/json/JsonValidateStringifyTransformer.js +3 -16
  744. package/lib/transformers/features/json/JsonValidateStringifyTransformer.js.map +1 -1
  745. package/lib/transformers/features/llm/LlmApplicationTransformer.js +52 -80
  746. package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -1
  747. package/lib/transformers/features/llm/LlmSchemaTransformer.js +43 -47
  748. package/lib/transformers/features/llm/LlmSchemaTransformer.js.map +1 -1
  749. package/lib/transformers/features/misc/MiscAssertCloneTransformer.js +3 -16
  750. package/lib/transformers/features/misc/MiscAssertCloneTransformer.js.map +1 -1
  751. package/lib/transformers/features/misc/MiscAssertPruneTransformer.js +3 -16
  752. package/lib/transformers/features/misc/MiscAssertPruneTransformer.js.map +1 -1
  753. package/lib/transformers/features/misc/MiscCloneTransformer.js +3 -16
  754. package/lib/transformers/features/misc/MiscCloneTransformer.js.map +1 -1
  755. package/lib/transformers/features/misc/MiscCreateAssertCloneTransformer.js +3 -16
  756. package/lib/transformers/features/misc/MiscCreateAssertCloneTransformer.js.map +1 -1
  757. package/lib/transformers/features/misc/MiscCreateAssertPruneTransformer.js +3 -16
  758. package/lib/transformers/features/misc/MiscCreateAssertPruneTransformer.js.map +1 -1
  759. package/lib/transformers/features/misc/MiscCreateCloneTransformer.js +3 -16
  760. package/lib/transformers/features/misc/MiscCreateCloneTransformer.js.map +1 -1
  761. package/lib/transformers/features/misc/MiscCreateIsCloneTransformer.js +3 -16
  762. package/lib/transformers/features/misc/MiscCreateIsCloneTransformer.js.map +1 -1
  763. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js +3 -16
  764. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js.map +1 -1
  765. package/lib/transformers/features/misc/MiscCreatePruneTransformer.js +3 -16
  766. package/lib/transformers/features/misc/MiscCreatePruneTransformer.js.map +1 -1
  767. package/lib/transformers/features/misc/MiscCreateValidateCloneTransformer.js +3 -16
  768. package/lib/transformers/features/misc/MiscCreateValidateCloneTransformer.js.map +1 -1
  769. package/lib/transformers/features/misc/MiscCreateValidatePruneTransformer.js +3 -16
  770. package/lib/transformers/features/misc/MiscCreateValidatePruneTransformer.js.map +1 -1
  771. package/lib/transformers/features/misc/MiscIsCloneTransformer.js +3 -16
  772. package/lib/transformers/features/misc/MiscIsCloneTransformer.js.map +1 -1
  773. package/lib/transformers/features/misc/MiscIsPruneTransformer.js +3 -16
  774. package/lib/transformers/features/misc/MiscIsPruneTransformer.js.map +1 -1
  775. package/lib/transformers/features/misc/MiscLiteralsTransformer.js +6 -6
  776. package/lib/transformers/features/misc/MiscLiteralsTransformer.js.map +1 -1
  777. package/lib/transformers/features/misc/MiscPruneTransformer.js +3 -16
  778. package/lib/transformers/features/misc/MiscPruneTransformer.js.map +1 -1
  779. package/lib/transformers/features/misc/MiscValidateCloneTransformer.js +3 -16
  780. package/lib/transformers/features/misc/MiscValidateCloneTransformer.js.map +1 -1
  781. package/lib/transformers/features/misc/MiscValidatePruneTransformer.js +3 -16
  782. package/lib/transformers/features/misc/MiscValidatePruneTransformer.js.map +1 -1
  783. package/lib/transformers/features/notations/NotationAssertGeneralTransformer.js +4 -19
  784. package/lib/transformers/features/notations/NotationAssertGeneralTransformer.js.map +1 -1
  785. package/lib/transformers/features/notations/NotationCreateAssertGeneralTransformer.js +4 -19
  786. package/lib/transformers/features/notations/NotationCreateAssertGeneralTransformer.js.map +1 -1
  787. package/lib/transformers/features/notations/NotationCreateGeneralTransformer.js +4 -19
  788. package/lib/transformers/features/notations/NotationCreateGeneralTransformer.js.map +1 -1
  789. package/lib/transformers/features/notations/NotationCreateIsGeneralTransformer.js +4 -19
  790. package/lib/transformers/features/notations/NotationCreateIsGeneralTransformer.js.map +1 -1
  791. package/lib/transformers/features/notations/NotationCreateValidateGeneralTransformer.js +4 -19
  792. package/lib/transformers/features/notations/NotationCreateValidateGeneralTransformer.js.map +1 -1
  793. package/lib/transformers/features/notations/NotationGeneralTransformer.js +3 -18
  794. package/lib/transformers/features/notations/NotationGeneralTransformer.js.map +1 -1
  795. package/lib/transformers/features/notations/NotationIsGeneralTransformer.js +4 -19
  796. package/lib/transformers/features/notations/NotationIsGeneralTransformer.js.map +1 -1
  797. package/lib/transformers/features/notations/NotationValidateGeneralTransformer.js +4 -19
  798. package/lib/transformers/features/notations/NotationValidateGeneralTransformer.js.map +1 -1
  799. package/lib/transformers/features/protobuf/ProtobufAssertDecodeTransformer.js +3 -16
  800. package/lib/transformers/features/protobuf/ProtobufAssertDecodeTransformer.js.map +1 -1
  801. package/lib/transformers/features/protobuf/ProtobufAssertEncodeTransformer.js +3 -16
  802. package/lib/transformers/features/protobuf/ProtobufAssertEncodeTransformer.js.map +1 -1
  803. package/lib/transformers/features/protobuf/ProtobufCreateAssertDecodeTransformer.js +3 -16
  804. package/lib/transformers/features/protobuf/ProtobufCreateAssertDecodeTransformer.js.map +1 -1
  805. package/lib/transformers/features/protobuf/ProtobufCreateAssertEncodeTransformer.js +3 -16
  806. package/lib/transformers/features/protobuf/ProtobufCreateAssertEncodeTransformer.js.map +1 -1
  807. package/lib/transformers/features/protobuf/ProtobufCreateDecodeTransformer.js +3 -16
  808. package/lib/transformers/features/protobuf/ProtobufCreateDecodeTransformer.js.map +1 -1
  809. package/lib/transformers/features/protobuf/ProtobufCreateEncodeTransformer.js +3 -16
  810. package/lib/transformers/features/protobuf/ProtobufCreateEncodeTransformer.js.map +1 -1
  811. package/lib/transformers/features/protobuf/ProtobufCreateIsDecodeTransformer.js +3 -16
  812. package/lib/transformers/features/protobuf/ProtobufCreateIsDecodeTransformer.js.map +1 -1
  813. package/lib/transformers/features/protobuf/ProtobufCreateIsEncodeTransformer.js +3 -16
  814. package/lib/transformers/features/protobuf/ProtobufCreateIsEncodeTransformer.js.map +1 -1
  815. package/lib/transformers/features/protobuf/ProtobufCreateValidateDecodeTransformer.js +3 -16
  816. package/lib/transformers/features/protobuf/ProtobufCreateValidateDecodeTransformer.js.map +1 -1
  817. package/lib/transformers/features/protobuf/ProtobufCreateValidateEncodeTransformer.js +3 -16
  818. package/lib/transformers/features/protobuf/ProtobufCreateValidateEncodeTransformer.js.map +1 -1
  819. package/lib/transformers/features/protobuf/ProtobufDecodeTransformer.js +3 -16
  820. package/lib/transformers/features/protobuf/ProtobufDecodeTransformer.js.map +1 -1
  821. package/lib/transformers/features/protobuf/ProtobufEncodeTransformer.js +3 -16
  822. package/lib/transformers/features/protobuf/ProtobufEncodeTransformer.js.map +1 -1
  823. package/lib/transformers/features/protobuf/ProtobufIsDecodeTransformer.js +3 -16
  824. package/lib/transformers/features/protobuf/ProtobufIsDecodeTransformer.js.map +1 -1
  825. package/lib/transformers/features/protobuf/ProtobufIsEncodeTransformer.js +3 -16
  826. package/lib/transformers/features/protobuf/ProtobufIsEncodeTransformer.js.map +1 -1
  827. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js +5 -5
  828. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js.map +1 -1
  829. package/lib/transformers/features/protobuf/ProtobufValidateDecodeTransformer.js +3 -16
  830. package/lib/transformers/features/protobuf/ProtobufValidateDecodeTransformer.js.map +1 -1
  831. package/lib/transformers/features/protobuf/ProtobufValidateEncodeTransformer.js +3 -16
  832. package/lib/transformers/features/protobuf/ProtobufValidateEncodeTransformer.js.map +1 -1
  833. package/lib/transformers/features/reflect/ReflectMetadataTransformer.js +17 -19
  834. package/lib/transformers/features/reflect/ReflectMetadataTransformer.js.map +1 -1
  835. package/lib/transformers/features/reflect/ReflectNameTransformer.js +15 -15
  836. package/lib/transformers/features/reflect/ReflectNameTransformer.js.map +1 -1
  837. package/lib/transformers/internal/GenericTransformer.js +21 -39
  838. package/lib/transformers/internal/GenericTransformer.js.map +1 -1
  839. package/lib/utils/ArrayUtil.js +9 -12
  840. package/lib/utils/ArrayUtil.js.map +1 -1
  841. package/lib/utils/Escaper.js +3 -5
  842. package/lib/utils/Escaper.js.map +1 -1
  843. package/lib/utils/MapUtil.js +3 -3
  844. package/lib/utils/MapUtil.js.map +1 -1
  845. package/lib/utils/NamingConvention.js +43 -51
  846. package/lib/utils/NamingConvention.js.map +1 -1
  847. package/lib/utils/PatternUtil.js +9 -34
  848. package/lib/utils/PatternUtil.js.map +1 -1
  849. package/lib/utils/ProtobufNameEncoder.js +8 -59
  850. package/lib/utils/ProtobufNameEncoder.js.map +1 -1
  851. package/lib/utils/Singleton.js +7 -37
  852. package/lib/utils/Singleton.js.map +1 -1
  853. package/lib/utils/StringUtil.js +3 -5
  854. package/lib/utils/StringUtil.js.map +1 -1
  855. package/package.json +1 -1
  856. package/src/factories/ExpressionFactory.ts +62 -8
  857. package/src/factories/MetadataFactory.ts +17 -20
  858. package/src/internal/_isFormatByte.ts +7 -0
  859. package/src/internal/_isFormatDate.ts +3 -0
  860. package/src/internal/_isFormatDateTime.ts +4 -0
  861. package/src/internal/_isFormatDuration.ts +4 -0
  862. package/src/internal/_isFormatEmail.ts +4 -0
  863. package/src/internal/_isFormatHostname.ts +4 -0
  864. package/src/internal/_isFormatIdnEmail.ts +4 -0
  865. package/src/internal/_isFormatIdnHostname.ts +4 -0
  866. package/src/internal/_isFormatIpv4.ts +4 -0
  867. package/src/internal/_isFormatIpv6.ts +4 -0
  868. package/src/internal/_isFormatIri.ts +3 -0
  869. package/src/internal/_isFormatIriReference.ts +4 -0
  870. package/src/internal/_isFormatJsonPointer.ts +3 -0
  871. package/src/internal/_isFormatPassword.ts +1 -0
  872. package/src/internal/_isFormatRegex.ts +8 -0
  873. package/src/internal/_isFormatRelativeJsonPointer.ts +4 -0
  874. package/src/internal/_isFormatTime.ts +4 -0
  875. package/src/internal/_isFormatUri.ts +6 -0
  876. package/src/internal/_isFormatUriReference.ts +5 -0
  877. package/src/internal/_isFormatUriTemplate.ts +4 -0
  878. package/src/internal/_isFormatUrl.ts +4 -0
  879. package/src/internal/_isFormatUuid.ts +3 -0
  880. package/src/internal/_isTypeFloat.ts +5 -0
  881. package/src/internal/_isTypeInt32.ts +5 -0
  882. package/src/internal/_isTypeInt64.ts +5 -0
  883. package/src/internal/_isTypeUint32.ts +5 -0
  884. package/src/internal/_isTypeUint64.ts +5 -0
  885. package/src/programmers/internal/check_array_length.ts +5 -4
  886. package/src/programmers/internal/check_bigint.ts +5 -4
  887. package/src/programmers/internal/check_number.ts +5 -4
  888. package/src/programmers/internal/check_string.ts +5 -4
  889. package/src/tags/Format.ts +38 -4
  890. package/src/tags/Type.ts +5 -5
@@ -1,71 +1,45 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __values = (this && this.__values) || function(o) {
14
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
15
- if (m) return m.call(o);
16
- if (o && typeof o.length === "number") return {
17
- next: function () {
18
- if (o && i >= o.length) o = void 0;
19
- return { value: o && o[i++], done: !o };
20
- }
21
- };
22
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
23
- };
24
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
25
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
26
4
  };
27
5
  Object.defineProperty(exports, "__esModule", { value: true });
28
6
  exports.NotationGeneralProgrammer = void 0;
29
- var typescript_1 = __importDefault(require("typescript"));
30
- var ExpressionFactory_1 = require("../../factories/ExpressionFactory");
31
- var IdentifierFactory_1 = require("../../factories/IdentifierFactory");
32
- var MetadataCollection_1 = require("../../factories/MetadataCollection");
33
- var MetadataFactory_1 = require("../../factories/MetadataFactory");
34
- var StatementFactory_1 = require("../../factories/StatementFactory");
35
- var TypeFactory_1 = require("../../factories/TypeFactory");
36
- var Metadata_1 = require("../../schemas/metadata/Metadata");
37
- var MetadataArray_1 = require("../../schemas/metadata/MetadataArray");
38
- var TransformerError_1 = require("../../transformers/TransformerError");
39
- var StringUtil_1 = require("../../utils/StringUtil");
40
- var FeatureProgrammer_1 = require("../FeatureProgrammer");
41
- var IsProgrammer_1 = require("../IsProgrammer");
42
- var FunctionProgrammer_1 = require("../helpers/FunctionProgrammer");
43
- var NotationJoiner_1 = require("../helpers/NotationJoiner");
44
- var UnionExplorer_1 = require("../helpers/UnionExplorer");
45
- var decode_union_object_1 = require("../internal/decode_union_object");
46
- var postfix_of_tuple_1 = require("../internal/postfix_of_tuple");
47
- var wrap_metadata_rest_tuple_1 = require("../internal/wrap_metadata_rest_tuple");
7
+ const typescript_1 = __importDefault(require("typescript"));
8
+ const ExpressionFactory_1 = require("../../factories/ExpressionFactory");
9
+ const IdentifierFactory_1 = require("../../factories/IdentifierFactory");
10
+ const MetadataCollection_1 = require("../../factories/MetadataCollection");
11
+ const MetadataFactory_1 = require("../../factories/MetadataFactory");
12
+ const StatementFactory_1 = require("../../factories/StatementFactory");
13
+ const TypeFactory_1 = require("../../factories/TypeFactory");
14
+ const Metadata_1 = require("../../schemas/metadata/Metadata");
15
+ const MetadataArray_1 = require("../../schemas/metadata/MetadataArray");
16
+ const TransformerError_1 = require("../../transformers/TransformerError");
17
+ const StringUtil_1 = require("../../utils/StringUtil");
18
+ const FeatureProgrammer_1 = require("../FeatureProgrammer");
19
+ const IsProgrammer_1 = require("../IsProgrammer");
20
+ const FunctionProgrammer_1 = require("../helpers/FunctionProgrammer");
21
+ const NotationJoiner_1 = require("../helpers/NotationJoiner");
22
+ const UnionExplorer_1 = require("../helpers/UnionExplorer");
23
+ const decode_union_object_1 = require("../internal/decode_union_object");
24
+ const postfix_of_tuple_1 = require("../internal/postfix_of_tuple");
25
+ const wrap_metadata_rest_tuple_1 = require("../internal/wrap_metadata_rest_tuple");
48
26
  var NotationGeneralProgrammer;
49
27
  (function (NotationGeneralProgrammer) {
50
- NotationGeneralProgrammer.returnType = function (props) {
51
- return props.context.importer.type({
52
- file: "typia",
53
- name: "".concat(StringUtil_1.StringUtil.capitalize(props.rename.name), "Case"),
54
- arguments: [typescript_1.default.factory.createTypeReferenceNode(props.type)],
55
- });
56
- };
57
- NotationGeneralProgrammer.decompose = function (props) {
28
+ NotationGeneralProgrammer.returnType = (props) => props.context.importer.type({
29
+ file: "typia",
30
+ name: `${StringUtil_1.StringUtil.capitalize(props.rename.name)}Case`,
31
+ arguments: [typescript_1.default.factory.createTypeReferenceNode(props.type)],
32
+ });
33
+ NotationGeneralProgrammer.decompose = (props) => {
58
34
  var _a;
59
- var config = configure(props);
35
+ const config = configure(props);
60
36
  if (props.validated === false)
61
- config.addition = function (collection) {
62
- return IsProgrammer_1.IsProgrammer.write_function_statements({
63
- context: props.context,
64
- functor: props.functor,
65
- collection: collection,
66
- });
67
- };
68
- var composed = FeatureProgrammer_1.FeatureProgrammer.compose(__assign(__assign({}, props), { config: config }));
37
+ config.addition = (collection) => IsProgrammer_1.IsProgrammer.write_function_statements({
38
+ context: props.context,
39
+ functor: props.functor,
40
+ collection,
41
+ });
42
+ const composed = FeatureProgrammer_1.FeatureProgrammer.compose(Object.assign(Object.assign({}, props), { config }));
69
43
  return {
70
44
  functions: composed.functions,
71
45
  statements: composed.statements,
@@ -79,75 +53,66 @@ var NotationGeneralProgrammer;
79
53
  }), undefined, composed.body),
80
54
  };
81
55
  };
82
- NotationGeneralProgrammer.write = function (props) {
83
- var functor = new FunctionProgrammer_1.FunctionProgrammer(props.modulo.getText());
84
- var result = NotationGeneralProgrammer.decompose(__assign(__assign({}, props), { functor: functor, validated: true }));
56
+ NotationGeneralProgrammer.write = (props) => {
57
+ const functor = new FunctionProgrammer_1.FunctionProgrammer(props.modulo.getText());
58
+ const result = NotationGeneralProgrammer.decompose(Object.assign(Object.assign({}, props), { functor, validated: true }));
85
59
  return FeatureProgrammer_1.FeatureProgrammer.writeDecomposed({
86
- functor: functor,
60
+ functor,
87
61
  modulo: props.modulo,
88
- result: result,
89
- });
90
- };
91
- var write_array_functions = function (props) {
92
- return props.collection
93
- .arrays()
94
- .filter(function (a) { return a.recursive; })
95
- .map(function (type, i) {
96
- return StatementFactory_1.StatementFactory.constant({
97
- name: "".concat(props.config.prefix, "a").concat(i),
98
- value: typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
99
- config: props.config,
100
- type: TypeFactory_1.TypeFactory.keyword("any"),
101
- input: typescript_1.default.factory.createIdentifier("input"),
102
- }), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_array_inline(__assign(__assign({}, props), { input: typescript_1.default.factory.createIdentifier("input"), array: MetadataArray_1.MetadataArray.create({
103
- type: type,
104
- tags: [],
105
- }), explore: {
106
- tracable: props.config.trace,
107
- source: "function",
108
- from: "array",
109
- postfix: "",
110
- } }))),
111
- });
112
- });
113
- };
114
- var write_tuple_functions = function (props) {
115
- return props.collection
116
- .tuples()
117
- .filter(function (t) { return t.recursive; })
118
- .map(function (tuple, i) {
119
- return StatementFactory_1.StatementFactory.constant({
120
- name: "".concat(props.config.prefix, "t").concat(i),
121
- value: typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
122
- config: props.config,
123
- type: TypeFactory_1.TypeFactory.keyword("any"),
124
- input: typescript_1.default.factory.createIdentifier("input"),
125
- }), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_tuple_inline(__assign(__assign({}, props), { input: typescript_1.default.factory.createIdentifier("input"), tuple: tuple, explore: {
126
- tracable: props.config.trace,
127
- source: "function",
128
- from: "array",
129
- postfix: "",
130
- } }))),
131
- });
62
+ result,
132
63
  });
133
64
  };
65
+ const write_array_functions = (props) => props.collection
66
+ .arrays()
67
+ .filter((a) => a.recursive)
68
+ .map((type, i) => StatementFactory_1.StatementFactory.constant({
69
+ name: `${props.config.prefix}a${i}`,
70
+ value: typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
71
+ config: props.config,
72
+ type: TypeFactory_1.TypeFactory.keyword("any"),
73
+ input: typescript_1.default.factory.createIdentifier("input"),
74
+ }), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_array_inline(Object.assign(Object.assign({}, props), { input: typescript_1.default.factory.createIdentifier("input"), array: MetadataArray_1.MetadataArray.create({
75
+ type,
76
+ tags: [],
77
+ }), explore: {
78
+ tracable: props.config.trace,
79
+ source: "function",
80
+ from: "array",
81
+ postfix: "",
82
+ } }))),
83
+ }));
84
+ const write_tuple_functions = (props) => props.collection
85
+ .tuples()
86
+ .filter((t) => t.recursive)
87
+ .map((tuple, i) => StatementFactory_1.StatementFactory.constant({
88
+ name: `${props.config.prefix}t${i}`,
89
+ value: typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
90
+ config: props.config,
91
+ type: TypeFactory_1.TypeFactory.keyword("any"),
92
+ input: typescript_1.default.factory.createIdentifier("input"),
93
+ }), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_tuple_inline(Object.assign(Object.assign({}, props), { input: typescript_1.default.factory.createIdentifier("input"), tuple, explore: {
94
+ tracable: props.config.trace,
95
+ source: "function",
96
+ from: "array",
97
+ postfix: "",
98
+ } }))),
99
+ }));
134
100
  /* -----------------------------------------------------------
135
101
  DECODERS
136
102
  ----------------------------------------------------------- */
137
- var decode = function (props) {
138
- var e_1, _a, e_2, _b, e_3, _c;
103
+ const decode = (props) => {
139
104
  // ANY TYPE
140
105
  if (props.metadata.any ||
141
- props.metadata.arrays.some(function (a) { return a.type.value.any; }) ||
142
- props.metadata.tuples.some(function (t) { return !!t.type.elements.length && t.type.elements.every(function (e) { return e.any; }); }))
106
+ props.metadata.arrays.some((a) => a.type.value.any) ||
107
+ props.metadata.tuples.some((t) => !!t.type.elements.length && t.type.elements.every((e) => e.any)))
143
108
  return ExpressionFactory_1.ExpressionFactory.currying({
144
109
  function: props.context.importer.internal("notationAny"),
145
110
  arguments: [
146
- props.context.importer.internal("notation".concat(StringUtil_1.StringUtil.capitalize(props.rename.name))),
111
+ props.context.importer.internal(`notation${StringUtil_1.StringUtil.capitalize(props.rename.name)}`),
147
112
  props.input,
148
113
  ],
149
114
  });
150
- var unions = [];
115
+ const unions = [];
151
116
  //----
152
117
  // LIST UP UNION TYPES
153
118
  //----
@@ -155,301 +120,217 @@ var NotationGeneralProgrammer;
155
120
  if (props.metadata.functions.length)
156
121
  unions.push({
157
122
  type: "functional",
158
- is: function () {
159
- return typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("function"), typescript_1.default.factory.createTypeOfExpression(props.input));
160
- },
161
- value: function () { return typescript_1.default.factory.createIdentifier("undefined"); },
123
+ is: () => typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("function"), typescript_1.default.factory.createTypeOfExpression(props.input)),
124
+ value: () => typescript_1.default.factory.createIdentifier("undefined"),
162
125
  });
163
- var _loop_1 = function (tuple) {
126
+ // TUPLES
127
+ for (const tuple of props.metadata.tuples)
164
128
  unions.push({
165
129
  type: "tuple",
166
- is: function () {
167
- return IsProgrammer_1.IsProgrammer.decode(__assign(__assign({}, props), { metadata: (function () {
168
- var partial = Metadata_1.Metadata.initialize();
169
- partial.tuples.push(tuple);
170
- return partial;
171
- })() }));
172
- },
173
- value: function () {
174
- return decode_tuple(__assign(__assign({}, props), { tuple: tuple }));
175
- },
130
+ is: () => IsProgrammer_1.IsProgrammer.decode(Object.assign(Object.assign({}, props), { metadata: (() => {
131
+ const partial = Metadata_1.Metadata.initialize();
132
+ partial.tuples.push(tuple);
133
+ return partial;
134
+ })() })),
135
+ value: () => decode_tuple(Object.assign(Object.assign({}, props), { tuple })),
176
136
  });
177
- };
178
- try {
179
- // TUPLES
180
- for (var _d = __values(props.metadata.tuples), _e = _d.next(); !_e.done; _e = _d.next()) {
181
- var tuple = _e.value;
182
- _loop_1(tuple);
183
- }
184
- }
185
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
186
- finally {
187
- try {
188
- if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
189
- }
190
- finally { if (e_1) throw e_1.error; }
191
- }
192
137
  // ARRAYS
193
138
  if (props.metadata.arrays.length)
194
139
  unions.push({
195
140
  type: "array",
196
- is: function () { return ExpressionFactory_1.ExpressionFactory.isArray(props.input); },
197
- value: function () {
198
- return explore_arrays(__assign(__assign({}, props), { arrays: props.metadata.arrays, explore: __assign(__assign({}, props.explore), { from: "array" }) }));
199
- },
141
+ is: () => ExpressionFactory_1.ExpressionFactory.isArray(props.input),
142
+ value: () => explore_arrays(Object.assign(Object.assign({}, props), { arrays: props.metadata.arrays, explore: Object.assign(Object.assign({}, props.explore), { from: "array" }) })),
200
143
  });
201
144
  // NATIVE TYPES
202
145
  if (props.metadata.sets.length)
203
146
  unions.push({
204
147
  type: "set",
205
- is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Set", props.input); },
206
- value: function () {
207
- return explore_sets(__assign(__assign({}, props), { sets: props.metadata.sets, explore: __assign(__assign({}, props.explore), { from: "array" }) }));
208
- },
148
+ is: () => ExpressionFactory_1.ExpressionFactory.isInstanceOf("Set", props.input),
149
+ value: () => explore_sets(Object.assign(Object.assign({}, props), { sets: props.metadata.sets, explore: Object.assign(Object.assign({}, props.explore), { from: "array" }) })),
209
150
  });
210
151
  if (props.metadata.maps.length)
211
152
  unions.push({
212
153
  type: "map",
213
- is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Map", props.input); },
214
- value: function () {
215
- return explore_maps(__assign(__assign({}, props), { maps: props.metadata.maps, explore: __assign(__assign({}, props.explore), { from: "array" }) }));
216
- },
154
+ is: () => ExpressionFactory_1.ExpressionFactory.isInstanceOf("Map", props.input),
155
+ value: () => explore_maps(Object.assign(Object.assign({}, props), { maps: props.metadata.maps, explore: Object.assign(Object.assign({}, props.explore), { from: "array" }) })),
217
156
  });
218
- var _loop_2 = function (native) {
157
+ for (const native of props.metadata.natives) {
219
158
  if (native.name === "WeakSet" || native.name === "WeakMap")
220
- return "continue";
159
+ continue;
221
160
  unions.push({
222
161
  type: "native",
223
- is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf(native.name, props.input); },
224
- value: function () {
225
- return native.name === "Boolean" ||
226
- native.name === "Number" ||
227
- native.name === "String"
228
- ? typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(props.input, "valueOf"), undefined, undefined)
229
- : decode_native({
230
- name: native.name,
231
- input: props.input,
232
- });
233
- },
162
+ is: () => ExpressionFactory_1.ExpressionFactory.isInstanceOf(native.name, props.input),
163
+ value: () => native.name === "Boolean" ||
164
+ native.name === "Number" ||
165
+ native.name === "String"
166
+ ? typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(props.input, "valueOf"), undefined, undefined)
167
+ : decode_native({
168
+ name: native.name,
169
+ input: props.input,
170
+ }),
234
171
  });
235
- };
236
- try {
237
- for (var _f = __values(props.metadata.natives), _g = _f.next(); !_g.done; _g = _f.next()) {
238
- var native = _g.value;
239
- _loop_2(native);
240
- }
241
- }
242
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
243
- finally {
244
- try {
245
- if (_g && !_g.done && (_b = _f.return)) _b.call(_f);
246
- }
247
- finally { if (e_2) throw e_2.error; }
248
172
  }
249
173
  // OBJECTS
250
174
  if (props.metadata.objects.length)
251
175
  unions.push({
252
176
  type: "object",
253
- is: function () {
254
- return ExpressionFactory_1.ExpressionFactory.isObject({
255
- checkNull: true,
256
- checkArray: false,
257
- input: props.input,
258
- });
259
- },
260
- value: function () {
261
- return explore_objects(__assign(__assign({}, props), { explore: __assign(__assign({}, props.explore), { from: "object" }) }));
262
- },
177
+ is: () => ExpressionFactory_1.ExpressionFactory.isObject({
178
+ checkNull: true,
179
+ checkArray: false,
180
+ input: props.input,
181
+ }),
182
+ value: () => explore_objects(Object.assign(Object.assign({}, props), { explore: Object.assign(Object.assign({}, props.explore), { from: "object" }) })),
263
183
  });
264
184
  // COMPOSITION
265
185
  if (unions.length === 0)
266
186
  return props.input;
267
187
  else if (unions.length === 1 && props.metadata.size() === 1) {
268
- var value = (props.metadata.nullable || props.metadata.isRequired() === false) &&
188
+ const value = (props.metadata.nullable || props.metadata.isRequired() === false) &&
269
189
  is_instance(props.metadata)
270
190
  ? typescript_1.default.factory.createConditionalExpression(props.input, undefined, unions[0].value(), undefined, props.input)
271
191
  : unions[0].value();
272
192
  return typescript_1.default.factory.createAsExpression(value, TypeFactory_1.TypeFactory.keyword("any"));
273
193
  }
274
194
  else {
275
- var last = props.input;
276
- try {
277
- for (var _h = __values(unions.reverse()), _j = _h.next(); !_j.done; _j = _h.next()) {
278
- var u = _j.value;
279
- last = typescript_1.default.factory.createConditionalExpression(u.is(), undefined, u.value(), undefined, last);
280
- }
281
- }
282
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
283
- finally {
284
- try {
285
- if (_j && !_j.done && (_c = _h.return)) _c.call(_h);
286
- }
287
- finally { if (e_3) throw e_3.error; }
288
- }
195
+ let last = props.input;
196
+ for (const u of unions.reverse())
197
+ last = typescript_1.default.factory.createConditionalExpression(u.is(), undefined, u.value(), undefined, last);
289
198
  return typescript_1.default.factory.createAsExpression(last, TypeFactory_1.TypeFactory.keyword("any"));
290
199
  }
291
200
  };
292
- var decode_object = function (props) {
293
- return FeatureProgrammer_1.FeatureProgrammer.decode_object({
294
- config: {
295
- trace: false,
296
- path: false,
297
- prefix: PREFIX,
298
- },
299
- functor: props.functor,
300
- object: props.object,
201
+ const decode_object = (props) => FeatureProgrammer_1.FeatureProgrammer.decode_object({
202
+ config: {
203
+ trace: false,
204
+ path: false,
205
+ prefix: PREFIX,
206
+ },
207
+ functor: props.functor,
208
+ object: props.object,
209
+ input: props.input,
210
+ explore: props.explore,
211
+ });
212
+ const decode_array = (props) => props.array.type.recursive
213
+ ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal(`${props.config.prefix}a${props.array.type.index}`)), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
214
+ config: props.config,
215
+ explore: Object.assign(Object.assign({}, props.explore), { source: "function", from: "array" }),
301
216
  input: props.input,
302
- explore: props.explore,
303
- });
304
- };
305
- var decode_array = function (props) {
306
- return props.array.type.recursive
307
- ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal("".concat(props.config.prefix, "a").concat(props.array.type.index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
308
- config: props.config,
309
- explore: __assign(__assign({}, props.explore), { source: "function", from: "array" }),
310
- input: props.input,
311
- }))
312
- : decode_array_inline(props);
313
- };
314
- var decode_array_inline = function (props) {
315
- return FeatureProgrammer_1.FeatureProgrammer.decode_array({
217
+ }))
218
+ : decode_array_inline(props);
219
+ const decode_array_inline = (props) => FeatureProgrammer_1.FeatureProgrammer.decode_array({
220
+ config: props.config,
221
+ functor: props.functor,
222
+ combiner: NotationJoiner_1.NotationJoiner.array,
223
+ array: props.array,
224
+ input: props.input,
225
+ explore: props.explore,
226
+ });
227
+ const decode_tuple = (props) => props.tuple.type.recursive
228
+ ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal(`${props.config.prefix}t${props.tuple.type.index}`)), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
316
229
  config: props.config,
317
- functor: props.functor,
318
- combiner: NotationJoiner_1.NotationJoiner.array,
319
- array: props.array,
230
+ explore: Object.assign(Object.assign({}, props.explore), { source: "function" }),
320
231
  input: props.input,
321
- explore: props.explore,
322
- });
323
- };
324
- var decode_tuple = function (props) {
325
- return props.tuple.type.recursive
326
- ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal("".concat(props.config.prefix, "t").concat(props.tuple.type.index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
327
- config: props.config,
328
- explore: __assign(__assign({}, props.explore), { source: "function" }),
329
- input: props.input,
330
- }))
331
- : decode_tuple_inline(__assign(__assign({}, props), { tuple: props.tuple.type }));
332
- };
333
- var decode_tuple_inline = function (props) {
334
- var elements = props.tuple.elements
335
- .filter(function (m) { return m.rest === null; })
336
- .map(function (elem, index) {
337
- return decode(__assign(__assign({}, props), { input: typescript_1.default.factory.createElementAccessExpression(props.input, index), metadata: elem, explore: __assign(__assign({}, props.explore), { from: "array", postfix: props.explore.postfix.length
338
- ? "".concat((0, postfix_of_tuple_1.postfix_of_tuple)(props.explore.postfix), "[").concat(index, "]\"")
339
- : "\"[".concat(index, "]\"") }) }));
340
- });
341
- var rest = (function () {
232
+ }))
233
+ : decode_tuple_inline(Object.assign(Object.assign({}, props), { tuple: props.tuple.type }));
234
+ const decode_tuple_inline = (props) => {
235
+ const elements = props.tuple.elements
236
+ .filter((m) => m.rest === null)
237
+ .map((elem, index) => decode(Object.assign(Object.assign({}, props), { input: typescript_1.default.factory.createElementAccessExpression(props.input, index), metadata: elem, explore: Object.assign(Object.assign({}, props.explore), { from: "array", postfix: props.explore.postfix.length
238
+ ? `${(0, postfix_of_tuple_1.postfix_of_tuple)(props.explore.postfix)}[${index}]"`
239
+ : `"[${index}]"` }) })));
240
+ const rest = (() => {
342
241
  if (props.tuple.elements.length === 0)
343
242
  return null;
344
- var last = props.tuple.elements.at(-1);
345
- var rest = last.rest;
243
+ const last = props.tuple.elements.at(-1);
244
+ const rest = last.rest;
346
245
  if (rest === null)
347
246
  return null;
348
- return decode(__assign(__assign({}, props), { input: typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(props.input, "slice"), undefined, [ExpressionFactory_1.ExpressionFactory.number(props.tuple.elements.length - 1)]), metadata: (0, wrap_metadata_rest_tuple_1.wrap_metadata_rest_tuple)(props.tuple.elements.at(-1).rest), explore: __assign(__assign({}, props.explore), { start: props.tuple.elements.length - 1 }) }));
247
+ return decode(Object.assign(Object.assign({}, props), { input: typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(props.input, "slice"), undefined, [ExpressionFactory_1.ExpressionFactory.number(props.tuple.elements.length - 1)]), metadata: (0, wrap_metadata_rest_tuple_1.wrap_metadata_rest_tuple)(props.tuple.elements.at(-1).rest), explore: Object.assign(Object.assign({}, props.explore), { start: props.tuple.elements.length - 1 }) }));
349
248
  })();
350
249
  return NotationJoiner_1.NotationJoiner.tuple({
351
- elements: elements,
352
- rest: rest,
250
+ elements,
251
+ rest,
353
252
  });
354
253
  };
355
254
  /* -----------------------------------------------------------
356
255
  NATIVE CLASSES
357
256
  ----------------------------------------------------------- */
358
- var decode_native = function (props) {
359
- return props.name === "Date"
360
- ? typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier(props.name), undefined, [props.input])
361
- : props.input;
362
- };
257
+ const decode_native = (props) => props.name === "Date"
258
+ ? typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier(props.name), undefined, [props.input])
259
+ : props.input;
363
260
  /* -----------------------------------------------------------
364
261
  EXPLORERS FOR UNION TYPES
365
262
  ----------------------------------------------------------- */
366
- var explore_sets = function (props) {
367
- return typescript_1.default.factory.createCallExpression(UnionExplorer_1.UnionExplorer.set({
368
- config: {
369
- checker: function (v) {
370
- return IsProgrammer_1.IsProgrammer.decode({
371
- context: props.context,
372
- functor: props.functor,
373
- input: v.input,
374
- metadata: v.definition,
375
- explore: v.explore,
376
- });
377
- },
378
- decoder: function (v) {
379
- return typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Set"), [TypeFactory_1.TypeFactory.keyword("any")], [
380
- decode_array({
381
- config: props.config,
382
- functor: props.functor,
383
- input: v.input,
384
- array: v.definition,
385
- explore: v.explore,
386
- }),
387
- ]);
388
- },
389
- empty: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Set"), [TypeFactory_1.TypeFactory.keyword("any")], []),
390
- success: typescript_1.default.factory.createTrue(),
391
- failure: function (v) {
392
- return create_throw_error({
393
- context: props.context,
394
- functor: props.functor,
395
- expected: v.expected,
396
- input: v.input,
397
- });
398
- },
399
- },
400
- parameters: [],
401
- input: props.input,
402
- sets: props.sets,
403
- explore: props.explore,
404
- }), undefined, undefined);
405
- };
406
- var explore_maps = function (props) {
407
- return typescript_1.default.factory.createCallExpression(UnionExplorer_1.UnionExplorer.map({
408
- config: {
409
- checker: function (v) {
410
- return typescript_1.default.factory.createLogicalAnd(IsProgrammer_1.IsProgrammer.decode({
411
- context: props.context,
412
- functor: props.functor,
413
- input: typescript_1.default.factory.createElementAccessExpression(v.input, 0),
414
- metadata: v.definition[0],
415
- explore: __assign(__assign({}, props.explore), { postfix: "".concat(v.explore.postfix, "[0]") }),
416
- }), IsProgrammer_1.IsProgrammer.decode({
417
- context: props.context,
418
- functor: props.functor,
419
- input: typescript_1.default.factory.createElementAccessExpression(v.input, 1),
420
- metadata: v.definition[1],
421
- explore: __assign(__assign({}, props.explore), { postfix: "".concat(props.explore.postfix, "[1]") }),
422
- }));
423
- },
424
- decoder: function (v) {
425
- return typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Map"), [TypeFactory_1.TypeFactory.keyword("any"), TypeFactory_1.TypeFactory.keyword("any")], [
426
- decode_array({
427
- config: props.config,
428
- functor: props.functor,
429
- input: v.input,
430
- array: v.definition,
431
- explore: v.explore,
432
- }),
433
- ]);
434
- },
435
- empty: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Map"), [TypeFactory_1.TypeFactory.keyword("any"), TypeFactory_1.TypeFactory.keyword("any")], []),
436
- success: typescript_1.default.factory.createTrue(),
437
- failure: function (v) {
438
- return create_throw_error({
439
- context: props.context,
440
- functor: props.functor,
441
- expected: v.expected,
442
- input: v.input,
443
- });
444
- },
445
- },
446
- parameters: [],
447
- input: props.input,
448
- maps: props.maps,
449
- explore: props.explore,
450
- }), undefined, undefined);
451
- };
452
- var explore_objects = function (props) {
263
+ const explore_sets = (props) => typescript_1.default.factory.createCallExpression(UnionExplorer_1.UnionExplorer.set({
264
+ config: {
265
+ checker: (v) => IsProgrammer_1.IsProgrammer.decode({
266
+ context: props.context,
267
+ functor: props.functor,
268
+ input: v.input,
269
+ metadata: v.definition,
270
+ explore: v.explore,
271
+ }),
272
+ decoder: (v) => typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Set"), [TypeFactory_1.TypeFactory.keyword("any")], [
273
+ decode_array({
274
+ config: props.config,
275
+ functor: props.functor,
276
+ input: v.input,
277
+ array: v.definition,
278
+ explore: v.explore,
279
+ }),
280
+ ]),
281
+ empty: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Set"), [TypeFactory_1.TypeFactory.keyword("any")], []),
282
+ success: typescript_1.default.factory.createTrue(),
283
+ failure: (v) => create_throw_error({
284
+ context: props.context,
285
+ functor: props.functor,
286
+ expected: v.expected,
287
+ input: v.input,
288
+ }),
289
+ },
290
+ parameters: [],
291
+ input: props.input,
292
+ sets: props.sets,
293
+ explore: props.explore,
294
+ }), undefined, undefined);
295
+ const explore_maps = (props) => typescript_1.default.factory.createCallExpression(UnionExplorer_1.UnionExplorer.map({
296
+ config: {
297
+ checker: (v) => typescript_1.default.factory.createLogicalAnd(IsProgrammer_1.IsProgrammer.decode({
298
+ context: props.context,
299
+ functor: props.functor,
300
+ input: typescript_1.default.factory.createElementAccessExpression(v.input, 0),
301
+ metadata: v.definition[0],
302
+ explore: Object.assign(Object.assign({}, props.explore), { postfix: `${v.explore.postfix}[0]` }),
303
+ }), IsProgrammer_1.IsProgrammer.decode({
304
+ context: props.context,
305
+ functor: props.functor,
306
+ input: typescript_1.default.factory.createElementAccessExpression(v.input, 1),
307
+ metadata: v.definition[1],
308
+ explore: Object.assign(Object.assign({}, props.explore), { postfix: `${props.explore.postfix}[1]` }),
309
+ })),
310
+ decoder: (v) => typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Map"), [TypeFactory_1.TypeFactory.keyword("any"), TypeFactory_1.TypeFactory.keyword("any")], [
311
+ decode_array({
312
+ config: props.config,
313
+ functor: props.functor,
314
+ input: v.input,
315
+ array: v.definition,
316
+ explore: v.explore,
317
+ }),
318
+ ]),
319
+ empty: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Map"), [TypeFactory_1.TypeFactory.keyword("any"), TypeFactory_1.TypeFactory.keyword("any")], []),
320
+ success: typescript_1.default.factory.createTrue(),
321
+ failure: (v) => create_throw_error({
322
+ context: props.context,
323
+ functor: props.functor,
324
+ expected: v.expected,
325
+ input: v.input,
326
+ }),
327
+ },
328
+ parameters: [],
329
+ input: props.input,
330
+ maps: props.maps,
331
+ explore: props.explore,
332
+ }), undefined, undefined);
333
+ const explore_objects = (props) => {
453
334
  if (props.metadata.objects.length === 1)
454
335
  return decode_object({
455
336
  functor: props.functor,
@@ -457,75 +338,61 @@ var NotationGeneralProgrammer;
457
338
  input: props.input,
458
339
  explore: props.explore,
459
340
  });
460
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal("".concat(PREFIX, "u").concat(props.metadata.union_index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(props));
341
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal(`${PREFIX}u${props.metadata.union_index}`)), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(props));
461
342
  };
462
- var explore_arrays = function (props) {
463
- return explore_array_like_union_types(__assign(__assign({}, props), { factory: function (next) {
464
- return UnionExplorer_1.UnionExplorer.array({
465
- config: {
466
- checker: function (v) {
467
- return IsProgrammer_1.IsProgrammer.decode({
468
- context: props.context,
469
- functor: props.functor,
470
- input: v.input,
471
- metadata: v.definition,
472
- explore: v.explore,
473
- });
474
- },
475
- decoder: function (v) {
476
- return decode_array({
477
- config: props.config,
478
- functor: props.functor,
479
- input: v.input,
480
- array: v.definition,
481
- explore: v.explore,
482
- });
483
- },
484
- empty: typescript_1.default.factory.createIdentifier("[]"),
485
- success: typescript_1.default.factory.createTrue(),
486
- failure: function (v) {
487
- return create_throw_error({
488
- context: props.context,
489
- functor: props.functor,
490
- expected: v.expected,
491
- input: v.input,
492
- });
493
- },
494
- },
495
- parameters: next.parameters,
496
- input: next.input,
497
- arrays: next.definitions,
498
- explore: next.explore,
499
- });
500
- }, definitions: props.arrays, input: props.input, explore: props.explore }));
501
- };
502
- var explore_array_like_union_types = function (props) {
503
- var arrow = function (next) {
504
- return props.factory({
505
- parameters: next.parameters,
506
- definitions: props.definitions,
507
- explore: next.explore,
508
- input: next.input,
509
- });
510
- };
511
- if (props.definitions.every(function (e) { return e.type.recursive === false; }))
343
+ const explore_arrays = (props) => explore_array_like_union_types(Object.assign(Object.assign({}, props), { factory: (next) => UnionExplorer_1.UnionExplorer.array({
344
+ config: {
345
+ checker: (v) => IsProgrammer_1.IsProgrammer.decode({
346
+ context: props.context,
347
+ functor: props.functor,
348
+ input: v.input,
349
+ metadata: v.definition,
350
+ explore: v.explore,
351
+ }),
352
+ decoder: (v) => decode_array({
353
+ config: props.config,
354
+ functor: props.functor,
355
+ input: v.input,
356
+ array: v.definition,
357
+ explore: v.explore,
358
+ }),
359
+ empty: typescript_1.default.factory.createIdentifier("[]"),
360
+ success: typescript_1.default.factory.createTrue(),
361
+ failure: (v) => create_throw_error({
362
+ context: props.context,
363
+ functor: props.functor,
364
+ expected: v.expected,
365
+ input: v.input,
366
+ }),
367
+ },
368
+ parameters: next.parameters,
369
+ input: next.input,
370
+ arrays: next.definitions,
371
+ explore: next.explore,
372
+ }), definitions: props.arrays, input: props.input, explore: props.explore }));
373
+ const explore_array_like_union_types = (props) => {
374
+ const arrow = (next) => props.factory({
375
+ parameters: next.parameters,
376
+ definitions: props.definitions,
377
+ explore: next.explore,
378
+ input: next.input,
379
+ });
380
+ if (props.definitions.every((e) => e.type.recursive === false))
512
381
  typescript_1.default.factory.createCallExpression(arrow({
513
382
  parameters: [],
514
383
  explore: props.explore,
515
384
  input: props.input,
516
385
  }), undefined, []);
517
- var arrayExplore = __assign(__assign({}, props.explore), { source: "function", from: "array" });
518
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.emplaceUnion(props.config.prefix, props.definitions.map(function (e) { return e.type.name; }).join(" | "), function () {
519
- return arrow({
520
- parameters: FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
521
- config: props.config,
522
- type: TypeFactory_1.TypeFactory.keyword("any"),
523
- input: typescript_1.default.factory.createIdentifier("input"),
524
- }),
525
- explore: __assign(__assign({}, arrayExplore), { postfix: "" }),
386
+ const arrayExplore = Object.assign(Object.assign({}, props.explore), { source: "function", from: "array" });
387
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.emplaceUnion(props.config.prefix, props.definitions.map((e) => e.type.name).join(" | "), () => arrow({
388
+ parameters: FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations({
389
+ config: props.config,
390
+ type: TypeFactory_1.TypeFactory.keyword("any"),
526
391
  input: typescript_1.default.factory.createIdentifier("input"),
527
- });
528
- })), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
392
+ }),
393
+ explore: Object.assign(Object.assign({}, arrayExplore), { postfix: "" }),
394
+ input: typescript_1.default.factory.createIdentifier("input"),
395
+ }))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray({
529
396
  config: props.config,
530
397
  explore: arrayExplore,
531
398
  input: props.input,
@@ -534,130 +401,104 @@ var NotationGeneralProgrammer;
534
401
  /* -----------------------------------------------------------
535
402
  CONFIGURATIONS
536
403
  ----------------------------------------------------------- */
537
- var PREFIX = "_c";
538
- var configure = function (props) {
539
- var config = {
404
+ const PREFIX = "_c";
405
+ const configure = (props) => {
406
+ const config = {
540
407
  types: {
541
- input: function (type, name) {
542
- return typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName({ checker: props.context.checker, type: type }));
543
- },
544
- output: function (type, name) {
545
- return NotationGeneralProgrammer.returnType({
546
- rename: props.rename,
547
- context: props.context,
548
- type: name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName({
549
- checker: props.context.checker,
550
- type: type,
551
- }),
552
- });
553
- },
408
+ input: (type, name) => typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName({ checker: props.context.checker, type })),
409
+ output: (type, name) => NotationGeneralProgrammer.returnType({
410
+ rename: props.rename,
411
+ context: props.context,
412
+ type: name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName({
413
+ checker: props.context.checker,
414
+ type,
415
+ }),
416
+ }),
554
417
  },
555
418
  prefix: PREFIX,
556
419
  trace: false,
557
420
  path: false,
558
- initializer: initializer,
559
- decoder: function (next) {
560
- return decode({
561
- config: config,
562
- rename: props.rename,
421
+ initializer,
422
+ decoder: (next) => decode({
423
+ config,
424
+ rename: props.rename,
425
+ context: props.context,
426
+ functor: props.functor,
427
+ metadata: next.metadata,
428
+ explore: next.explore,
429
+ input: next.input,
430
+ }),
431
+ objector: {
432
+ checker: (next) => IsProgrammer_1.IsProgrammer.decode({
563
433
  context: props.context,
564
434
  functor: props.functor,
435
+ input: next.input,
565
436
  metadata: next.metadata,
566
437
  explore: next.explore,
438
+ }),
439
+ decoder: (next) => decode_object({
440
+ functor: props.functor,
441
+ object: next.object,
567
442
  input: next.input,
568
- });
569
- },
570
- objector: {
571
- checker: function (next) {
572
- return IsProgrammer_1.IsProgrammer.decode({
443
+ explore: next.explore,
444
+ }),
445
+ joiner: (next) => NotationJoiner_1.NotationJoiner.object({
446
+ rename: props.rename,
447
+ input: next.input,
448
+ entries: next.entries,
449
+ }),
450
+ unionizer: (next) => (0, decode_union_object_1.decode_union_object)({
451
+ checker: (v) => IsProgrammer_1.IsProgrammer.decode_object({
573
452
  context: props.context,
574
453
  functor: props.functor,
575
- input: next.input,
576
- metadata: next.metadata,
577
- explore: next.explore,
578
- });
579
- },
580
- decoder: function (next) {
581
- return decode_object({
454
+ object: v.object,
455
+ input: v.input,
456
+ explore: v.explore,
457
+ }),
458
+ decoder: (v) => decode_object({
582
459
  functor: props.functor,
583
- object: next.object,
584
- input: next.input,
585
- explore: next.explore,
586
- });
587
- },
588
- joiner: function (next) {
589
- return NotationJoiner_1.NotationJoiner.object({
590
- rename: props.rename,
591
- input: next.input,
592
- entries: next.entries,
593
- });
594
- },
595
- unionizer: function (next) {
596
- return (0, decode_union_object_1.decode_union_object)({
597
- checker: function (v) {
598
- return IsProgrammer_1.IsProgrammer.decode_object({
599
- context: props.context,
600
- functor: props.functor,
601
- object: v.object,
602
- input: v.input,
603
- explore: v.explore,
604
- });
605
- },
606
- decoder: function (v) {
607
- return decode_object({
608
- functor: props.functor,
609
- object: v.object,
610
- input: v.input,
611
- explore: v.explore,
612
- });
613
- },
614
- success: function (exp) { return exp; },
615
- escaper: function (v) {
616
- return create_throw_error({
617
- context: props.context,
618
- functor: props.functor,
619
- expected: v.expected,
620
- input: v.input,
621
- });
622
- },
623
- input: next.input,
624
- objects: next.objects,
625
- explore: next.explore,
626
- });
627
- },
628
- failure: function (next) {
629
- return create_throw_error({
460
+ object: v.object,
461
+ input: v.input,
462
+ explore: v.explore,
463
+ }),
464
+ success: (exp) => exp,
465
+ escaper: (v) => create_throw_error({
630
466
  context: props.context,
631
467
  functor: props.functor,
632
- expected: next.expected,
633
- input: next.input,
634
- });
635
- },
468
+ expected: v.expected,
469
+ input: v.input,
470
+ }),
471
+ input: next.input,
472
+ objects: next.objects,
473
+ explore: next.explore,
474
+ }),
475
+ failure: (next) => create_throw_error({
476
+ context: props.context,
477
+ functor: props.functor,
478
+ expected: next.expected,
479
+ input: next.input,
480
+ }),
636
481
  },
637
482
  generator: {
638
- arrays: function (collection) {
639
- return write_array_functions({
640
- functor: props.functor,
641
- config: config,
642
- collection: collection,
643
- });
644
- },
645
- tuples: function (collection) {
646
- return write_tuple_functions({
647
- rename: props.rename,
648
- context: props.context,
649
- functor: props.functor,
650
- config: config,
651
- collection: collection,
652
- });
653
- },
483
+ arrays: (collection) => write_array_functions({
484
+ functor: props.functor,
485
+ config,
486
+ collection,
487
+ }),
488
+ tuples: (collection) => write_tuple_functions({
489
+ rename: props.rename,
490
+ context: props.context,
491
+ functor: props.functor,
492
+ config,
493
+ collection,
494
+ }),
654
495
  },
655
496
  };
656
497
  return config;
657
498
  };
658
- var initializer = function (props) {
659
- var collection = new MetadataCollection_1.MetadataCollection();
660
- var result = MetadataFactory_1.MetadataFactory.analyze({
499
+ const initializer = (props) => {
500
+ const collection = new MetadataCollection_1.MetadataCollection();
501
+ const result = MetadataFactory_1.MetadataFactory.analyze({
661
502
  checker: props.context.checker,
662
503
  transformer: props.context.transformer,
663
504
  options: {
@@ -665,7 +506,7 @@ var NotationGeneralProgrammer;
665
506
  constant: true,
666
507
  absorb: true,
667
508
  },
668
- collection: collection,
509
+ collection,
669
510
  type: props.type,
670
511
  });
671
512
  if (result.success === false)
@@ -674,27 +515,23 @@ var NotationGeneralProgrammer;
674
515
  errors: result.errors,
675
516
  });
676
517
  return {
677
- collection: collection,
518
+ collection,
678
519
  metadata: result.data,
679
520
  };
680
521
  };
681
- var create_throw_error = function (props) {
682
- return typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(props.context.importer.internal("throwTypeGuardError"), undefined, [
683
- typescript_1.default.factory.createObjectLiteralExpression([
684
- typescript_1.default.factory.createPropertyAssignment("method", typescript_1.default.factory.createStringLiteral(props.functor.method)),
685
- typescript_1.default.factory.createPropertyAssignment("expected", typescript_1.default.factory.createStringLiteral(props.expected)),
686
- typescript_1.default.factory.createPropertyAssignment("value", props.input),
687
- ], true),
688
- ]));
689
- };
690
- var is_instance = function (metadata) {
691
- return !!metadata.objects.length ||
692
- !!metadata.arrays.length ||
693
- !!metadata.tuples.length ||
694
- !!metadata.sets.length ||
695
- !!metadata.maps.length ||
696
- !!metadata.natives.length ||
697
- (metadata.rest !== null && is_instance(metadata.rest));
698
- };
522
+ const create_throw_error = (props) => typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(props.context.importer.internal("throwTypeGuardError"), undefined, [
523
+ typescript_1.default.factory.createObjectLiteralExpression([
524
+ typescript_1.default.factory.createPropertyAssignment("method", typescript_1.default.factory.createStringLiteral(props.functor.method)),
525
+ typescript_1.default.factory.createPropertyAssignment("expected", typescript_1.default.factory.createStringLiteral(props.expected)),
526
+ typescript_1.default.factory.createPropertyAssignment("value", props.input),
527
+ ], true),
528
+ ]));
529
+ const is_instance = (metadata) => !!metadata.objects.length ||
530
+ !!metadata.arrays.length ||
531
+ !!metadata.tuples.length ||
532
+ !!metadata.sets.length ||
533
+ !!metadata.maps.length ||
534
+ !!metadata.natives.length ||
535
+ (metadata.rest !== null && is_instance(metadata.rest));
699
536
  })(NotationGeneralProgrammer || (exports.NotationGeneralProgrammer = NotationGeneralProgrammer = {}));
700
537
  //# sourceMappingURL=NotationGeneralProgrammer.js.map