typia 13.0.0-dev.20260430 → 13.0.0-dev.20260502-2

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 (364) hide show
  1. package/lib/executable/TypiaGenerateWizard.js +55 -8
  2. package/lib/executable/TypiaGenerateWizard.js.map +1 -1
  3. package/lib/executable/TypiaGenerateWizard2.mjs +55 -8
  4. package/lib/executable/TypiaGenerateWizard2.mjs.map +1 -1
  5. package/lib/executable/generate/ttsc.js.map +1 -1
  6. package/lib/executable/setup/PluginConfigurator.js.map +1 -1
  7. package/lib/internal/_randomInteger.js.map +1 -1
  8. package/lib/internal/_validateReport.js.map +1 -1
  9. package/lib/transform.d.ts +2 -13
  10. package/lib/transform.js +4 -11
  11. package/lib/transform.js.map +1 -1
  12. package/lib/transform2.mjs +6 -14
  13. package/lib/transform2.mjs.map +1 -1
  14. package/native/adapter/adapter.go +128 -128
  15. package/native/adapter/cleanup.go +155 -172
  16. package/native/adapter/imports.go +80 -80
  17. package/native/adapter/visit.go +142 -142
  18. package/native/cmd/ttsc-typia/build.go +223 -223
  19. package/native/cmd/ttsc-typia/main.go +57 -57
  20. package/native/cmd/ttsc-typia/transform.go +421 -254
  21. package/native/cmd/ttsc-typia/transform_test.go +40 -0
  22. package/native/core/context/IProgrammerProps.go +7 -7
  23. package/native/core/context/ITransformOptions.go +5 -5
  24. package/native/core/context/ITypiaContext.go +13 -13
  25. package/native/core/context/TransformerError.go +81 -81
  26. package/native/core/factories/CommentFactory.go +9 -9
  27. package/native/core/factories/ExpressionFactory.go +254 -254
  28. package/native/core/factories/FormatCheatSheet.go +23 -23
  29. package/native/core/factories/IdentifierFactory.go +130 -130
  30. package/native/core/factories/JsonMetadataFactory.go +129 -129
  31. package/native/core/factories/LiteralFactory.go +195 -182
  32. package/native/core/factories/MetadataCommentTagFactory.go +379 -379
  33. package/native/core/factories/MetadataFactory.go +462 -462
  34. package/native/core/factories/MetadataTypeTagFactory.go +498 -498
  35. package/native/core/factories/MetadataTypeTagSchemaFactory.go +102 -102
  36. package/native/core/factories/NumericRangeFactory.go +84 -84
  37. package/native/core/factories/ProtobufFactory.go +933 -933
  38. package/native/core/factories/StatementFactory.go +72 -72
  39. package/native/core/factories/TemplateFactory.go +57 -57
  40. package/native/core/factories/TypeFactory.go +125 -125
  41. package/native/core/factories/ValueFactory.go +12 -12
  42. package/native/core/factories/internal/metadata/IMetadataIteratorProps.go +35 -35
  43. package/native/core/factories/internal/metadata/MetadataHelper.go +176 -176
  44. package/native/core/factories/internal/metadata/emend_metadata_atomics.go +69 -69
  45. package/native/core/factories/internal/metadata/emplace_metadata_alias.go +27 -27
  46. package/native/core/factories/internal/metadata/emplace_metadata_array_type.go +33 -33
  47. package/native/core/factories/internal/metadata/emplace_metadata_object.go +209 -209
  48. package/native/core/factories/internal/metadata/emplace_metadata_tuple.go +50 -50
  49. package/native/core/factories/internal/metadata/explore_metadata.go +29 -29
  50. package/native/core/factories/internal/metadata/iterate_metadata.go +46 -46
  51. package/native/core/factories/internal/metadata/iterate_metadata_alias.go +25 -25
  52. package/native/core/factories/internal/metadata/iterate_metadata_array.go +65 -65
  53. package/native/core/factories/internal/metadata/iterate_metadata_atomic.go +49 -49
  54. package/native/core/factories/internal/metadata/iterate_metadata_coalesce.go +22 -22
  55. package/native/core/factories/internal/metadata/iterate_metadata_collection.go +228 -228
  56. package/native/core/factories/internal/metadata/iterate_metadata_comment_tags.go +12 -12
  57. package/native/core/factories/internal/metadata/iterate_metadata_constant.go +71 -71
  58. package/native/core/factories/internal/metadata/iterate_metadata_escape.go +48 -48
  59. package/native/core/factories/internal/metadata/iterate_metadata_function.go +82 -82
  60. package/native/core/factories/internal/metadata/iterate_metadata_intersection.go +319 -319
  61. package/native/core/factories/internal/metadata/iterate_metadata_map.go +51 -51
  62. package/native/core/factories/internal/metadata/iterate_metadata_native.go +85 -85
  63. package/native/core/factories/internal/metadata/iterate_metadata_object.go +27 -27
  64. package/native/core/factories/internal/metadata/iterate_metadata_set.go +37 -37
  65. package/native/core/factories/internal/metadata/iterate_metadata_sort.go +137 -137
  66. package/native/core/factories/internal/metadata/iterate_metadata_template.go +33 -33
  67. package/native/core/factories/internal/metadata/iterate_metadata_tuple.go +16 -16
  68. package/native/core/factories/internal/metadata/iterate_metadata_union.go +18 -18
  69. package/native/core/programmers/AssertProgrammer.go +389 -389
  70. package/native/core/programmers/ImportProgrammer.go +196 -196
  71. package/native/core/programmers/IsProgrammer.go +293 -293
  72. package/native/core/programmers/RandomProgrammer.go +1094 -1094
  73. package/native/core/programmers/ValidateProgrammer.go +369 -369
  74. package/native/core/programmers/functional/FunctionalAssertFunctionProgrammer.go +133 -133
  75. package/native/core/programmers/functional/FunctionalAssertParametersProgrammer.go +104 -104
  76. package/native/core/programmers/functional/FunctionalAssertReturnProgrammer.go +100 -100
  77. package/native/core/programmers/functional/FunctionalIsFunctionProgrammer.go +79 -79
  78. package/native/core/programmers/functional/FunctionalIsParametersProgrammer.go +159 -159
  79. package/native/core/programmers/functional/FunctionalIsReturnProgrammer.go +99 -99
  80. package/native/core/programmers/functional/FunctionalValidateFunctionProgrammer.go +138 -138
  81. package/native/core/programmers/functional/FunctionalValidateParametersProgrammer.go +222 -222
  82. package/native/core/programmers/functional/FunctionalValidateReturnProgrammer.go +116 -116
  83. package/native/core/programmers/functional/internal/FunctionalGeneralProgrammer.go +36 -36
  84. package/native/core/programmers/helpers/AtomicPredicator.go +35 -35
  85. package/native/core/programmers/helpers/CloneJoiner.go +217 -217
  86. package/native/core/programmers/helpers/FunctionProgrammer.go +79 -79
  87. package/native/core/programmers/helpers/HttpMetadataUtil.go +17 -17
  88. package/native/core/programmers/helpers/ICheckEntry.go +5 -5
  89. package/native/core/programmers/helpers/IExpressionEntry.go +6 -6
  90. package/native/core/programmers/helpers/NotationJoiner.go +159 -159
  91. package/native/core/programmers/helpers/OptionPredicator.go +4 -4
  92. package/native/core/programmers/helpers/ProtobufUtil.go +231 -231
  93. package/native/core/programmers/helpers/ProtobufWire.go +6 -6
  94. package/native/core/programmers/helpers/PruneJoiner.go +227 -227
  95. package/native/core/programmers/helpers/RandomJoiner.go +155 -155
  96. package/native/core/programmers/helpers/StringifyJoinder.go +331 -331
  97. package/native/core/programmers/helpers/StringifyPredicator.go +10 -10
  98. package/native/core/programmers/helpers/UnionExplorer.go +835 -835
  99. package/native/core/programmers/helpers/UnionPredicator.go +78 -78
  100. package/native/core/programmers/helpers/disable_function_programmer_declare.go +6 -6
  101. package/native/core/programmers/http/HttpAssertFormDataProgrammer.go +93 -93
  102. package/native/core/programmers/http/HttpAssertHeadersProgrammer.go +42 -42
  103. package/native/core/programmers/http/HttpAssertQueryProgrammer.go +51 -51
  104. package/native/core/programmers/http/HttpFormDataProgrammer.go +351 -351
  105. package/native/core/programmers/http/HttpHeadersProgrammer.go +370 -370
  106. package/native/core/programmers/http/HttpIsFormDataProgrammer.go +109 -109
  107. package/native/core/programmers/http/HttpIsHeadersProgrammer.go +36 -36
  108. package/native/core/programmers/http/HttpIsQueryProgrammer.go +45 -45
  109. package/native/core/programmers/http/HttpParameterProgrammer.go +158 -158
  110. package/native/core/programmers/http/HttpQueryProgrammer.go +422 -422
  111. package/native/core/programmers/http/HttpValidateFormDataProgrammer.go +87 -87
  112. package/native/core/programmers/http/HttpValidateHeadersProgrammer.go +39 -39
  113. package/native/core/programmers/http/HttpValidateQueryProgrammer.go +48 -48
  114. package/native/core/programmers/internal/CheckerProgrammer.go +1490 -1490
  115. package/native/core/programmers/internal/FeatureProgrammer.go +589 -589
  116. package/native/core/programmers/iterate/check_array_length.go +46 -46
  117. package/native/core/programmers/iterate/check_bigint.go +52 -52
  118. package/native/core/programmers/iterate/check_dynamic_key.go +220 -220
  119. package/native/core/programmers/iterate/check_dynamic_properties.go +245 -245
  120. package/native/core/programmers/iterate/check_everything.go +21 -21
  121. package/native/core/programmers/iterate/check_native.go +25 -25
  122. package/native/core/programmers/iterate/check_number.go +135 -135
  123. package/native/core/programmers/iterate/check_object.go +66 -66
  124. package/native/core/programmers/iterate/check_string.go +52 -52
  125. package/native/core/programmers/iterate/check_template.go +57 -57
  126. package/native/core/programmers/iterate/check_union_array_like.go +372 -372
  127. package/native/core/programmers/iterate/decode_union_object.go +118 -118
  128. package/native/core/programmers/iterate/feature_object_entries.go +134 -134
  129. package/native/core/programmers/iterate/json_schema_alias.go +52 -52
  130. package/native/core/programmers/iterate/json_schema_array.go +52 -52
  131. package/native/core/programmers/iterate/json_schema_bigint.go +8 -8
  132. package/native/core/programmers/iterate/json_schema_boolean.go +8 -8
  133. package/native/core/programmers/iterate/json_schema_constant.go +38 -38
  134. package/native/core/programmers/iterate/json_schema_description.go +12 -12
  135. package/native/core/programmers/iterate/json_schema_discriminator.go +47 -47
  136. package/native/core/programmers/iterate/json_schema_escaped.go +58 -58
  137. package/native/core/programmers/iterate/json_schema_jsDocTags.go +34 -34
  138. package/native/core/programmers/iterate/json_schema_native.go +43 -43
  139. package/native/core/programmers/iterate/json_schema_number.go +8 -8
  140. package/native/core/programmers/iterate/json_schema_object.go +149 -149
  141. package/native/core/programmers/iterate/json_schema_plugin.go +35 -35
  142. package/native/core/programmers/iterate/json_schema_station.go +211 -211
  143. package/native/core/programmers/iterate/json_schema_string.go +8 -8
  144. package/native/core/programmers/iterate/json_schema_template.go +53 -53
  145. package/native/core/programmers/iterate/json_schema_title.go +16 -16
  146. package/native/core/programmers/iterate/json_schema_tuple.go +34 -34
  147. package/native/core/programmers/iterate/metadata_to_pattern.go +53 -53
  148. package/native/core/programmers/iterate/postfix_of_tuple.go +5 -5
  149. package/native/core/programmers/iterate/prune_object_properties.go +85 -85
  150. package/native/core/programmers/iterate/stringify_dynamic_properties.go +193 -193
  151. package/native/core/programmers/iterate/stringify_native.go +1 -1
  152. package/native/core/programmers/iterate/stringify_regular_properties.go +84 -84
  153. package/native/core/programmers/iterate/template_to_pattern.go +20 -20
  154. package/native/core/programmers/iterate/wrap_metadata_rest_tuple.go +13 -13
  155. package/native/core/programmers/json/JsonApplicationProgrammer.go +323 -323
  156. package/native/core/programmers/json/JsonAssertParseProgrammer.go +100 -100
  157. package/native/core/programmers/json/JsonAssertStringifyProgrammer.go +88 -88
  158. package/native/core/programmers/json/JsonIsParseProgrammer.go +130 -130
  159. package/native/core/programmers/json/JsonIsStringifyProgrammer.go +92 -92
  160. package/native/core/programmers/json/JsonSchemaProgrammer.go +65 -65
  161. package/native/core/programmers/json/JsonSchemasProgrammer.go +116 -116
  162. package/native/core/programmers/json/JsonStringifyProgrammer.go +1245 -1245
  163. package/native/core/programmers/json/JsonValidateParseProgrammer.go +89 -89
  164. package/native/core/programmers/json/JsonValidateStringifyProgrammer.go +106 -106
  165. package/native/core/programmers/llm/LlmApplicationProgrammer.go +449 -437
  166. package/native/core/programmers/llm/LlmCoerceProgrammer.go +79 -79
  167. package/native/core/programmers/llm/LlmControllerProgrammer.go +35 -35
  168. package/native/core/programmers/llm/LlmMetadataFactory.go +74 -74
  169. package/native/core/programmers/llm/LlmParametersProgrammer.go +105 -132
  170. package/native/core/programmers/llm/LlmParseProgrammer.go +88 -88
  171. package/native/core/programmers/llm/LlmSchemaProgrammer.go +780 -423
  172. package/native/core/programmers/llm/LlmStructuredOutputProgrammer.go +123 -123
  173. package/native/core/programmers/misc/MiscAssertCloneProgrammer.go +82 -82
  174. package/native/core/programmers/misc/MiscAssertPruneProgrammer.go +97 -97
  175. package/native/core/programmers/misc/MiscCloneProgrammer.go +1056 -1056
  176. package/native/core/programmers/misc/MiscIsCloneProgrammer.go +94 -94
  177. package/native/core/programmers/misc/MiscIsPruneProgrammer.go +86 -86
  178. package/native/core/programmers/misc/MiscLiteralsProgrammer.go +99 -99
  179. package/native/core/programmers/misc/MiscPruneProgrammer.go +700 -700
  180. package/native/core/programmers/misc/MiscValidateCloneProgrammer.go +103 -103
  181. package/native/core/programmers/misc/MiscValidatePruneProgrammer.go +94 -94
  182. package/native/core/programmers/notations/NotationAssertGeneralProgrammer.go +85 -85
  183. package/native/core/programmers/notations/NotationGeneralProgrammer.go +1188 -1188
  184. package/native/core/programmers/notations/NotationIsGeneralProgrammer.go +90 -90
  185. package/native/core/programmers/notations/NotationValidateGeneralProgrammer.go +109 -109
  186. package/native/core/programmers/protobuf/ProtobufAssertDecodeProgrammer.go +99 -99
  187. package/native/core/programmers/protobuf/ProtobufAssertEncodeProgrammer.go +114 -114
  188. package/native/core/programmers/protobuf/ProtobufDecodeProgrammer.go +697 -697
  189. package/native/core/programmers/protobuf/ProtobufEncodeProgrammer.go +1039 -1039
  190. package/native/core/programmers/protobuf/ProtobufIsDecodeProgrammer.go +99 -99
  191. package/native/core/programmers/protobuf/ProtobufIsEncodeProgrammer.go +93 -93
  192. package/native/core/programmers/protobuf/ProtobufMessageProgrammer.go +228 -228
  193. package/native/core/programmers/protobuf/ProtobufValidateDecodeProgrammer.go +88 -88
  194. package/native/core/programmers/protobuf/ProtobufValidateEncodeProgrammer.go +120 -120
  195. package/native/core/schemas/metadata/IMetadataDictionary.go +4 -4
  196. package/native/core/schemas/metadata/MetadataAlias.go +15 -15
  197. package/native/core/schemas/metadata/MetadataAliasType.go +36 -36
  198. package/native/core/schemas/metadata/MetadataApplication.go +25 -25
  199. package/native/core/schemas/metadata/MetadataArray.go +15 -15
  200. package/native/core/schemas/metadata/MetadataArrayType.go +31 -31
  201. package/native/core/schemas/metadata/MetadataAtomic.go +45 -45
  202. package/native/core/schemas/metadata/MetadataCollection.go +380 -380
  203. package/native/core/schemas/metadata/MetadataComponents.go +95 -95
  204. package/native/core/schemas/metadata/MetadataConstant.go +31 -31
  205. package/native/core/schemas/metadata/MetadataConstantValue.go +63 -63
  206. package/native/core/schemas/metadata/MetadataEscaped.go +17 -17
  207. package/native/core/schemas/metadata/MetadataFunction.go +30 -30
  208. package/native/core/schemas/metadata/MetadataMap.go +21 -21
  209. package/native/core/schemas/metadata/MetadataNative.go +48 -48
  210. package/native/core/schemas/metadata/MetadataObject.go +15 -15
  211. package/native/core/schemas/metadata/MetadataObjectType.go +116 -116
  212. package/native/core/schemas/metadata/MetadataParameter.go +28 -28
  213. package/native/core/schemas/metadata/MetadataProperty.go +32 -32
  214. package/native/core/schemas/metadata/MetadataSchema.go +766 -766
  215. package/native/core/schemas/metadata/MetadataSet.go +17 -17
  216. package/native/core/schemas/metadata/MetadataTemplate.go +43 -43
  217. package/native/core/schemas/metadata/MetadataTuple.go +10 -10
  218. package/native/core/schemas/metadata/MetadataTupleType.go +38 -38
  219. package/native/core/schemas/protobuf/IProtobufProperty.go +2 -2
  220. package/native/core/schemas/protobuf/IProtobufPropertyType.go +18 -18
  221. package/native/core/schemas/protobuf/IProtobufSchema.go +17 -17
  222. package/native/core/typings/Writable.go +1 -1
  223. package/native/core/utils/PatternUtil.go +38 -38
  224. package/native/core/utils/ProtobufNameEncoder.go +28 -28
  225. package/native/shim/printer/shim.go +213 -213
  226. package/native/third_party/ttsc/driver/host.go +7 -7
  227. package/native/third_party/ttsc/driver/program.go +275 -275
  228. package/native/third_party/ttsc/driver/rewrite.go +219 -219
  229. package/native/third_party/ttsc/shim/ast/lint.go +171 -171
  230. package/native/third_party/ttsc/shim/ast/shim.go +83 -83
  231. package/native/third_party/ttsc/shim/bundled/shim.go +5 -1
  232. package/native/third_party/ttsc/shim/checker/shim.go +79 -79
  233. package/native/third_party/ttsc/shim/compiler/shim.go +16 -1
  234. package/native/third_party/ttsc/shim/core/shim.go +10 -10
  235. package/native/third_party/ttsc/shim/diagnosticwriter/lint.go +79 -79
  236. package/native/third_party/ttsc/shim/diagnosticwriter/shim.go +19 -19
  237. package/native/third_party/ttsc/shim/parser/shim.go +7 -1
  238. package/native/third_party/ttsc/shim/scanner/shim.go +39 -1
  239. package/native/third_party/ttsc/shim/tsoptions/shim.go +51 -1
  240. package/native/third_party/ttsc/shim/tspath/shim.go +72 -1
  241. package/native/third_party/ttsc/shim/vfs/cachedvfs/shim.go +1 -1
  242. package/native/third_party/ttsc/shim/vfs/osvfs/shim.go +1 -1
  243. package/native/third_party/ttsc/shim/vfs/shim.go +4 -1
  244. package/native/transform/CallExpressionTransformer.go +556 -556
  245. package/native/transform/FileTransformer.go +123 -123
  246. package/native/transform/ImportTransformer.go +224 -224
  247. package/native/transform/NodeTransformer.go +11 -11
  248. package/native/transform/TypiaGenerator.go +136 -136
  249. package/native/transform/features/AssertTransformer.go +28 -28
  250. package/native/transform/features/CreateAssertTransformer.go +28 -28
  251. package/native/transform/features/CreateIsTransformer.go +24 -24
  252. package/native/transform/features/CreateRandomTransformer.go +35 -35
  253. package/native/transform/features/CreateValidateTransformer.go +24 -24
  254. package/native/transform/features/IsTransformer.go +24 -24
  255. package/native/transform/features/RandomTransformer.go +37 -37
  256. package/native/transform/features/ValidateTransformer.go +24 -24
  257. package/native/transform/features/functional/FunctionalGenericTransformer.go +48 -48
  258. package/native/transform/features/http/CreateHttpAssertFormDataTransformer.go +11 -11
  259. package/native/transform/features/http/CreateHttpAssertHeadersTransformer.go +11 -11
  260. package/native/transform/features/http/CreateHttpAssertQueryTransformer.go +17 -17
  261. package/native/transform/features/http/CreateHttpFormDataTransformer.go +11 -11
  262. package/native/transform/features/http/CreateHttpHeadersTransformer.go +11 -11
  263. package/native/transform/features/http/CreateHttpIsFormDataTransformer.go +11 -11
  264. package/native/transform/features/http/CreateHttpIsHeadersTransformer.go +11 -11
  265. package/native/transform/features/http/CreateHttpIsQueryTransformer.go +17 -17
  266. package/native/transform/features/http/CreateHttpParameterTransformer.go +11 -11
  267. package/native/transform/features/http/CreateHttpQueryTransformer.go +17 -17
  268. package/native/transform/features/http/CreateHttpValidateFormDataTransformer.go +11 -11
  269. package/native/transform/features/http/CreateHttpValidateHeadersTransformer.go +11 -11
  270. package/native/transform/features/http/CreateHttpValidateQueryTransformer.go +17 -17
  271. package/native/transform/features/http/HttpAssertFormDataTransformer.go +11 -11
  272. package/native/transform/features/http/HttpAssertHeadersTransformer.go +11 -11
  273. package/native/transform/features/http/HttpAssertQueryTransformer.go +17 -17
  274. package/native/transform/features/http/HttpFormDataTransformer.go +11 -11
  275. package/native/transform/features/http/HttpHeadersTransformer.go +11 -11
  276. package/native/transform/features/http/HttpIsFormDataTransformer.go +11 -11
  277. package/native/transform/features/http/HttpIsHeadersTransformer.go +11 -11
  278. package/native/transform/features/http/HttpIsQueryTransformer.go +17 -17
  279. package/native/transform/features/http/HttpParameterTransformer.go +11 -11
  280. package/native/transform/features/http/HttpQueryTransformer.go +17 -17
  281. package/native/transform/features/http/HttpValidateFormDataTransformer.go +11 -11
  282. package/native/transform/features/http/HttpValidateHeadersTransformer.go +11 -11
  283. package/native/transform/features/http/HttpValidateQueryTransformer.go +17 -17
  284. package/native/transform/features/json/JsonApplicationTransformer.go +61 -61
  285. package/native/transform/features/json/JsonAssertParseTransformer.go +11 -11
  286. package/native/transform/features/json/JsonAssertStringifyTransformer.go +11 -11
  287. package/native/transform/features/json/JsonCreateAssertParseTransformer.go +11 -11
  288. package/native/transform/features/json/JsonCreateAssertStringifyTransformer.go +11 -11
  289. package/native/transform/features/json/JsonCreateIsParseTransformer.go +11 -11
  290. package/native/transform/features/json/JsonCreateIsStringifyTransformer.go +11 -11
  291. package/native/transform/features/json/JsonCreateStringifyTransformer.go +11 -11
  292. package/native/transform/features/json/JsonCreateValidateParseTransformer.go +11 -11
  293. package/native/transform/features/json/JsonCreateValidateStringifyProgrammer.go +11 -11
  294. package/native/transform/features/json/JsonIsParseTransformer.go +11 -11
  295. package/native/transform/features/json/JsonIsStringifyTransformer.go +11 -11
  296. package/native/transform/features/json/JsonSchemaTransformer.go +148 -148
  297. package/native/transform/features/json/JsonSchemasTransformer.go +94 -94
  298. package/native/transform/features/json/JsonStringifyTransformer.go +11 -11
  299. package/native/transform/features/json/JsonValidateParseTransformer.go +11 -11
  300. package/native/transform/features/json/JsonValidateStringifyTransformer.go +11 -11
  301. package/native/transform/features/llm/LlmApplicationTransformer.go +43 -43
  302. package/native/transform/features/llm/LlmCoerceTransformer.go +50 -50
  303. package/native/transform/features/llm/LlmControllerTransformer.go +48 -48
  304. package/native/transform/features/llm/LlmCreateCoerceTransformer.go +43 -43
  305. package/native/transform/features/llm/LlmCreateParseTransformer.go +43 -43
  306. package/native/transform/features/llm/LlmParametersTransformer.go +38 -38
  307. package/native/transform/features/llm/LlmParseTransformer.go +50 -50
  308. package/native/transform/features/llm/LlmSchemaTransformer.go +129 -129
  309. package/native/transform/features/llm/LlmStructuredOutputTransformer.go +44 -44
  310. package/native/transform/features/misc/MiscAssertCloneTransformer.go +11 -11
  311. package/native/transform/features/misc/MiscAssertPruneTransformer.go +11 -11
  312. package/native/transform/features/misc/MiscCloneTransformer.go +11 -11
  313. package/native/transform/features/misc/MiscCreateAssertCloneTransformer.go +11 -11
  314. package/native/transform/features/misc/MiscCreateAssertPruneTransformer.go +11 -11
  315. package/native/transform/features/misc/MiscCreateCloneTransformer.go +11 -11
  316. package/native/transform/features/misc/MiscCreateIsCloneTransformer.go +11 -11
  317. package/native/transform/features/misc/MiscCreateIsPruneTransformer.go +11 -11
  318. package/native/transform/features/misc/MiscCreatePruneTransformer.go +11 -11
  319. package/native/transform/features/misc/MiscCreateValidateCloneTransformer.go +11 -11
  320. package/native/transform/features/misc/MiscCreateValidatePruneTransformer.go +11 -11
  321. package/native/transform/features/misc/MiscIsCloneTransformer.go +11 -11
  322. package/native/transform/features/misc/MiscIsPruneTransformer.go +11 -11
  323. package/native/transform/features/misc/MiscLiteralsTransformer.go +21 -21
  324. package/native/transform/features/misc/MiscPruneTransformer.go +11 -11
  325. package/native/transform/features/misc/MiscValidateCloneTransformer.go +11 -11
  326. package/native/transform/features/misc/MiscValidatePruneTransformer.go +11 -11
  327. package/native/transform/features/notations/NotationAssertGeneralTransformer.go +16 -16
  328. package/native/transform/features/notations/NotationCreateAssertGeneralTransformer.go +16 -16
  329. package/native/transform/features/notations/NotationCreateGeneralTransformer.go +16 -16
  330. package/native/transform/features/notations/NotationCreateIsGeneralTransformer.go +16 -16
  331. package/native/transform/features/notations/NotationCreateValidateGeneralTransformer.go +16 -16
  332. package/native/transform/features/notations/NotationGeneralTransformer.go +21 -21
  333. package/native/transform/features/notations/NotationIsGeneralTransformer.go +16 -16
  334. package/native/transform/features/notations/NotationValidateGeneralTransformer.go +16 -16
  335. package/native/transform/features/protobuf/ProtobufAssertDecodeTransformer.go +11 -11
  336. package/native/transform/features/protobuf/ProtobufAssertEncodeTransformer.go +11 -11
  337. package/native/transform/features/protobuf/ProtobufCreateAssertDecodeTransformer.go +11 -11
  338. package/native/transform/features/protobuf/ProtobufCreateAssertEncodeTransformer.go +11 -11
  339. package/native/transform/features/protobuf/ProtobufCreateDecodeTransformer.go +11 -11
  340. package/native/transform/features/protobuf/ProtobufCreateEncodeTransformer.go +11 -11
  341. package/native/transform/features/protobuf/ProtobufCreateIsDecodeTransformer.go +11 -11
  342. package/native/transform/features/protobuf/ProtobufCreateIsEncodeTransformer.go +11 -11
  343. package/native/transform/features/protobuf/ProtobufCreateValidateDecodeTransformer.go +11 -11
  344. package/native/transform/features/protobuf/ProtobufCreateValidateEncodeTransformer.go +11 -11
  345. package/native/transform/features/protobuf/ProtobufDecodeTransformer.go +11 -11
  346. package/native/transform/features/protobuf/ProtobufEncodeTransformer.go +11 -11
  347. package/native/transform/features/protobuf/ProtobufIsDecodeTransformer.go +11 -11
  348. package/native/transform/features/protobuf/ProtobufIsEncodeTransformer.go +11 -11
  349. package/native/transform/features/protobuf/ProtobufMessageTransformer.go +20 -20
  350. package/native/transform/features/protobuf/ProtobufValidateDecodeTransformer.go +11 -11
  351. package/native/transform/features/protobuf/ProtobufValidateEncodeTransformer.go +11 -11
  352. package/native/transform/features/reflect/ReflectMetadataTransformer.go +59 -59
  353. package/native/transform/features/reflect/ReflectNameTransformer.go +78 -78
  354. package/native/transform/features/reflect/ReflectSchemaTransformer.go +121 -121
  355. package/native/transform/features/reflect/ReflectSchemasTransformer.go +55 -55
  356. package/native/transform/internal/GenericTransformer.go +173 -173
  357. package/native/transform/transform.go +32 -32
  358. package/package.json +4 -4
  359. package/src/executable/TypiaGenerateWizard.ts +78 -9
  360. package/src/executable/generate/ttsc.ts +2 -3
  361. package/src/executable/setup/PluginConfigurator.ts +2 -3
  362. package/src/internal/_randomInteger.ts +5 -5
  363. package/src/internal/_validateReport.ts +1 -2
  364. package/src/transform.ts +6 -11
@@ -1,13 +1,13 @@
1
1
  package json
2
2
 
3
3
  import (
4
- "strings"
4
+ "strings"
5
5
 
6
- shimast "github.com/microsoft/typescript-go/shim/ast"
7
- nativecontext "github.com/samchon/typia/packages/typia/native/core/context"
8
- nativefactories "github.com/samchon/typia/packages/typia/native/core/factories"
9
- nativeiterate "github.com/samchon/typia/packages/typia/native/core/programmers/iterate"
10
- nativemetadata "github.com/samchon/typia/packages/typia/native/core/schemas/metadata"
6
+ shimast "github.com/microsoft/typescript-go/shim/ast"
7
+ nativecontext "github.com/samchon/typia/packages/typia/native/core/context"
8
+ nativefactories "github.com/samchon/typia/packages/typia/native/core/factories"
9
+ nativeiterate "github.com/samchon/typia/packages/typia/native/core/programmers/iterate"
10
+ nativemetadata "github.com/samchon/typia/packages/typia/native/core/schemas/metadata"
11
11
  )
12
12
 
13
13
  type jsonSchemaProgrammerNamespace struct{}
@@ -15,80 +15,80 @@ type jsonSchemaProgrammerNamespace struct{}
15
15
  var JsonSchemaProgrammer = jsonSchemaProgrammerNamespace{}
16
16
 
17
17
  type JsonSchemaProgrammer_IWriteProps struct {
18
- Context nativecontext.ITypiaContext
19
- Version string
20
- Metadata *nativemetadata.MetadataSchema
18
+ Context nativecontext.ITypiaContext
19
+ Version string
20
+ Metadata *nativemetadata.MetadataSchema
21
21
  }
22
22
 
23
23
  type JsonSchemaProgrammer_IJsonSchemaUnit struct {
24
- Version string
25
- Components *nativeiterate.OpenApi_IComponents
26
- Schema nativeiterate.JsonSchema
24
+ Version string
25
+ Components *nativeiterate.OpenApi_IComponents
26
+ Schema nativeiterate.JsonSchema
27
27
  }
28
28
 
29
29
  func (jsonSchemaProgrammerNamespace) Validate(props struct {
30
- Metadata *nativemetadata.MetadataSchema
31
- Explore nativefactories.MetadataFactory_IExplore
30
+ Metadata *nativemetadata.MetadataSchema
31
+ Explore nativefactories.MetadataFactory_IExplore
32
32
  }) []string {
33
- return JsonSchemasProgrammer.Validate(props)
33
+ return JsonSchemasProgrammer.Validate(props)
34
34
  }
35
35
 
36
36
  func (jsonSchemaProgrammerNamespace) Write(props JsonSchemaProgrammer_IWriteProps) *shimast.Node {
37
- schema := JsonSchemaProgrammer.WriteSchema(struct {
38
- Version string
39
- Metadata *nativemetadata.MetadataSchema
40
- }{
41
- Version: props.Version,
42
- Metadata: props.Metadata,
43
- })
44
- return nativefactories.LiteralFactory.Write(map[string]any{
45
- "version": schema.Version,
46
- "components": schema.Components,
47
- "schema": schema.Schema,
48
- })
37
+ schema := JsonSchemaProgrammer.WriteSchema(struct {
38
+ Version string
39
+ Metadata *nativemetadata.MetadataSchema
40
+ }{
41
+ Version: props.Version,
42
+ Metadata: props.Metadata,
43
+ })
44
+ return nativefactories.LiteralFactory.Write(map[string]any{
45
+ "version": schema.Version,
46
+ "components": schema.Components,
47
+ "schema": schema.Schema,
48
+ })
49
49
  }
50
50
 
51
51
  func (jsonSchemaProgrammerNamespace) WriteSchema(props struct {
52
- Version string
53
- Metadata *nativemetadata.MetadataSchema
52
+ Version string
53
+ Metadata *nativemetadata.MetadataSchema
54
54
  }) JsonSchemaProgrammer_IJsonSchemaUnit {
55
- collection := JsonSchemasProgrammer.WriteSchemas(struct {
56
- Version string
57
- Metadatas []*nativemetadata.MetadataSchema
58
- }{
59
- Version: props.Version,
60
- Metadatas: []*nativemetadata.MetadataSchema{props.Metadata},
61
- })
62
- var schema nativeiterate.JsonSchema
63
- if len(collection.Schemas) != 0 {
64
- schema = jsonSchemaProgrammer_dereference_root(collection.Schemas[0], collection.Components)
65
- }
66
- return JsonSchemaProgrammer_IJsonSchemaUnit{
67
- Version: collection.Version,
68
- Components: collection.Components,
69
- Schema: schema,
70
- }
55
+ collection := JsonSchemasProgrammer.WriteSchemas(struct {
56
+ Version string
57
+ Metadatas []*nativemetadata.MetadataSchema
58
+ }{
59
+ Version: props.Version,
60
+ Metadatas: []*nativemetadata.MetadataSchema{props.Metadata},
61
+ })
62
+ var schema nativeiterate.JsonSchema
63
+ if len(collection.Schemas) != 0 {
64
+ schema = jsonSchemaProgrammer_dereference_root(collection.Schemas[0], collection.Components)
65
+ }
66
+ return JsonSchemaProgrammer_IJsonSchemaUnit{
67
+ Version: collection.Version,
68
+ Components: collection.Components,
69
+ Schema: schema,
70
+ }
71
71
  }
72
72
 
73
73
  func jsonSchemaProgrammer_dereference_root(schema nativeiterate.JsonSchema, components *nativeiterate.OpenApi_IComponents) nativeiterate.JsonSchema {
74
- if schema == nil || components == nil || components.Schemas == nil {
75
- return schema
76
- }
77
- ref, ok := schema["$ref"].(string)
78
- if ok == false {
79
- return schema
80
- }
81
- const prefix = "#/components/schemas/"
82
- if strings.HasPrefix(ref, prefix) == false {
83
- return schema
84
- }
85
- target, ok := components.Schemas[strings.TrimPrefix(ref, prefix)]
86
- if ok == false {
87
- return schema
88
- }
89
- output := nativeiterate.JsonSchema{}
90
- for key, value := range target {
91
- output[key] = value
92
- }
93
- return output
74
+ if schema == nil || components == nil || components.Schemas == nil {
75
+ return schema
76
+ }
77
+ ref, ok := schema["$ref"].(string)
78
+ if ok == false {
79
+ return schema
80
+ }
81
+ const prefix = "#/components/schemas/"
82
+ if strings.HasPrefix(ref, prefix) == false {
83
+ return schema
84
+ }
85
+ target, ok := components.Schemas[strings.TrimPrefix(ref, prefix)]
86
+ if ok == false {
87
+ return schema
88
+ }
89
+ output := nativeiterate.JsonSchema{}
90
+ for key, value := range target {
91
+ output[key] = value
92
+ }
93
+ return output
94
94
  }
@@ -1,14 +1,14 @@
1
1
  package json
2
2
 
3
3
  import (
4
- "fmt"
4
+ "fmt"
5
5
 
6
- shimast "github.com/microsoft/typescript-go/shim/ast"
7
- nativecontext "github.com/samchon/typia/packages/typia/native/core/context"
8
- nativefactories "github.com/samchon/typia/packages/typia/native/core/factories"
9
- nativehelpers "github.com/samchon/typia/packages/typia/native/core/programmers/helpers"
10
- nativeiterate "github.com/samchon/typia/packages/typia/native/core/programmers/iterate"
11
- nativemetadata "github.com/samchon/typia/packages/typia/native/core/schemas/metadata"
6
+ shimast "github.com/microsoft/typescript-go/shim/ast"
7
+ nativecontext "github.com/samchon/typia/packages/typia/native/core/context"
8
+ nativefactories "github.com/samchon/typia/packages/typia/native/core/factories"
9
+ nativehelpers "github.com/samchon/typia/packages/typia/native/core/programmers/helpers"
10
+ nativeiterate "github.com/samchon/typia/packages/typia/native/core/programmers/iterate"
11
+ nativemetadata "github.com/samchon/typia/packages/typia/native/core/schemas/metadata"
12
12
  )
13
13
 
14
14
  type jsonSchemasProgrammerNamespace struct{}
@@ -16,133 +16,133 @@ type jsonSchemasProgrammerNamespace struct{}
16
16
  var JsonSchemasProgrammer = jsonSchemasProgrammerNamespace{}
17
17
 
18
18
  type JsonSchemasProgrammer_IWriteProps struct {
19
- Context nativecontext.ITypiaContext
20
- Version string
21
- Metadatas []*nativemetadata.MetadataSchema
19
+ Context nativecontext.ITypiaContext
20
+ Version string
21
+ Metadatas []*nativemetadata.MetadataSchema
22
22
  }
23
23
 
24
24
  type JsonSchemasProgrammer_IJsonSchemaCollection struct {
25
- Version string
26
- Components *nativeiterate.OpenApi_IComponents
27
- Schemas []nativeiterate.JsonSchema
25
+ Version string
26
+ Components *nativeiterate.OpenApi_IComponents
27
+ Schemas []nativeiterate.JsonSchema
28
28
  }
29
29
 
30
30
  func (jsonSchemasProgrammerNamespace) Validate(props struct {
31
- Metadata *nativemetadata.MetadataSchema
32
- Explore nativefactories.MetadataFactory_IExplore
31
+ Metadata *nativemetadata.MetadataSchema
32
+ Explore nativefactories.MetadataFactory_IExplore
33
33
  }) []string {
34
- output := []string{}
35
- for _, atomic := range props.Metadata.Atomics {
36
- if atomic.Type == "bigint" {
37
- output = append(output, "JSON schema does not support bigint type.")
38
- break
39
- }
40
- }
41
- for _, constant := range props.Metadata.Constants {
42
- if constant.Type == "bigint" {
43
- output = append(output, "JSON schema does not support bigint type.")
44
- break
45
- }
46
- }
47
- tupleInvalid := false
48
- for _, tuple := range props.Metadata.Tuples {
49
- for _, element := range tuple.Type.Elements {
50
- if element.IsRequired() == false {
51
- tupleInvalid = true
52
- break
53
- }
54
- }
55
- if tupleInvalid {
56
- break
57
- }
58
- }
59
- arrayInvalid := false
60
- for _, array := range props.Metadata.Arrays {
61
- if array.Type.Value.IsRequired() == false {
62
- arrayInvalid = true
63
- break
64
- }
65
- }
66
- if tupleInvalid || arrayInvalid {
67
- output = append(output, "JSON schema does not support undefined type in array.")
68
- }
69
- if len(props.Metadata.Maps) != 0 {
70
- output = append(output, "JSON schema does not support Map type.")
71
- }
72
- if len(props.Metadata.Sets) != 0 {
73
- output = append(output, "JSON schema does not support Set type.")
74
- }
75
- for _, native := range props.Metadata.Natives {
76
- if nativehelpers.AtomicPredicator.Native(native.Name) == false &&
77
- native.Name != "Date" &&
78
- native.Name != "Blob" &&
79
- native.Name != "File" {
80
- output = append(output, "JSON schema does not support "+native.Name+" type.")
81
- }
82
- }
83
- return output
34
+ output := []string{}
35
+ for _, atomic := range props.Metadata.Atomics {
36
+ if atomic.Type == "bigint" {
37
+ output = append(output, "JSON schema does not support bigint type.")
38
+ break
39
+ }
40
+ }
41
+ for _, constant := range props.Metadata.Constants {
42
+ if constant.Type == "bigint" {
43
+ output = append(output, "JSON schema does not support bigint type.")
44
+ break
45
+ }
46
+ }
47
+ tupleInvalid := false
48
+ for _, tuple := range props.Metadata.Tuples {
49
+ for _, element := range tuple.Type.Elements {
50
+ if element.IsRequired() == false {
51
+ tupleInvalid = true
52
+ break
53
+ }
54
+ }
55
+ if tupleInvalid {
56
+ break
57
+ }
58
+ }
59
+ arrayInvalid := false
60
+ for _, array := range props.Metadata.Arrays {
61
+ if array.Type.Value.IsRequired() == false {
62
+ arrayInvalid = true
63
+ break
64
+ }
65
+ }
66
+ if tupleInvalid || arrayInvalid {
67
+ output = append(output, "JSON schema does not support undefined type in array.")
68
+ }
69
+ if len(props.Metadata.Maps) != 0 {
70
+ output = append(output, "JSON schema does not support Map type.")
71
+ }
72
+ if len(props.Metadata.Sets) != 0 {
73
+ output = append(output, "JSON schema does not support Set type.")
74
+ }
75
+ for _, native := range props.Metadata.Natives {
76
+ if nativehelpers.AtomicPredicator.Native(native.Name) == false &&
77
+ native.Name != "Date" &&
78
+ native.Name != "Blob" &&
79
+ native.Name != "File" {
80
+ output = append(output, "JSON schema does not support "+native.Name+" type.")
81
+ }
82
+ }
83
+ return output
84
84
  }
85
85
 
86
86
  func (jsonSchemasProgrammerNamespace) Write(props JsonSchemasProgrammer_IWriteProps) *shimast.Node {
87
- collection := JsonSchemasProgrammer.WriteSchemas(struct {
88
- Version string
89
- Metadatas []*nativemetadata.MetadataSchema
90
- }{
91
- Version: props.Version,
92
- Metadatas: props.Metadatas,
93
- })
94
- return nativefactories.LiteralFactory.Write(map[string]any{
95
- "version": collection.Version,
96
- "components": collection.Components,
97
- "schemas": collection.Schemas,
98
- })
87
+ collection := JsonSchemasProgrammer.WriteSchemas(struct {
88
+ Version string
89
+ Metadatas []*nativemetadata.MetadataSchema
90
+ }{
91
+ Version: props.Version,
92
+ Metadatas: props.Metadatas,
93
+ })
94
+ return nativefactories.LiteralFactory.Write(map[string]any{
95
+ "version": collection.Version,
96
+ "components": collection.Components,
97
+ "schemas": collection.Schemas,
98
+ })
99
99
  }
100
100
 
101
101
  func (jsonSchemasProgrammerNamespace) WriteSchemas(props struct {
102
- Version string
103
- Metadatas []*nativemetadata.MetadataSchema
102
+ Version string
103
+ Metadatas []*nativemetadata.MetadataSchema
104
104
  }) JsonSchemasProgrammer_IJsonSchemaCollection {
105
- if props.Version == "3.0" {
106
- return jsonSchemasProgrammer_writeV3_0(props.Metadatas)
107
- }
108
- return jsonSchemasProgrammer_writeV3_1(props.Metadatas)
105
+ if props.Version == "3.0" {
106
+ return jsonSchemasProgrammer_writeV3_0(props.Metadatas)
107
+ }
108
+ return jsonSchemasProgrammer_writeV3_1(props.Metadatas)
109
109
  }
110
110
 
111
111
  func jsonSchemasProgrammer_writeV3_0(metadataList []*nativemetadata.MetadataSchema) JsonSchemasProgrammer_IJsonSchemaCollection {
112
- collection := jsonSchemasProgrammer_writeV3_1(metadataList)
113
- return JsonSchemasProgrammer_IJsonSchemaCollection{
114
- Version: "3.0",
115
- Components: collection.Components,
116
- Schemas: collection.Schemas,
117
- }
112
+ collection := jsonSchemasProgrammer_writeV3_1(metadataList)
113
+ return JsonSchemasProgrammer_IJsonSchemaCollection{
114
+ Version: "3.0",
115
+ Components: collection.Components,
116
+ Schemas: collection.Schemas,
117
+ }
118
118
  }
119
119
 
120
120
  func jsonSchemasProgrammer_writeV3_1(metadataList []*nativemetadata.MetadataSchema) JsonSchemasProgrammer_IJsonSchemaCollection {
121
- components := &nativeiterate.OpenApi_IComponents{
122
- Schemas: map[string]nativeiterate.JsonSchema{},
123
- }
124
- generator := func(metadata *nativemetadata.MetadataSchema) nativeiterate.JsonSchema {
125
- return nativeiterate.Json_schema_station(nativeiterate.Json_schema_station_props{
126
- BlockNever: true,
127
- Components: components,
128
- Attribute: nativeiterate.JsonSchema{},
129
- Metadata: metadata,
130
- })
131
- }
132
- schemas := make([]nativeiterate.JsonSchema, 0, len(metadataList))
133
- for i, meta := range metadataList {
134
- schema := generator(meta)
135
- if schema == nil {
136
- panic(nativecontext.NewTransformerError(nativecontext.TransformerError_IProps{
137
- Code: "typia.json.schemas",
138
- Message: fmt.Sprintf("invalid type on argument - (%s, %d)", meta.GetName(), i),
139
- }))
140
- }
141
- schemas = append(schemas, schema)
142
- }
143
- return JsonSchemasProgrammer_IJsonSchemaCollection{
144
- Version: "3.1",
145
- Components: components,
146
- Schemas: schemas,
147
- }
121
+ components := &nativeiterate.OpenApi_IComponents{
122
+ Schemas: map[string]nativeiterate.JsonSchema{},
123
+ }
124
+ generator := func(metadata *nativemetadata.MetadataSchema) nativeiterate.JsonSchema {
125
+ return nativeiterate.Json_schema_station(nativeiterate.Json_schema_station_props{
126
+ BlockNever: true,
127
+ Components: components,
128
+ Attribute: nativeiterate.JsonSchema{},
129
+ Metadata: metadata,
130
+ })
131
+ }
132
+ schemas := make([]nativeiterate.JsonSchema, 0, len(metadataList))
133
+ for i, meta := range metadataList {
134
+ schema := generator(meta)
135
+ if schema == nil {
136
+ panic(nativecontext.NewTransformerError(nativecontext.TransformerError_IProps{
137
+ Code: "typia.json.schemas",
138
+ Message: fmt.Sprintf("invalid type on argument - (%s, %d)", meta.GetName(), i),
139
+ }))
140
+ }
141
+ schemas = append(schemas, schema)
142
+ }
143
+ return JsonSchemasProgrammer_IJsonSchemaCollection{
144
+ Version: "3.1",
145
+ Components: components,
146
+ Schemas: schemas,
147
+ }
148
148
  }