typia 7.0.0-dev.20241005 → 7.0.0-dev.20241007

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (630) hide show
  1. package/lib/IRandomGenerator.d.ts +17 -21
  2. package/lib/factories/ExpressionFactory.js +2 -2
  3. package/lib/factories/ExpressionFactory.js.map +1 -1
  4. package/lib/factories/LiteralFactory.d.ts +1 -1
  5. package/lib/factories/LiteralFactory.js +20 -17
  6. package/lib/factories/LiteralFactory.js.map +1 -1
  7. package/lib/factories/MetadataCommentTagFactory.js +28 -6
  8. package/lib/factories/MetadataCommentTagFactory.js.map +1 -1
  9. package/lib/index.mjs +184 -1437
  10. package/lib/index.mjs.map +1 -1
  11. package/lib/internal/$randomArray.d.ts +1 -1
  12. package/lib/internal/$randomArray.js +1 -0
  13. package/lib/internal/$randomArray.js.map +1 -1
  14. package/lib/internal/$randomBigint.d.ts +1 -1
  15. package/lib/internal/$randomBigint.js +1 -6
  16. package/lib/internal/$randomBigint.js.map +1 -1
  17. package/lib/internal/$randomFormatByte.d.ts +1 -0
  18. package/lib/internal/$randomFormatByte.js +7 -0
  19. package/lib/internal/$randomFormatByte.js.map +1 -0
  20. package/lib/internal/$randomFormatDate.js +1 -0
  21. package/lib/internal/$randomFormatDate.js.map +1 -1
  22. package/lib/internal/$randomFormatDatetime.js +1 -0
  23. package/lib/internal/$randomFormatDatetime.js.map +1 -1
  24. package/lib/internal/$randomFormatDuration.js +1 -0
  25. package/lib/internal/$randomFormatDuration.js.map +1 -1
  26. package/lib/internal/$randomFormatIpv4.js +1 -0
  27. package/lib/internal/$randomFormatIpv4.js.map +1 -1
  28. package/lib/internal/$randomFormatIpv6.js +1 -0
  29. package/lib/internal/$randomFormatIpv6.js.map +1 -1
  30. package/lib/internal/$randomFormatRelativeJsonPointer.js +5 -5
  31. package/lib/internal/$randomFormatRelativeJsonPointer.js.map +1 -1
  32. package/lib/internal/$randomFormatTime.js +2 -1
  33. package/lib/internal/$randomFormatTime.js.map +1 -1
  34. package/lib/internal/$randomFormatUuid.d.ts +1 -0
  35. package/lib/internal/{$randomUuid.js → $randomFormatUuid.js} +4 -4
  36. package/lib/internal/$randomFormatUuid.js.map +1 -0
  37. package/lib/internal/$randomInteger.d.ts +1 -1
  38. package/lib/internal/$randomInteger.js +7 -4
  39. package/lib/internal/$randomInteger.js.map +1 -1
  40. package/lib/internal/$randomNumber.d.ts +1 -1
  41. package/lib/internal/$randomNumber.js +14 -11
  42. package/lib/internal/$randomNumber.js.map +1 -1
  43. package/lib/internal/$randomPick.js +1 -0
  44. package/lib/internal/$randomPick.js.map +1 -1
  45. package/lib/internal/$randomString.d.ts +1 -1
  46. package/lib/internal/$randomString.js +4 -1
  47. package/lib/internal/$randomString.js.map +1 -1
  48. package/lib/llm.d.ts +2 -4
  49. package/lib/llm.js +1 -28
  50. package/lib/llm.js.map +1 -1
  51. package/lib/module.d.ts +4 -8
  52. package/lib/module.js +3 -7
  53. package/lib/module.js.map +1 -1
  54. package/lib/programmers/FeatureProgrammer.js +1 -1
  55. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  56. package/lib/programmers/RandomProgrammer.js +281 -276
  57. package/lib/programmers/RandomProgrammer.js.map +1 -1
  58. package/lib/programmers/helpers/FunctionProgrammer.d.ts +1 -8
  59. package/lib/programmers/helpers/FunctionProgrammer.js +2 -24
  60. package/lib/programmers/helpers/FunctionProgrammer.js.map +1 -1
  61. package/lib/programmers/helpers/RandomJoiner.d.ts +6 -11
  62. package/lib/programmers/helpers/RandomJoiner.js +68 -41
  63. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  64. package/lib/programmers/helpers/disable_function_programmer_declare.js +1 -4
  65. package/lib/programmers/helpers/disable_function_programmer_declare.js.map +1 -1
  66. package/lib/transformers/features/json/JsonApplicationTransformer.js +1 -1
  67. package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
  68. package/lib/transformers/features/llm/LlmApplicationTransformer.js +2 -2
  69. package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -1
  70. package/lib/transformers/features/llm/LlmSchemaTransformer.js +1 -1
  71. package/lib/transformers/features/llm/LlmSchemaTransformer.js.map +1 -1
  72. package/lib/transformers/features/reflect/ReflectMetadataTransformer.js +1 -1
  73. package/lib/transformers/features/reflect/ReflectMetadataTransformer.js.map +1 -1
  74. package/package.json +1 -1
  75. package/src/CamelCase.ts +75 -75
  76. package/src/IRandomGenerator.ts +11 -27
  77. package/src/PascalCase.ts +71 -71
  78. package/src/Primitive.ts +92 -92
  79. package/src/Resolved.ts +74 -74
  80. package/src/SnakeCase.ts +126 -126
  81. package/src/executable/TypiaGenerateWizard.ts +83 -83
  82. package/src/executable/TypiaPatchWizard.ts +42 -42
  83. package/src/executable/TypiaSetupWizard.ts +174 -174
  84. package/src/executable/setup/ArgumentParser.ts +42 -42
  85. package/src/executable/setup/CommandExecutor.ts +8 -8
  86. package/src/executable/setup/FileRetriever.ts +19 -19
  87. package/src/executable/setup/PackageManager.ts +87 -87
  88. package/src/executable/setup/PluginConfigurator.ts +69 -69
  89. package/src/executable/typia.ts +55 -55
  90. package/src/factories/CommentFactory.ts +79 -79
  91. package/src/factories/ExpressionFactory.ts +164 -164
  92. package/src/factories/IdentifierFactory.ts +89 -89
  93. package/src/factories/JsonMetadataFactory.ts +63 -63
  94. package/src/factories/LiteralFactory.ts +18 -15
  95. package/src/factories/MetadataCollection.ts +278 -278
  96. package/src/factories/MetadataCommentTagFactory.ts +650 -622
  97. package/src/factories/MetadataFactory.ts +400 -400
  98. package/src/factories/MetadataTypeTagFactory.ts +385 -385
  99. package/src/factories/MetadataTypeTagSchemaFactory.ts +82 -82
  100. package/src/factories/NumericRangeFactory.ts +72 -72
  101. package/src/factories/ProtobufFactory.ts +275 -275
  102. package/src/factories/StatementFactory.ts +90 -90
  103. package/src/factories/TemplateFactory.ts +64 -64
  104. package/src/factories/TypeFactory.ts +140 -140
  105. package/src/factories/internal/metadata/IMetadataIteratorProps.ts +16 -16
  106. package/src/factories/internal/metadata/emplace_metadata_alias.ts +32 -32
  107. package/src/factories/internal/metadata/emplace_metadata_array_type.ts +39 -39
  108. package/src/factories/internal/metadata/emplace_metadata_object.ts +206 -206
  109. package/src/factories/internal/metadata/emplace_metadata_tuple.ts +56 -56
  110. package/src/factories/internal/metadata/explore_metadata.ts +30 -30
  111. package/src/factories/internal/metadata/iterate_metadata.ts +54 -54
  112. package/src/factories/internal/metadata/iterate_metadata_alias.ts +28 -28
  113. package/src/factories/internal/metadata/iterate_metadata_array.ts +63 -63
  114. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +62 -62
  115. package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +28 -28
  116. package/src/factories/internal/metadata/iterate_metadata_collection.ts +145 -145
  117. package/src/factories/internal/metadata/iterate_metadata_comment_tags.ts +32 -32
  118. package/src/factories/internal/metadata/iterate_metadata_constant.ts +76 -76
  119. package/src/factories/internal/metadata/iterate_metadata_escape.ts +49 -49
  120. package/src/factories/internal/metadata/iterate_metadata_function.ts +88 -88
  121. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +216 -216
  122. package/src/factories/internal/metadata/iterate_metadata_map.ts +52 -52
  123. package/src/factories/internal/metadata/iterate_metadata_native.ts +236 -236
  124. package/src/factories/internal/metadata/iterate_metadata_object.ts +27 -27
  125. package/src/factories/internal/metadata/iterate_metadata_set.ts +39 -39
  126. package/src/factories/internal/metadata/iterate_metadata_sort.ts +83 -83
  127. package/src/factories/internal/metadata/iterate_metadata_template.ts +42 -42
  128. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +26 -26
  129. package/src/factories/internal/metadata/iterate_metadata_union.ts +19 -19
  130. package/src/internal/$accessExpressionAsString.ts +46 -46
  131. package/src/internal/$assertGuard.ts +13 -13
  132. package/src/internal/$functionalTypeGuardErrorFactory.ts +4 -4
  133. package/src/internal/$httpFormDataReadArray.ts +4 -4
  134. package/src/internal/$httpFormDataReadBigint.ts +18 -18
  135. package/src/internal/$httpFormDataReadBlob.ts +10 -10
  136. package/src/internal/$httpFormDataReadBoolean.ts +16 -16
  137. package/src/internal/$httpFormDataReadFile.ts +10 -10
  138. package/src/internal/$httpFormDataReadNumber.ts +15 -15
  139. package/src/internal/$httpFormDataReadString.ts +10 -10
  140. package/src/internal/$httpHeaderReadBigint.ts +10 -10
  141. package/src/internal/$httpHeaderReadBoolean.ts +8 -8
  142. package/src/internal/$httpHeaderReadNumber.ts +7 -7
  143. package/src/internal/$httpParameterBigint.ts +10 -10
  144. package/src/internal/$httpParameterBoolean.ts +8 -8
  145. package/src/internal/$httpParameterNumber.ts +7 -7
  146. package/src/internal/$httpParameterString.ts +2 -2
  147. package/src/internal/$httpQueryParseURLSearchParams.ts +10 -10
  148. package/src/internal/$httpQueryReadArray.ts +4 -4
  149. package/src/internal/$httpQueryReadBigint.ts +12 -12
  150. package/src/internal/$httpQueryReadBoolean.ts +14 -14
  151. package/src/internal/$httpQueryReadNumber.ts +9 -9
  152. package/src/internal/$httpQueryReadString.ts +4 -4
  153. package/src/internal/$isBetween.ts +2 -2
  154. package/src/internal/$isBigintString.ts +8 -8
  155. package/src/internal/$jsonStringifyNumber.ts +12 -12
  156. package/src/internal/$jsonStringifyRest.ts +3 -3
  157. package/src/internal/$jsonStringifyString.ts +43 -43
  158. package/src/internal/$jsonStringifyTail.ts +2 -2
  159. package/src/internal/$llmApplicationFinalize.ts +18 -18
  160. package/src/internal/$miscCloneAny.ts +48 -48
  161. package/src/internal/$notationAny.ts +37 -37
  162. package/src/internal/$notationCamel.ts +13 -13
  163. package/src/internal/$notationPascal.ts +8 -8
  164. package/src/internal/$notationSnake.ts +43 -43
  165. package/src/internal/$randomArray.ts +21 -20
  166. package/src/internal/$randomBigint.ts +6 -15
  167. package/src/internal/$randomBoolean.ts +1 -1
  168. package/src/internal/{$randomByte.ts → $randomFormatByte.ts} +3 -3
  169. package/src/internal/$randomFormatDate.ts +18 -17
  170. package/src/internal/$randomFormatDatetime.ts +16 -15
  171. package/src/internal/$randomFormatDuration.ts +27 -26
  172. package/src/internal/$randomFormatEmail.ts +11 -11
  173. package/src/internal/$randomFormatHostname.ts +6 -6
  174. package/src/internal/$randomFormatIdnEmail.ts +3 -3
  175. package/src/internal/$randomFormatIdnHostname.ts +3 -3
  176. package/src/internal/$randomFormatIpv4.ts +11 -10
  177. package/src/internal/$randomFormatIpv6.ts +11 -10
  178. package/src/internal/$randomFormatIri.ts +3 -3
  179. package/src/internal/$randomFormatIriReference.ts +3 -3
  180. package/src/internal/$randomFormatJsonPointer.ts +7 -7
  181. package/src/internal/$randomFormatPassword.ts +8 -8
  182. package/src/internal/$randomFormatRegex.ts +4 -4
  183. package/src/internal/$randomFormatRelativeJsonPointer.ts +8 -8
  184. package/src/internal/$randomFormatTime.ts +14 -13
  185. package/src/internal/$randomFormatUri.ts +3 -3
  186. package/src/internal/$randomFormatUriReference.ts +3 -3
  187. package/src/internal/$randomFormatUriTemplate.ts +3 -3
  188. package/src/internal/$randomFormatUrl.ts +11 -11
  189. package/src/internal/{$randomUuid.ts → $randomFormatUuid.ts} +6 -6
  190. package/src/internal/$randomInteger.ts +47 -44
  191. package/src/internal/$randomNumber.ts +74 -71
  192. package/src/internal/$randomPattern.ts +10 -10
  193. package/src/internal/$randomPick.ts +9 -8
  194. package/src/internal/$randomString.ts +24 -24
  195. package/src/internal/$throwTypeGuardError.ts +5 -5
  196. package/src/internal/$validateReport.ts +13 -13
  197. package/src/internal/private/$__notationCapitalize.ts +2 -2
  198. package/src/internal/private/$__notationUnsnake.ts +24 -24
  199. package/src/json.ts +651 -651
  200. package/src/llm.ts +178 -186
  201. package/src/module.ts +933 -945
  202. package/src/programmers/AssertProgrammer.ts +456 -456
  203. package/src/programmers/CheckerProgrammer.ts +1610 -1610
  204. package/src/programmers/FeatureProgrammer.ts +616 -616
  205. package/src/programmers/ImportProgrammer.ts +109 -109
  206. package/src/programmers/IsProgrammer.ts +273 -273
  207. package/src/programmers/RandomProgrammer.ts +393 -381
  208. package/src/programmers/TypiaProgrammer.ts +171 -171
  209. package/src/programmers/ValidateProgrammer.ts +430 -430
  210. package/src/programmers/functional/FunctionalAssertFunctionProgrammer.ts +153 -153
  211. package/src/programmers/functional/FunctionalAssertParametersProgrammer.ts +125 -125
  212. package/src/programmers/functional/FunctionalAssertReturnProgrammer.ts +115 -115
  213. package/src/programmers/functional/FunctionalIsFunctionProgrammer.ts +72 -72
  214. package/src/programmers/functional/FunctionalIsParametersProgrammer.ts +113 -113
  215. package/src/programmers/functional/FunctionalIsReturnProgrammer.ts +116 -116
  216. package/src/programmers/functional/FunctionalValidateFunctionProgrammer.ts +123 -123
  217. package/src/programmers/functional/FunctionalValidateParametersProgrammer.ts +281 -281
  218. package/src/programmers/functional/FunctionalValidateReturnProgrammer.ts +134 -134
  219. package/src/programmers/functional/internal/FunctionalGeneralProgrammer.ts +34 -34
  220. package/src/programmers/helpers/AtomicPredicator.ts +35 -35
  221. package/src/programmers/helpers/CloneJoiner.ts +143 -143
  222. package/src/programmers/helpers/FunctionProgrammer.ts +67 -101
  223. package/src/programmers/helpers/HttpMetadataUtil.ts +21 -21
  224. package/src/programmers/helpers/NotationJoiner.ts +144 -144
  225. package/src/programmers/helpers/ProtobufUtil.ts +125 -125
  226. package/src/programmers/helpers/PruneJoiner.ts +148 -148
  227. package/src/programmers/helpers/RandomJoiner.ts +168 -162
  228. package/src/programmers/helpers/StringifyJoinder.ts +115 -115
  229. package/src/programmers/helpers/StringifyPredicator.ts +13 -13
  230. package/src/programmers/helpers/UnionExplorer.ts +372 -372
  231. package/src/programmers/helpers/UnionPredicator.ts +77 -77
  232. package/src/programmers/helpers/disable_function_programmer_declare.ts +1 -4
  233. package/src/programmers/http/HttpAssertFormDataProgrammer.ts +96 -96
  234. package/src/programmers/http/HttpAssertHeadersProgrammer.ts +96 -96
  235. package/src/programmers/http/HttpAssertQueryProgrammer.ts +102 -102
  236. package/src/programmers/http/HttpFormDataProgrammer.ts +308 -308
  237. package/src/programmers/http/HttpHeadersProgrammer.ts +404 -404
  238. package/src/programmers/http/HttpIsFormDataProgrammer.ts +108 -108
  239. package/src/programmers/http/HttpIsHeadersProgrammer.ts +108 -108
  240. package/src/programmers/http/HttpIsQueryProgrammer.ts +114 -114
  241. package/src/programmers/http/HttpParameterProgrammer.ts +115 -115
  242. package/src/programmers/http/HttpQueryProgrammer.ts +333 -333
  243. package/src/programmers/http/HttpValidateFormDataProgrammer.ts +90 -90
  244. package/src/programmers/http/HttpValidateHeadersProgrammer.ts +90 -90
  245. package/src/programmers/http/HttpValidateQueryProgrammer.ts +96 -96
  246. package/src/programmers/internal/application_array.ts +56 -56
  247. package/src/programmers/internal/application_bigint.ts +25 -25
  248. package/src/programmers/internal/application_boolean.ts +25 -25
  249. package/src/programmers/internal/application_description.ts +12 -12
  250. package/src/programmers/internal/application_escaped.ts +96 -96
  251. package/src/programmers/internal/application_number.ts +25 -25
  252. package/src/programmers/internal/application_plugin.ts +19 -19
  253. package/src/programmers/internal/application_string.ts +25 -25
  254. package/src/programmers/internal/application_templates.ts +64 -64
  255. package/src/programmers/internal/application_title.ts +20 -20
  256. package/src/programmers/internal/application_union_discriminator.ts +35 -35
  257. package/src/programmers/internal/application_v30_alias.ts +59 -59
  258. package/src/programmers/internal/application_v30_native.ts +29 -29
  259. package/src/programmers/internal/application_v30_object.ts +165 -165
  260. package/src/programmers/internal/application_v30_schema.ts +220 -220
  261. package/src/programmers/internal/application_v30_tuple.ts +33 -33
  262. package/src/programmers/internal/application_v31_alias.ts +47 -47
  263. package/src/programmers/internal/application_v31_constant.ts +29 -29
  264. package/src/programmers/internal/application_v31_native.ts +25 -25
  265. package/src/programmers/internal/application_v31_object.ts +147 -147
  266. package/src/programmers/internal/application_v31_schema.ts +215 -215
  267. package/src/programmers/internal/application_v31_tuple.ts +22 -22
  268. package/src/programmers/internal/check_array_length.ts +46 -46
  269. package/src/programmers/internal/check_bigint.ts +49 -49
  270. package/src/programmers/internal/check_dynamic_key.ts +201 -201
  271. package/src/programmers/internal/check_dynamic_properties.ts +208 -208
  272. package/src/programmers/internal/check_everything.ts +23 -23
  273. package/src/programmers/internal/check_native.ts +27 -27
  274. package/src/programmers/internal/check_number.ts +111 -111
  275. package/src/programmers/internal/check_object.ts +75 -75
  276. package/src/programmers/internal/check_string.ts +49 -49
  277. package/src/programmers/internal/check_template.ts +48 -48
  278. package/src/programmers/internal/check_union_array_like.ts +334 -334
  279. package/src/programmers/internal/decode_union_object.ts +116 -116
  280. package/src/programmers/internal/feature_object_entries.ts +61 -61
  281. package/src/programmers/internal/llm_schema_array.ts +22 -22
  282. package/src/programmers/internal/llm_schema_escaped.ts +84 -84
  283. package/src/programmers/internal/llm_schema_native.ts +17 -17
  284. package/src/programmers/internal/llm_schema_object.ts +132 -132
  285. package/src/programmers/internal/llm_schema_station.ts +190 -190
  286. package/src/programmers/internal/llm_schema_tuple.ts +31 -31
  287. package/src/programmers/internal/metadata_to_pattern.ts +42 -42
  288. package/src/programmers/internal/postfix_of_tuple.ts +5 -5
  289. package/src/programmers/internal/prune_object_properties.ts +63 -63
  290. package/src/programmers/internal/stringify_dynamic_properties.ts +162 -162
  291. package/src/programmers/internal/stringify_regular_properties.ts +81 -81
  292. package/src/programmers/internal/template_to_pattern.ts +23 -23
  293. package/src/programmers/internal/wrap_metadata_rest_tuple.ts +23 -23
  294. package/src/programmers/json/JsonApplicationProgrammer.ts +92 -92
  295. package/src/programmers/json/JsonAssertParseProgrammer.ts +104 -104
  296. package/src/programmers/json/JsonAssertStringifyProgrammer.ts +112 -112
  297. package/src/programmers/json/JsonIsParseProgrammer.ts +118 -118
  298. package/src/programmers/json/JsonIsStringifyProgrammer.ts +108 -108
  299. package/src/programmers/json/JsonStringifyProgrammer.ts +1124 -1124
  300. package/src/programmers/json/JsonValidateParseProgrammer.ts +95 -95
  301. package/src/programmers/json/JsonValidateStringifyProgrammer.ts +119 -119
  302. package/src/programmers/llm/LlmApplicationProgrammer.ts +235 -235
  303. package/src/programmers/llm/LlmSchemaProgrammer.ts +51 -51
  304. package/src/programmers/misc/MiscAssertCloneProgrammer.ts +92 -92
  305. package/src/programmers/misc/MiscAssertPruneProgrammer.ts +113 -113
  306. package/src/programmers/misc/MiscCloneProgrammer.ts +1029 -1029
  307. package/src/programmers/misc/MiscIsCloneProgrammer.ts +99 -99
  308. package/src/programmers/misc/MiscIsPruneProgrammer.ts +97 -97
  309. package/src/programmers/misc/MiscLiteralsProgrammer.ts +80 -80
  310. package/src/programmers/misc/MiscPruneProgrammer.ts +725 -725
  311. package/src/programmers/misc/MiscValidateCloneProgrammer.ts +109 -109
  312. package/src/programmers/misc/MiscValidatePruneProgrammer.ts +109 -109
  313. package/src/programmers/notations/NotationAssertGeneralProgrammer.ts +98 -98
  314. package/src/programmers/notations/NotationGeneralProgrammer.ts +973 -973
  315. package/src/programmers/notations/NotationIsGeneralProgrammer.ts +105 -105
  316. package/src/programmers/notations/NotationValidateGeneralProgrammer.ts +117 -117
  317. package/src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts +95 -95
  318. package/src/programmers/protobuf/ProtobufAssertEncodeProgrammer.ts +99 -99
  319. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +711 -711
  320. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +1019 -1019
  321. package/src/programmers/protobuf/ProtobufIsDecodeProgrammer.ts +109 -109
  322. package/src/programmers/protobuf/ProtobufIsEncodeProgrammer.ts +98 -98
  323. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +201 -201
  324. package/src/programmers/protobuf/ProtobufValidateDecodeProgrammer.ts +90 -90
  325. package/src/programmers/protobuf/ProtobufValidateEncodeProgrammer.ts +114 -114
  326. package/src/protobuf.ts +868 -868
  327. package/src/schemas/json/IJsonApplication.ts +22 -22
  328. package/src/schemas/metadata/IMetadata.ts +36 -36
  329. package/src/schemas/metadata/IMetadataConstantValue.ts +11 -11
  330. package/src/schemas/metadata/IMetadataFunction.ts +8 -8
  331. package/src/schemas/metadata/IMetadataParameter.ts +9 -9
  332. package/src/schemas/metadata/IMetadataTemplate.ts +7 -7
  333. package/src/schemas/metadata/Metadata.ts +616 -616
  334. package/src/schemas/metadata/MetadataAtomic.ts +87 -87
  335. package/src/schemas/metadata/MetadataConstantValue.ts +62 -62
  336. package/src/schemas/metadata/MetadataFunction.ts +49 -49
  337. package/src/schemas/metadata/MetadataObject.ts +139 -139
  338. package/src/schemas/metadata/MetadataParameter.ts +50 -50
  339. package/src/tags/Constant.ts +15 -15
  340. package/src/tags/Default.ts +22 -22
  341. package/src/tags/Example.ts +17 -17
  342. package/src/tags/Examples.ts +16 -16
  343. package/src/tags/ExclusiveMaximum.ts +25 -25
  344. package/src/tags/ExclusiveMinimum.ts +25 -25
  345. package/src/tags/JsonSchemaPlugin.ts +8 -8
  346. package/src/tags/Maximum.ts +19 -19
  347. package/src/tags/Minimum.ts +19 -19
  348. package/src/tags/MultipleOf.ts +21 -21
  349. package/src/tags/Pattern.ts +31 -31
  350. package/src/tags/Type.ts +32 -32
  351. package/src/tags/index.ts +20 -20
  352. package/src/transform.ts +35 -35
  353. package/src/transformers/CallExpressionTransformer.ts +540 -540
  354. package/src/transformers/FileTransformer.ts +120 -120
  355. package/src/transformers/IProgrammerProps.ts +11 -11
  356. package/src/transformers/ITransformProps.ts +9 -9
  357. package/src/transformers/ITypiaContext.ts +18 -18
  358. package/src/transformers/NodeTransformer.ts +17 -17
  359. package/src/transformers/TransformerError.ts +59 -59
  360. package/src/transformers/features/AssertTransformer.ts +24 -24
  361. package/src/transformers/features/CreateAssertTransformer.ts +24 -24
  362. package/src/transformers/features/CreateIsTransformer.ts +18 -18
  363. package/src/transformers/features/CreateRandomTransformer.ts +43 -43
  364. package/src/transformers/features/CreateValidateTransformer.ts +18 -18
  365. package/src/transformers/features/IsTransformer.ts +18 -18
  366. package/src/transformers/features/RandomTransformer.ts +41 -41
  367. package/src/transformers/features/ValidateTransformer.ts +18 -18
  368. package/src/transformers/features/functional/FunctionalGenericTransformer.ts +57 -57
  369. package/src/transformers/features/http/CreateHttpAssertFormDataTransformer.ts +13 -13
  370. package/src/transformers/features/http/CreateHttpAssertHeadersTransformer.ts +13 -13
  371. package/src/transformers/features/http/CreateHttpAssertQueryTransformer.ts +13 -13
  372. package/src/transformers/features/http/CreateHttpFormDataTransformer.ts +13 -13
  373. package/src/transformers/features/http/CreateHttpHeadersTransformer.ts +13 -13
  374. package/src/transformers/features/http/CreateHttpIsFormDataTransformer.ts +13 -13
  375. package/src/transformers/features/http/CreateHttpIsHeadersTransformer.ts +13 -13
  376. package/src/transformers/features/http/CreateHttpIsQueryTransformer.ts +13 -13
  377. package/src/transformers/features/http/CreateHttpParameterTransformer.ts +13 -13
  378. package/src/transformers/features/http/CreateHttpQueryTransformer.ts +13 -13
  379. package/src/transformers/features/http/CreateHttpValidateFormDataTransformer.ts +13 -13
  380. package/src/transformers/features/http/CreateHttpValidateHeadersTransformer.ts +13 -13
  381. package/src/transformers/features/http/CreateHttpValidateQueryTransformer.ts +13 -13
  382. package/src/transformers/features/http/HttpAssertFormDataTransformer.ts +13 -13
  383. package/src/transformers/features/http/HttpAssertHeadersTransformer.ts +13 -13
  384. package/src/transformers/features/http/HttpAssertQueryTransformer.ts +13 -13
  385. package/src/transformers/features/http/HttpFormDataTransformer.ts +13 -13
  386. package/src/transformers/features/http/HttpHeadersTransformer.ts +13 -13
  387. package/src/transformers/features/http/HttpIsFormDataTransformer.ts +13 -13
  388. package/src/transformers/features/http/HttpIsHeadersTransformer.ts +13 -13
  389. package/src/transformers/features/http/HttpIsQueryTransformer.ts +13 -13
  390. package/src/transformers/features/http/HttpParameterTransformer.ts +13 -13
  391. package/src/transformers/features/http/HttpQueryTransformer.ts +13 -13
  392. package/src/transformers/features/http/HttpValidateFormDataTransformer.ts +13 -13
  393. package/src/transformers/features/http/HttpValidateHeadersTransformer.ts +13 -13
  394. package/src/transformers/features/http/HttpValidateQueryTransformer.ts +13 -13
  395. package/src/transformers/features/json/JsonApplicationTransformer.ts +130 -130
  396. package/src/transformers/features/json/JsonAssertParseTransformer.ts +13 -13
  397. package/src/transformers/features/json/JsonAssertStringifyTransformer.ts +13 -13
  398. package/src/transformers/features/json/JsonCreateAssertParseTransformer.ts +13 -13
  399. package/src/transformers/features/json/JsonCreateAssertStringifyTransformer.ts +13 -13
  400. package/src/transformers/features/json/JsonCreateIsParseTransformer.ts +13 -13
  401. package/src/transformers/features/json/JsonCreateIsStringifyTransformer.ts +13 -13
  402. package/src/transformers/features/json/JsonCreateStringifyTransformer.ts +13 -13
  403. package/src/transformers/features/json/JsonCreateValidateParseTransformer.ts +13 -13
  404. package/src/transformers/features/json/JsonCreateValidateStringifyProgrammer.ts +13 -13
  405. package/src/transformers/features/json/JsonIsParseTransformer.ts +13 -13
  406. package/src/transformers/features/json/JsonIsStringifyTransformer.ts +13 -13
  407. package/src/transformers/features/json/JsonStringifyTransformer.ts +13 -13
  408. package/src/transformers/features/json/JsonValidateParseTransformer.ts +13 -13
  409. package/src/transformers/features/json/JsonValidateStringifyTransformer.ts +13 -13
  410. package/src/transformers/features/llm/LlmApplicationTransformer.ts +86 -86
  411. package/src/transformers/features/llm/LlmSchemaTransformer.ts +59 -59
  412. package/src/transformers/features/misc/MiscAssertCloneTransformer.ts +13 -13
  413. package/src/transformers/features/misc/MiscAssertPruneTransformer.ts +13 -13
  414. package/src/transformers/features/misc/MiscCloneTransformer.ts +13 -13
  415. package/src/transformers/features/misc/MiscCreateAssertCloneTransformer.ts +13 -13
  416. package/src/transformers/features/misc/MiscCreateAssertPruneTransformer.ts +13 -13
  417. package/src/transformers/features/misc/MiscCreateCloneTransformer.ts +13 -13
  418. package/src/transformers/features/misc/MiscCreateIsCloneTransformer.ts +13 -13
  419. package/src/transformers/features/misc/MiscCreateIsPruneTransformer.ts +13 -13
  420. package/src/transformers/features/misc/MiscCreatePruneTransformer.ts +13 -13
  421. package/src/transformers/features/misc/MiscCreateValidateCloneTransformer.ts +13 -13
  422. package/src/transformers/features/misc/MiscCreateValidatePruneTransformer.ts +13 -13
  423. package/src/transformers/features/misc/MiscIsCloneTransformer.ts +13 -13
  424. package/src/transformers/features/misc/MiscIsPruneTransformer.ts +13 -13
  425. package/src/transformers/features/misc/MiscLiteralsTransformer.ts +35 -35
  426. package/src/transformers/features/misc/MiscPruneTransformer.ts +13 -13
  427. package/src/transformers/features/misc/MiscValidateCloneTransformer.ts +13 -13
  428. package/src/transformers/features/misc/MiscValidatePruneTransformer.ts +13 -13
  429. package/src/transformers/features/notations/NotationAssertGeneralTransformer.ts +20 -20
  430. package/src/transformers/features/notations/NotationCreateAssertGeneralTransformer.ts +20 -20
  431. package/src/transformers/features/notations/NotationCreateGeneralTransformer.ts +20 -20
  432. package/src/transformers/features/notations/NotationCreateIsGeneralTransformer.ts +20 -20
  433. package/src/transformers/features/notations/NotationCreateValidateGeneralTransformer.ts +20 -20
  434. package/src/transformers/features/notations/NotationGeneralTransformer.ts +18 -18
  435. package/src/transformers/features/notations/NotationIsGeneralTransformer.ts +20 -20
  436. package/src/transformers/features/notations/NotationValidateGeneralTransformer.ts +20 -20
  437. package/src/transformers/features/protobuf/ProtobufAssertDecodeTransformer.ts +13 -13
  438. package/src/transformers/features/protobuf/ProtobufAssertEncodeTransformer.ts +13 -13
  439. package/src/transformers/features/protobuf/ProtobufCreateAssertDecodeTransformer.ts +13 -13
  440. package/src/transformers/features/protobuf/ProtobufCreateAssertEncodeTransformer.ts +13 -13
  441. package/src/transformers/features/protobuf/ProtobufCreateDecodeTransformer.ts +13 -13
  442. package/src/transformers/features/protobuf/ProtobufCreateEncodeTransformer.ts +13 -13
  443. package/src/transformers/features/protobuf/ProtobufCreateIsDecodeTransformer.ts +13 -13
  444. package/src/transformers/features/protobuf/ProtobufCreateIsEncodeTransformer.ts +13 -13
  445. package/src/transformers/features/protobuf/ProtobufCreateValidateDecodeTransformer.ts +13 -13
  446. package/src/transformers/features/protobuf/ProtobufCreateValidateEncodeTransformer.ts +13 -13
  447. package/src/transformers/features/protobuf/ProtobufDecodeTransformer.ts +13 -13
  448. package/src/transformers/features/protobuf/ProtobufEncodeTransformer.ts +13 -13
  449. package/src/transformers/features/protobuf/ProtobufIsDecodeTransformer.ts +13 -13
  450. package/src/transformers/features/protobuf/ProtobufIsEncodeTransformer.ts +13 -13
  451. package/src/transformers/features/protobuf/ProtobufMessageTransformer.ts +35 -35
  452. package/src/transformers/features/protobuf/ProtobufValidateDecodeTransformer.ts +13 -13
  453. package/src/transformers/features/protobuf/ProtobufValidateEncodeTransformer.ts +13 -13
  454. package/src/transformers/features/reflect/ReflectMetadataTransformer.ts +69 -69
  455. package/src/transformers/features/reflect/ReflectNameTransformer.ts +82 -82
  456. package/src/transformers/internal/GenericTransformer.ts +101 -101
  457. package/src/typings/Equal.ts +18 -18
  458. package/src/typings/IsTuple.ts +9 -9
  459. package/src/typings/NativeClass.ts +23 -23
  460. package/src/typings/ValueOf.ts +20 -20
  461. package/src/utils/Escaper.ts +50 -50
  462. package/src/utils/MapUtil.ts +14 -14
  463. package/src/utils/NameEncoder.ts +32 -32
  464. package/src/utils/NamingConvention.ts +94 -94
  465. package/src/utils/StringUtil.ts +16 -16
  466. package/lib/functional/$FormDataReader/$FormDataReader.d.ts +0 -7
  467. package/lib/functional/$FormDataReader/$FormDataReader.js +0 -86
  468. package/lib/functional/$FormDataReader/$FormDataReader.js.map +0 -1
  469. package/lib/functional/$FormDataReader/index.d.ts +0 -1
  470. package/lib/functional/$FormDataReader/index.js +0 -28
  471. package/lib/functional/$FormDataReader/index.js.map +0 -1
  472. package/lib/functional/$HeadersReader/$HeadersReader.d.ts +0 -4
  473. package/lib/functional/$HeadersReader/$HeadersReader.js +0 -36
  474. package/lib/functional/$HeadersReader/$HeadersReader.js.map +0 -1
  475. package/lib/functional/$HeadersReader/index.d.ts +0 -1
  476. package/lib/functional/$HeadersReader/index.js +0 -28
  477. package/lib/functional/$HeadersReader/index.js.map +0 -1
  478. package/lib/functional/$ParameterReader/$ParameterReader.d.ts +0 -4
  479. package/lib/functional/$ParameterReader/$ParameterReader.js +0 -36
  480. package/lib/functional/$ParameterReader/$ParameterReader.js.map +0 -1
  481. package/lib/functional/$ParameterReader/index.d.ts +0 -1
  482. package/lib/functional/$ParameterReader/index.js +0 -28
  483. package/lib/functional/$ParameterReader/index.js.map +0 -1
  484. package/lib/functional/$ProtobufReader.d.ts +0 -35
  485. package/lib/functional/$ProtobufReader.js +0 -166
  486. package/lib/functional/$ProtobufReader.js.map +0 -1
  487. package/lib/functional/$ProtobufSizer.d.ts +0 -36
  488. package/lib/functional/$ProtobufSizer.js +0 -118
  489. package/lib/functional/$ProtobufSizer.js.map +0 -1
  490. package/lib/functional/$ProtobufWriter.d.ts +0 -45
  491. package/lib/functional/$ProtobufWriter.js +0 -104
  492. package/lib/functional/$ProtobufWriter.js.map +0 -1
  493. package/lib/functional/$QueryReader/$QueryReader.d.ts +0 -6
  494. package/lib/functional/$QueryReader/$QueryReader.js +0 -55
  495. package/lib/functional/$QueryReader/$QueryReader.js.map +0 -1
  496. package/lib/functional/$QueryReader/index.d.ts +0 -1
  497. package/lib/functional/$QueryReader/index.js +0 -28
  498. package/lib/functional/$QueryReader/index.js.map +0 -1
  499. package/lib/functional/$any.d.ts +0 -1
  500. package/lib/functional/$any.js +0 -7
  501. package/lib/functional/$any.js.map +0 -1
  502. package/lib/functional/$clone.d.ts +0 -2
  503. package/lib/functional/$clone.js +0 -100
  504. package/lib/functional/$clone.js.map +0 -1
  505. package/lib/functional/$convention.d.ts +0 -1
  506. package/lib/functional/$convention.js +0 -60
  507. package/lib/functional/$convention.js.map +0 -1
  508. package/lib/functional/$dictionary.d.ts +0 -2
  509. package/lib/functional/$dictionary.js +0 -18
  510. package/lib/functional/$dictionary.js.map +0 -1
  511. package/lib/functional/$guard.d.ts +0 -1
  512. package/lib/functional/$guard.js +0 -21
  513. package/lib/functional/$guard.js.map +0 -1
  514. package/lib/functional/$is_between.d.ts +0 -1
  515. package/lib/functional/$is_between.js +0 -8
  516. package/lib/functional/$is_between.js.map +0 -1
  517. package/lib/functional/$join.d.ts +0 -1
  518. package/lib/functional/$join.js +0 -50
  519. package/lib/functional/$join.js.map +0 -1
  520. package/lib/functional/$number.d.ts +0 -1
  521. package/lib/functional/$number.js +0 -16
  522. package/lib/functional/$number.js.map +0 -1
  523. package/lib/functional/$report.d.ts +0 -2
  524. package/lib/functional/$report.js +0 -18
  525. package/lib/functional/$report.js.map +0 -1
  526. package/lib/functional/$rest.d.ts +0 -1
  527. package/lib/functional/$rest.js +0 -8
  528. package/lib/functional/$rest.js.map +0 -1
  529. package/lib/functional/$stoll.d.ts +0 -1
  530. package/lib/functional/$stoll.js +0 -14
  531. package/lib/functional/$stoll.js.map +0 -1
  532. package/lib/functional/$string.d.ts +0 -1
  533. package/lib/functional/$string.js +0 -43
  534. package/lib/functional/$string.js.map +0 -1
  535. package/lib/functional/$strlen.d.ts +0 -1
  536. package/lib/functional/$strlen.js +0 -13
  537. package/lib/functional/$strlen.js.map +0 -1
  538. package/lib/functional/$tail.d.ts +0 -1
  539. package/lib/functional/$tail.js +0 -11
  540. package/lib/functional/$tail.js.map +0 -1
  541. package/lib/functional/$throws.d.ts +0 -2
  542. package/lib/functional/$throws.js +0 -22
  543. package/lib/functional/$throws.js.map +0 -1
  544. package/lib/functional/IProtobufWriter.d.ts +0 -15
  545. package/lib/functional/IProtobufWriter.js +0 -3
  546. package/lib/functional/IProtobufWriter.js.map +0 -1
  547. package/lib/functional/Namespace/functional.d.ts +0 -4
  548. package/lib/functional/Namespace/functional.js +0 -9
  549. package/lib/functional/Namespace/functional.js.map +0 -1
  550. package/lib/functional/Namespace/http.d.ts +0 -8
  551. package/lib/functional/Namespace/http.js +0 -16
  552. package/lib/functional/Namespace/http.js.map +0 -1
  553. package/lib/functional/Namespace/index.d.ts +0 -30
  554. package/lib/functional/Namespace/index.js +0 -85
  555. package/lib/functional/Namespace/index.js.map +0 -1
  556. package/lib/functional/Namespace/json.d.ts +0 -9
  557. package/lib/functional/Namespace/json.js +0 -23
  558. package/lib/functional/Namespace/json.js.map +0 -1
  559. package/lib/functional/Namespace/llm.d.ts +0 -4
  560. package/lib/functional/Namespace/llm.js +0 -44
  561. package/lib/functional/Namespace/llm.js.map +0 -1
  562. package/lib/functional/Namespace/misc.d.ts +0 -11
  563. package/lib/functional/Namespace/misc.js +0 -22
  564. package/lib/functional/Namespace/misc.js.map +0 -1
  565. package/lib/functional/Namespace/notations.d.ts +0 -18
  566. package/lib/functional/Namespace/notations.js +0 -26
  567. package/lib/functional/Namespace/notations.js.map +0 -1
  568. package/lib/functional/Namespace/protobuf.d.ts +0 -17
  569. package/lib/functional/Namespace/protobuf.js +0 -25
  570. package/lib/functional/Namespace/protobuf.js.map +0 -1
  571. package/lib/functional/is.d.ts +0 -1
  572. package/lib/functional/is.js +0 -14
  573. package/lib/functional/is.js.map +0 -1
  574. package/lib/internal/$randomByte.d.ts +0 -1
  575. package/lib/internal/$randomByte.js +0 -7
  576. package/lib/internal/$randomByte.js.map +0 -1
  577. package/lib/internal/$randomUuid.d.ts +0 -1
  578. package/lib/internal/$randomUuid.js.map +0 -1
  579. package/lib/programmers/helpers/RandomRanger.d.ts +0 -33
  580. package/lib/programmers/helpers/RandomRanger.js +0 -158
  581. package/lib/programmers/helpers/RandomRanger.js.map +0 -1
  582. package/lib/programmers/internal/random_custom.d.ts +0 -1
  583. package/lib/programmers/internal/random_custom.js +0 -23
  584. package/lib/programmers/internal/random_custom.js.map +0 -1
  585. package/lib/utils/RandomGenerator/RandomGenerator.d.ts +0 -31
  586. package/lib/utils/RandomGenerator/RandomGenerator.js +0 -176
  587. package/lib/utils/RandomGenerator/RandomGenerator.js.map +0 -1
  588. package/lib/utils/RandomGenerator/index.d.ts +0 -1
  589. package/lib/utils/RandomGenerator/index.js +0 -28
  590. package/lib/utils/RandomGenerator/index.js.map +0 -1
  591. package/src/functional/$FormDataReader/$FormDataReader.ts +0 -83
  592. package/src/functional/$FormDataReader/index.ts +0 -1
  593. package/src/functional/$HeadersReader/$HeadersReader.ts +0 -26
  594. package/src/functional/$HeadersReader/index.ts +0 -1
  595. package/src/functional/$ParameterReader/$ParameterReader.ts +0 -29
  596. package/src/functional/$ParameterReader/index.ts +0 -1
  597. package/src/functional/$ProtobufReader.ts +0 -194
  598. package/src/functional/$ProtobufSizer.ts +0 -144
  599. package/src/functional/$ProtobufWriter.ts +0 -145
  600. package/src/functional/$QueryReader/$QueryReader.ts +0 -46
  601. package/src/functional/$QueryReader/index.ts +0 -1
  602. package/src/functional/$any.ts +0 -3
  603. package/src/functional/$clone.ts +0 -48
  604. package/src/functional/$convention.ts +0 -37
  605. package/src/functional/$dictionary.ts +0 -22
  606. package/src/functional/$guard.ts +0 -21
  607. package/src/functional/$is_between.ts +0 -2
  608. package/src/functional/$join.ts +0 -46
  609. package/src/functional/$number.ts +0 -12
  610. package/src/functional/$report.ts +0 -13
  611. package/src/functional/$rest.ts +0 -3
  612. package/src/functional/$stoll.ts +0 -8
  613. package/src/functional/$string.ts +0 -43
  614. package/src/functional/$strlen.ts +0 -7
  615. package/src/functional/$tail.ts +0 -5
  616. package/src/functional/$throws.ts +0 -10
  617. package/src/functional/IProtobufWriter.ts +0 -18
  618. package/src/functional/Namespace/functional.ts +0 -5
  619. package/src/functional/Namespace/http.ts +0 -9
  620. package/src/functional/Namespace/index.ts +0 -75
  621. package/src/functional/Namespace/json.ts +0 -15
  622. package/src/functional/Namespace/llm.ts +0 -20
  623. package/src/functional/Namespace/misc.ts +0 -14
  624. package/src/functional/Namespace/notations.ts +0 -23
  625. package/src/functional/Namespace/protobuf.ts +0 -20
  626. package/src/functional/is.ts +0 -10
  627. package/src/programmers/helpers/RandomRanger.ts +0 -225
  628. package/src/programmers/internal/random_custom.ts +0 -39
  629. package/src/utils/RandomGenerator/RandomGenerator.ts +0 -119
  630. package/src/utils/RandomGenerator/index.ts +0 -1
package/lib/index.mjs CHANGED
@@ -1,1275 +1,3 @@
1
- function getDefaultExportFromCjs (x) {
2
- return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
3
- }
4
-
5
- var lib$1 = {exports: {}};
6
-
7
- var util$1 = {};
8
-
9
- var types$4 = {
10
- ROOT : 0,
11
- GROUP : 1,
12
- POSITION : 2,
13
- SET : 3,
14
- RANGE : 4,
15
- REPETITION : 5,
16
- REFERENCE : 6,
17
- CHAR : 7,
18
- };
19
-
20
- var sets$1 = {};
21
-
22
- const types$3 = types$4;
23
-
24
- const INTS = () => [{ type: types$3.RANGE , from: 48, to: 57 }];
25
-
26
- const WORDS = () => {
27
- return [
28
- { type: types$3.CHAR, value: 95 },
29
- { type: types$3.RANGE, from: 97, to: 122 },
30
- { type: types$3.RANGE, from: 65, to: 90 }
31
- ].concat(INTS());
32
- };
33
-
34
- const WHITESPACE = () => {
35
- return [
36
- { type: types$3.CHAR, value: 9 },
37
- { type: types$3.CHAR, value: 10 },
38
- { type: types$3.CHAR, value: 11 },
39
- { type: types$3.CHAR, value: 12 },
40
- { type: types$3.CHAR, value: 13 },
41
- { type: types$3.CHAR, value: 32 },
42
- { type: types$3.CHAR, value: 160 },
43
- { type: types$3.CHAR, value: 5760 },
44
- { type: types$3.RANGE, from: 8192, to: 8202 },
45
- { type: types$3.CHAR, value: 8232 },
46
- { type: types$3.CHAR, value: 8233 },
47
- { type: types$3.CHAR, value: 8239 },
48
- { type: types$3.CHAR, value: 8287 },
49
- { type: types$3.CHAR, value: 12288 },
50
- { type: types$3.CHAR, value: 65279 }
51
- ];
52
- };
53
-
54
- const NOTANYCHAR = () => {
55
- return [
56
- { type: types$3.CHAR, value: 10 },
57
- { type: types$3.CHAR, value: 13 },
58
- { type: types$3.CHAR, value: 8232 },
59
- { type: types$3.CHAR, value: 8233 },
60
- ];
61
- };
62
-
63
- // Predefined class objects.
64
- sets$1.words = () => ({ type: types$3.SET, set: WORDS(), not: false });
65
- sets$1.notWords = () => ({ type: types$3.SET, set: WORDS(), not: true });
66
- sets$1.ints = () => ({ type: types$3.SET, set: INTS(), not: false });
67
- sets$1.notInts = () => ({ type: types$3.SET, set: INTS(), not: true });
68
- sets$1.whitespace = () => ({ type: types$3.SET, set: WHITESPACE(), not: false });
69
- sets$1.notWhitespace = () => ({ type: types$3.SET, set: WHITESPACE(), not: true });
70
- sets$1.anyChar = () => ({ type: types$3.SET, set: NOTANYCHAR(), not: true });
71
-
72
- (function (exports) {
73
- const types = types$4;
74
- const sets = sets$1;
75
-
76
-
77
- const CTRL = '@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?';
78
- const SLSH = { '0': 0, 't': 9, 'n': 10, 'v': 11, 'f': 12, 'r': 13 };
79
-
80
- /**
81
- * Finds character representations in str and convert all to
82
- * their respective characters
83
- *
84
- * @param {String} str
85
- * @return {String}
86
- */
87
- exports.strToChars = function(str) {
88
- /* jshint maxlen: false */
89
- var chars_regex = /(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|(0?[0-7]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;
90
- str = str.replace(chars_regex, function(s, b, lbs, a16, b16, c8, dctrl, eslsh) {
91
- if (lbs) {
92
- return s;
93
- }
94
-
95
- var code = b ? 8 :
96
- a16 ? parseInt(a16, 16) :
97
- b16 ? parseInt(b16, 16) :
98
- c8 ? parseInt(c8, 8) :
99
- dctrl ? CTRL.indexOf(dctrl) :
100
- SLSH[eslsh];
101
-
102
- var c = String.fromCharCode(code);
103
-
104
- // Escape special regex characters.
105
- if (/[[\]{}^$.|?*+()]/.test(c)) {
106
- c = '\\' + c;
107
- }
108
-
109
- return c;
110
- });
111
-
112
- return str;
113
- };
114
-
115
-
116
- /**
117
- * turns class into tokens
118
- * reads str until it encounters a ] not preceeded by a \
119
- *
120
- * @param {String} str
121
- * @param {String} regexpStr
122
- * @return {Array.<Array.<Object>, Number>}
123
- */
124
- exports.tokenizeClass = (str, regexpStr) => {
125
- /* jshint maxlen: false */
126
- var tokens = [];
127
- var regexp = /\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(?:\\)?([^\]]))|(\])|(?:\\)?([^])/g;
128
- var rs, c;
129
-
130
-
131
- while ((rs = regexp.exec(str)) != null) {
132
- if (rs[1]) {
133
- tokens.push(sets.words());
134
-
135
- } else if (rs[2]) {
136
- tokens.push(sets.ints());
137
-
138
- } else if (rs[3]) {
139
- tokens.push(sets.whitespace());
140
-
141
- } else if (rs[4]) {
142
- tokens.push(sets.notWords());
143
-
144
- } else if (rs[5]) {
145
- tokens.push(sets.notInts());
146
-
147
- } else if (rs[6]) {
148
- tokens.push(sets.notWhitespace());
149
-
150
- } else if (rs[7]) {
151
- tokens.push({
152
- type: types.RANGE,
153
- from: (rs[8] || rs[9]).charCodeAt(0),
154
- to: rs[10].charCodeAt(0),
155
- });
156
-
157
- } else if ((c = rs[12])) {
158
- tokens.push({
159
- type: types.CHAR,
160
- value: c.charCodeAt(0),
161
- });
162
-
163
- } else {
164
- return [tokens, regexp.lastIndex];
165
- }
166
- }
167
-
168
- exports.error(regexpStr, 'Unterminated character class');
169
- };
170
-
171
-
172
- /**
173
- * Shortcut to throw errors.
174
- *
175
- * @param {String} regexp
176
- * @param {String} msg
177
- */
178
- exports.error = (regexp, msg) => {
179
- throw new SyntaxError('Invalid regular expression: /' + regexp + '/: ' + msg);
180
- };
181
- } (util$1));
182
-
183
- var positions$1 = {};
184
-
185
- const types$2 = types$4;
186
- positions$1.wordBoundary = () => ({ type: types$2.POSITION, value: 'b' });
187
- positions$1.nonWordBoundary = () => ({ type: types$2.POSITION, value: 'B' });
188
- positions$1.begin = () => ({ type: types$2.POSITION, value: '^' });
189
- positions$1.end = () => ({ type: types$2.POSITION, value: '$' });
190
-
191
- const util = util$1;
192
- const types$1 = types$4;
193
- const sets = sets$1;
194
- const positions = positions$1;
195
-
196
-
197
- lib$1.exports = (regexpStr) => {
198
- var i = 0, l, c,
199
- start = { type: types$1.ROOT, stack: []},
200
-
201
- // Keep track of last clause/group and stack.
202
- lastGroup = start,
203
- last = start.stack,
204
- groupStack = [];
205
-
206
-
207
- var repeatErr = (i) => {
208
- util.error(regexpStr, `Nothing to repeat at column ${i - 1}`);
209
- };
210
-
211
- // Decode a few escaped characters.
212
- var str = util.strToChars(regexpStr);
213
- l = str.length;
214
-
215
- // Iterate through each character in string.
216
- while (i < l) {
217
- c = str[i++];
218
-
219
- switch (c) {
220
- // Handle escaped characters, inclues a few sets.
221
- case '\\':
222
- c = str[i++];
223
-
224
- switch (c) {
225
- case 'b':
226
- last.push(positions.wordBoundary());
227
- break;
228
-
229
- case 'B':
230
- last.push(positions.nonWordBoundary());
231
- break;
232
-
233
- case 'w':
234
- last.push(sets.words());
235
- break;
236
-
237
- case 'W':
238
- last.push(sets.notWords());
239
- break;
240
-
241
- case 'd':
242
- last.push(sets.ints());
243
- break;
244
-
245
- case 'D':
246
- last.push(sets.notInts());
247
- break;
248
-
249
- case 's':
250
- last.push(sets.whitespace());
251
- break;
252
-
253
- case 'S':
254
- last.push(sets.notWhitespace());
255
- break;
256
-
257
- default:
258
- // Check if c is integer.
259
- // In which case it's a reference.
260
- if (/\d/.test(c)) {
261
- last.push({ type: types$1.REFERENCE, value: parseInt(c, 10) });
262
-
263
- // Escaped character.
264
- } else {
265
- last.push({ type: types$1.CHAR, value: c.charCodeAt(0) });
266
- }
267
- }
268
-
269
- break;
270
-
271
-
272
- // Positionals.
273
- case '^':
274
- last.push(positions.begin());
275
- break;
276
-
277
- case '$':
278
- last.push(positions.end());
279
- break;
280
-
281
-
282
- // Handle custom sets.
283
- case '[':
284
- // Check if this class is 'anti' i.e. [^abc].
285
- var not;
286
- if (str[i] === '^') {
287
- not = true;
288
- i++;
289
- } else {
290
- not = false;
291
- }
292
-
293
- // Get all the characters in class.
294
- var classTokens = util.tokenizeClass(str.slice(i), regexpStr);
295
-
296
- // Increase index by length of class.
297
- i += classTokens[1];
298
- last.push({
299
- type: types$1.SET,
300
- set: classTokens[0],
301
- not,
302
- });
303
-
304
- break;
305
-
306
-
307
- // Class of any character except \n.
308
- case '.':
309
- last.push(sets.anyChar());
310
- break;
311
-
312
-
313
- // Push group onto stack.
314
- case '(':
315
- // Create group.
316
- var group = {
317
- type: types$1.GROUP,
318
- stack: [],
319
- remember: true,
320
- };
321
-
322
- c = str[i];
323
-
324
- // If if this is a special kind of group.
325
- if (c === '?') {
326
- c = str[i + 1];
327
- i += 2;
328
-
329
- // Match if followed by.
330
- if (c === '=') {
331
- group.followedBy = true;
332
-
333
- // Match if not followed by.
334
- } else if (c === '!') {
335
- group.notFollowedBy = true;
336
-
337
- } else if (c !== ':') {
338
- util.error(regexpStr,
339
- `Invalid group, character '${c}'` +
340
- ` after '?' at column ${i - 1}`);
341
- }
342
-
343
- group.remember = false;
344
- }
345
-
346
- // Insert subgroup into current group stack.
347
- last.push(group);
348
-
349
- // Remember the current group for when the group closes.
350
- groupStack.push(lastGroup);
351
-
352
- // Make this new group the current group.
353
- lastGroup = group;
354
- last = group.stack;
355
- break;
356
-
357
-
358
- // Pop group out of stack.
359
- case ')':
360
- if (groupStack.length === 0) {
361
- util.error(regexpStr, `Unmatched ) at column ${i - 1}`);
362
- }
363
- lastGroup = groupStack.pop();
364
-
365
- // Check if this group has a PIPE.
366
- // To get back the correct last stack.
367
- last = lastGroup.options ?
368
- lastGroup.options[lastGroup.options.length - 1] : lastGroup.stack;
369
- break;
370
-
371
-
372
- // Use pipe character to give more choices.
373
- case '|':
374
- // Create array where options are if this is the first PIPE
375
- // in this clause.
376
- if (!lastGroup.options) {
377
- lastGroup.options = [lastGroup.stack];
378
- delete lastGroup.stack;
379
- }
380
-
381
- // Create a new stack and add to options for rest of clause.
382
- var stack = [];
383
- lastGroup.options.push(stack);
384
- last = stack;
385
- break;
386
-
387
-
388
- // Repetition.
389
- // For every repetition, remove last element from last stack
390
- // then insert back a RANGE object.
391
- // This design is chosen because there could be more than
392
- // one repetition symbols in a regex i.e. `a?+{2,3}`.
393
- case '{':
394
- var rs = /^(\d+)(,(\d+)?)?\}/.exec(str.slice(i)), min, max;
395
- if (rs !== null) {
396
- if (last.length === 0) {
397
- repeatErr(i);
398
- }
399
- min = parseInt(rs[1], 10);
400
- max = rs[2] ? rs[3] ? parseInt(rs[3], 10) : Infinity : min;
401
- i += rs[0].length;
402
-
403
- last.push({
404
- type: types$1.REPETITION,
405
- min,
406
- max,
407
- value: last.pop(),
408
- });
409
- } else {
410
- last.push({
411
- type: types$1.CHAR,
412
- value: 123,
413
- });
414
- }
415
- break;
416
-
417
- case '?':
418
- if (last.length === 0) {
419
- repeatErr(i);
420
- }
421
- last.push({
422
- type: types$1.REPETITION,
423
- min: 0,
424
- max: 1,
425
- value: last.pop(),
426
- });
427
- break;
428
-
429
- case '+':
430
- if (last.length === 0) {
431
- repeatErr(i);
432
- }
433
- last.push({
434
- type: types$1.REPETITION,
435
- min: 1,
436
- max: Infinity,
437
- value: last.pop(),
438
- });
439
- break;
440
-
441
- case '*':
442
- if (last.length === 0) {
443
- repeatErr(i);
444
- }
445
- last.push({
446
- type: types$1.REPETITION,
447
- min: 0,
448
- max: Infinity,
449
- value: last.pop(),
450
- });
451
- break;
452
-
453
-
454
- // Default is a character that is not `\[](){}?+*^$`.
455
- default:
456
- last.push({
457
- type: types$1.CHAR,
458
- value: c.charCodeAt(0),
459
- });
460
- }
461
-
462
- }
463
-
464
- // Check if any groups have not been closed.
465
- if (groupStack.length !== 0) {
466
- util.error(regexpStr, 'Unterminated group');
467
- }
468
-
469
- return start;
470
- };
471
-
472
- lib$1.exports.types = types$1;
473
-
474
- var libExports = lib$1.exports;
475
-
476
- /* eslint indent: 4 */
477
-
478
-
479
- // Private helper class
480
- class SubRange {
481
- constructor(low, high) {
482
- this.low = low;
483
- this.high = high;
484
- this.length = 1 + high - low;
485
- }
486
-
487
- overlaps(range) {
488
- return !(this.high < range.low || this.low > range.high);
489
- }
490
-
491
- touches(range) {
492
- return !(this.high + 1 < range.low || this.low - 1 > range.high);
493
- }
494
-
495
- // Returns inclusive combination of SubRanges as a SubRange.
496
- add(range) {
497
- return new SubRange(
498
- Math.min(this.low, range.low),
499
- Math.max(this.high, range.high)
500
- );
501
- }
502
-
503
- // Returns subtraction of SubRanges as an array of SubRanges.
504
- // (There's a case where subtraction divides it in 2)
505
- subtract(range) {
506
- if (range.low <= this.low && range.high >= this.high) {
507
- return [];
508
- } else if (range.low > this.low && range.high < this.high) {
509
- return [
510
- new SubRange(this.low, range.low - 1),
511
- new SubRange(range.high + 1, this.high)
512
- ];
513
- } else if (range.low <= this.low) {
514
- return [new SubRange(range.high + 1, this.high)];
515
- } else {
516
- return [new SubRange(this.low, range.low - 1)];
517
- }
518
- }
519
-
520
- toString() {
521
- return this.low == this.high ?
522
- this.low.toString() : this.low + '-' + this.high;
523
- }
524
- }
525
-
526
-
527
- let DRange$1 = class DRange {
528
- constructor(a, b) {
529
- this.ranges = [];
530
- this.length = 0;
531
- if (a != null) this.add(a, b);
532
- }
533
-
534
- _update_length() {
535
- this.length = this.ranges.reduce((previous, range) => {
536
- return previous + range.length;
537
- }, 0);
538
- }
539
-
540
- add(a, b) {
541
- var _add = (subrange) => {
542
- var i = 0;
543
- while (i < this.ranges.length && !subrange.touches(this.ranges[i])) {
544
- i++;
545
- }
546
- var newRanges = this.ranges.slice(0, i);
547
- while (i < this.ranges.length && subrange.touches(this.ranges[i])) {
548
- subrange = subrange.add(this.ranges[i]);
549
- i++;
550
- }
551
- newRanges.push(subrange);
552
- this.ranges = newRanges.concat(this.ranges.slice(i));
553
- this._update_length();
554
- };
555
-
556
- if (a instanceof DRange) {
557
- a.ranges.forEach(_add);
558
- } else {
559
- if (b == null) b = a;
560
- _add(new SubRange(a, b));
561
- }
562
- return this;
563
- }
564
-
565
- subtract(a, b) {
566
- var _subtract = (subrange) => {
567
- var i = 0;
568
- while (i < this.ranges.length && !subrange.overlaps(this.ranges[i])) {
569
- i++;
570
- }
571
- var newRanges = this.ranges.slice(0, i);
572
- while (i < this.ranges.length && subrange.overlaps(this.ranges[i])) {
573
- newRanges = newRanges.concat(this.ranges[i].subtract(subrange));
574
- i++;
575
- }
576
- this.ranges = newRanges.concat(this.ranges.slice(i));
577
- this._update_length();
578
- };
579
-
580
- if (a instanceof DRange) {
581
- a.ranges.forEach(_subtract);
582
- } else {
583
- if (b == null) b = a;
584
- _subtract(new SubRange(a, b));
585
- }
586
- return this;
587
- }
588
-
589
- intersect(a, b) {
590
- var newRanges = [];
591
- var _intersect = (subrange) => {
592
- var i = 0;
593
- while (i < this.ranges.length && !subrange.overlaps(this.ranges[i])) {
594
- i++;
595
- }
596
- while (i < this.ranges.length && subrange.overlaps(this.ranges[i])) {
597
- var low = Math.max(this.ranges[i].low, subrange.low);
598
- var high = Math.min(this.ranges[i].high, subrange.high);
599
- newRanges.push(new SubRange(low, high));
600
- i++;
601
- }
602
- };
603
-
604
- if (a instanceof DRange) {
605
- a.ranges.forEach(_intersect);
606
- } else {
607
- if (b == null) b = a;
608
- _intersect(new SubRange(a, b));
609
- }
610
- this.ranges = newRanges;
611
- this._update_length();
612
- return this;
613
- }
614
-
615
- index(index) {
616
- var i = 0;
617
- while (i < this.ranges.length && this.ranges[i].length <= index) {
618
- index -= this.ranges[i].length;
619
- i++;
620
- }
621
- return this.ranges[i].low + index;
622
- }
623
-
624
- toString() {
625
- return '[ ' + this.ranges.join(', ') + ' ]';
626
- }
627
-
628
- clone() {
629
- return new DRange(this);
630
- }
631
-
632
- numbers() {
633
- return this.ranges.reduce((result, subrange) => {
634
- var i = subrange.low;
635
- while (i <= subrange.high) {
636
- result.push(i);
637
- i++;
638
- }
639
- return result;
640
- }, []);
641
- }
642
-
643
- subranges() {
644
- return this.ranges.map((subrange) => ({
645
- low: subrange.low,
646
- high: subrange.high,
647
- length: 1 + subrange.high - subrange.low
648
- }));
649
- }
650
- };
651
-
652
- var lib = DRange$1;
653
-
654
- const ret = libExports;
655
- const DRange = lib;
656
- const types = ret.types;
657
-
658
-
659
- var randexp = class RandExp {
660
- /**
661
- * @constructor
662
- * @param {RegExp|String} regexp
663
- * @param {String} m
664
- */
665
- constructor(regexp, m) {
666
- this._setDefaults(regexp);
667
- if (regexp instanceof RegExp) {
668
- this.ignoreCase = regexp.ignoreCase;
669
- this.multiline = regexp.multiline;
670
- regexp = regexp.source;
671
-
672
- } else if (typeof regexp === 'string') {
673
- this.ignoreCase = m && m.indexOf('i') !== -1;
674
- this.multiline = m && m.indexOf('m') !== -1;
675
- } else {
676
- throw new Error('Expected a regexp or string');
677
- }
678
-
679
- this.tokens = ret(regexp);
680
- }
681
-
682
-
683
- /**
684
- * Checks if some custom properties have been set for this regexp.
685
- *
686
- * @param {RandExp} randexp
687
- * @param {RegExp} regexp
688
- */
689
- _setDefaults(regexp) {
690
- // When a repetitional token has its max set to Infinite,
691
- // randexp won't actually generate a random amount between min and Infinite
692
- // instead it will see Infinite as min + 100.
693
- this.max = regexp.max != null ? regexp.max :
694
- RandExp.prototype.max != null ? RandExp.prototype.max : 100;
695
-
696
- // This allows expanding to include additional characters
697
- // for instance: RandExp.defaultRange.add(0, 65535);
698
- this.defaultRange = regexp.defaultRange ?
699
- regexp.defaultRange : this.defaultRange.clone();
700
-
701
- if (regexp.randInt) {
702
- this.randInt = regexp.randInt;
703
- }
704
- }
705
-
706
-
707
- /**
708
- * Generates the random string.
709
- *
710
- * @return {String}
711
- */
712
- gen() {
713
- return this._gen(this.tokens, []);
714
- }
715
-
716
-
717
- /**
718
- * Generate random string modeled after given tokens.
719
- *
720
- * @param {Object} token
721
- * @param {Array.<String>} groups
722
- * @return {String}
723
- */
724
- _gen(token, groups) {
725
- var stack, str, n, i, l;
726
-
727
- switch (token.type) {
728
- case types.ROOT:
729
- case types.GROUP:
730
- // Ignore lookaheads for now.
731
- if (token.followedBy || token.notFollowedBy) { return ''; }
732
-
733
- // Insert placeholder until group string is generated.
734
- if (token.remember && token.groupNumber === undefined) {
735
- token.groupNumber = groups.push(null) - 1;
736
- }
737
-
738
- stack = token.options ?
739
- this._randSelect(token.options) : token.stack;
740
-
741
- str = '';
742
- for (i = 0, l = stack.length; i < l; i++) {
743
- str += this._gen(stack[i], groups);
744
- }
745
-
746
- if (token.remember) {
747
- groups[token.groupNumber] = str;
748
- }
749
- return str;
750
-
751
- case types.POSITION:
752
- // Do nothing for now.
753
- return '';
754
-
755
- case types.SET:
756
- var expandedSet = this._expand(token);
757
- if (!expandedSet.length) { return ''; }
758
- return String.fromCharCode(this._randSelect(expandedSet));
759
-
760
- case types.REPETITION:
761
- // Randomly generate number between min and max.
762
- n = this.randInt(token.min,
763
- token.max === Infinity ? token.min + this.max : token.max);
764
-
765
- str = '';
766
- for (i = 0; i < n; i++) {
767
- str += this._gen(token.value, groups);
768
- }
769
-
770
- return str;
771
-
772
- case types.REFERENCE:
773
- return groups[token.value - 1] || '';
774
-
775
- case types.CHAR:
776
- var code = this.ignoreCase && this._randBool() ?
777
- this._toOtherCase(token.value) : token.value;
778
- return String.fromCharCode(code);
779
- }
780
- }
781
-
782
-
783
- /**
784
- * If code is alphabetic, converts to other case.
785
- * If not alphabetic, returns back code.
786
- *
787
- * @param {Number} code
788
- * @return {Number}
789
- */
790
- _toOtherCase(code) {
791
- return code + (97 <= code && code <= 122 ? -32 :
792
- 65 <= code && code <= 90 ? 32 : 0);
793
- }
794
-
795
-
796
- /**
797
- * Randomly returns a true or false value.
798
- *
799
- * @return {Boolean}
800
- */
801
- _randBool() {
802
- return !this.randInt(0, 1);
803
- }
804
-
805
-
806
- /**
807
- * Randomly selects and returns a value from the array.
808
- *
809
- * @param {Array.<Object>} arr
810
- * @return {Object}
811
- */
812
- _randSelect(arr) {
813
- if (arr instanceof DRange) {
814
- return arr.index(this.randInt(0, arr.length - 1));
815
- }
816
- return arr[this.randInt(0, arr.length - 1)];
817
- }
818
-
819
-
820
- /**
821
- * expands a token to a DiscontinuousRange of characters which has a
822
- * length and an index function (for random selecting)
823
- *
824
- * @param {Object} token
825
- * @return {DiscontinuousRange}
826
- */
827
- _expand(token) {
828
- if (token.type === ret.types.CHAR) {
829
- return new DRange(token.value);
830
- } else if (token.type === ret.types.RANGE) {
831
- return new DRange(token.from, token.to);
832
- } else {
833
- let drange = new DRange();
834
- for (let i = 0; i < token.set.length; i++) {
835
- let subrange = this._expand(token.set[i]);
836
- drange.add(subrange);
837
- if (this.ignoreCase) {
838
- for (let j = 0; j < subrange.length; j++) {
839
- let code = subrange.index(j);
840
- let otherCaseCode = this._toOtherCase(code);
841
- if (code !== otherCaseCode) {
842
- drange.add(otherCaseCode);
843
- }
844
- }
845
- }
846
- }
847
- if (token.not) {
848
- return this.defaultRange.clone().subtract(drange);
849
- } else {
850
- return this.defaultRange.clone().intersect(drange);
851
- }
852
- }
853
- }
854
-
855
-
856
- /**
857
- * Randomly generates and returns a number between a and b (inclusive).
858
- *
859
- * @param {Number} a
860
- * @param {Number} b
861
- * @return {Number}
862
- */
863
- randInt(a, b) {
864
- return a + Math.floor(Math.random() * (1 + b - a));
865
- }
866
-
867
-
868
- /**
869
- * Default range of characters to generate from.
870
- */
871
- get defaultRange() {
872
- return this._range = this._range || new DRange(32, 126);
873
- }
874
-
875
- set defaultRange(range) {
876
- this._range = range;
877
- }
878
-
879
-
880
- /**
881
- *
882
- * Enables use of randexp with a shorter call.
883
- *
884
- * @param {RegExp|String| regexp}
885
- * @param {String} m
886
- * @return {String}
887
- */
888
- static randexp(regexp, m) {
889
- var randexp;
890
- if(typeof regexp === 'string') {
891
- regexp = new RegExp(regexp, m);
892
- }
893
-
894
- if (regexp._randexp === undefined) {
895
- randexp = new RandExp(regexp, m);
896
- regexp._randexp = randexp;
897
- } else {
898
- randexp = regexp._randexp;
899
- randexp._setDefaults(regexp);
900
- }
901
- return randexp.gen();
902
- }
903
-
904
-
905
- /**
906
- * Enables sugary /regexp/.gen syntax.
907
- */
908
- static sugar() {
909
- /* eshint freeze:false */
910
- RegExp.prototype.gen = function() {
911
- return RandExp.randexp(this);
912
- };
913
- }
914
- };
915
-
916
- var RandExp = /*@__PURE__*/getDefaultExportFromCjs(randexp);
917
-
918
- const ALPHABETS = "abcdefghijklmnopqrstuvwxyz";
919
- /* -----------------------------------------------------------
920
- REGULAR
921
- ----------------------------------------------------------- */
922
- const boolean = () => Math.random() < 0.5;
923
- const integer = (min, max) => {
924
- min ??= 0;
925
- max ??= 100;
926
- return Math.floor(Math.random() * (max - min + 1)) + min;
927
- };
928
- const bigint = (min, max) => BigInt(integer(Number(min ?? BigInt(0)), Number(max ?? BigInt(100))));
929
- const number = (min, max) => {
930
- min ??= 0;
931
- max ??= 100;
932
- return Math.random() * (max - min) + min;
933
- };
934
- const string = (length) => new Array(length ?? integer(5, 10))
935
- .fill(0)
936
- .map(() => ALPHABETS[integer(0, ALPHABETS.length - 1)])
937
- .join("");
938
- const array = (closure, count, unique) => {
939
- count ??= length();
940
- unique ??= false;
941
- if (unique === false)
942
- return new Array(count ?? length())
943
- .fill(0)
944
- .map((_e, index) => closure(index));
945
- else {
946
- const set = new Set();
947
- while (set.size < count)
948
- set.add(closure(set.size));
949
- return Array.from(set);
950
- }
951
- };
952
- const pick = (array) => array[integer(0, array.length - 1)];
953
- const length = () => integer(0, 3);
954
- const pattern = (regex) => {
955
- const r = new RandExp(regex);
956
- for (let i = 0; i < 10; ++i) {
957
- const str = r.gen();
958
- if (regex.test(str))
959
- return str;
960
- }
961
- return r.gen();
962
- };
963
- /* -----------------------------------------------------------
964
- SECIAL FORMATS
965
- ----------------------------------------------------------- */
966
- // SPECIAL CHARACTERS
967
- const byte = () => "vt7ekz4lIoNTTS9sDQYdWKharxIFAR54+z/umIxSgUM=";
968
- const password = () => string(integer(4, 16));
969
- const regex = () => "/^(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)$/";
970
- const uuid = () => "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
971
- const r = (Math.random() * 16) | 0;
972
- const v = c === "x" ? r : (r & 0x3) | 0x8;
973
- return v.toString(16);
974
- });
975
- // ADDRESSES
976
- const email = () => `${string(10)}@${string(10)}.${string(3)}`;
977
- const hostname = () => `${string(10)}.${string(3)}`;
978
- const idnEmail = () => email();
979
- const idnHostname = () => hostname();
980
- const iri = () => url();
981
- const iriReference = () => url();
982
- const ipv4 = () => array(() => integer(0, 255), 4).join(".");
983
- const ipv6 = () => array(() => integer(0, 65535).toString(16), 8).join(":");
984
- const uri = () => url();
985
- const uriReference = () => url();
986
- const uriTemplate = () => url();
987
- const url = () => `https://${string(10)}.${string(3)}`;
988
- // TIMESTAMPS
989
- const datetime = (min, max) => new Date(number(min ?? Date.now() - 30 * DAY, max ?? Date.now() + 7 * DAY)).toISOString();
990
- const date = (min, max) => new Date(number(min ?? 0, max ?? Date.now() * 2))
991
- .toISOString()
992
- .substring(0, 10);
993
- const time = () => new Date(number(0, DAY)).toISOString().substring(11);
994
- const duration = () => {
995
- const period = durate([
996
- ["Y", integer(0, 100)],
997
- ["M", integer(0, 12)],
998
- ["D", integer(0, 31)],
999
- ]);
1000
- const time = durate([
1001
- ["H", integer(0, 24)],
1002
- ["M", integer(0, 60)],
1003
- ["S", integer(0, 60)],
1004
- ]);
1005
- if (period.length + time.length === 0)
1006
- return "PT0S";
1007
- return `P${period}${time.length ? "T" : ""}${time}`;
1008
- };
1009
- // POINTERS
1010
- const jsonPointer = () => `/components/schemas/${string(10)}`;
1011
- const relativeJsonPointer = () => `${integer(0, 10)}#`;
1012
- const DAY = 86400000;
1013
- const durate = (elements) => elements
1014
- .filter(([_unit, value]) => value !== 0)
1015
- .map(([unit, value]) => `${value}${unit}`)
1016
- .join("");
1017
-
1018
- var RandomGenerator = /*#__PURE__*/Object.freeze({
1019
- __proto__: null,
1020
- array: array,
1021
- bigint: bigint,
1022
- boolean: boolean,
1023
- byte: byte,
1024
- date: date,
1025
- datetime: datetime,
1026
- duration: duration,
1027
- email: email,
1028
- hostname: hostname,
1029
- idnEmail: idnEmail,
1030
- idnHostname: idnHostname,
1031
- integer: integer,
1032
- ipv4: ipv4,
1033
- ipv6: ipv6,
1034
- iri: iri,
1035
- iriReference: iriReference,
1036
- jsonPointer: jsonPointer,
1037
- length: length,
1038
- number: number,
1039
- password: password,
1040
- pattern: pattern,
1041
- pick: pick,
1042
- regex: regex,
1043
- relativeJsonPointer: relativeJsonPointer,
1044
- string: string,
1045
- time: time,
1046
- uri: uri,
1047
- uriReference: uriReference,
1048
- uriTemplate: uriTemplate,
1049
- url: url,
1050
- uuid: uuid
1051
- });
1052
-
1053
- class TypeGuardError extends Error {
1054
- method;
1055
- path;
1056
- expected;
1057
- value;
1058
- fake_expected_typed_value_;
1059
- constructor(props) {
1060
- // MESSAGE CONSTRUCTION
1061
- super(props.message ||
1062
- `Error on ${props.method}(): invalid type${props.path ? ` on ${props.path}` : ""}, expect to be ${props.expected}`);
1063
- // INHERITANCE POLYFILL
1064
- const proto = new.target.prototype;
1065
- if (Object.setPrototypeOf)
1066
- Object.setPrototypeOf(this, proto);
1067
- else
1068
- this.__proto__ = proto;
1069
- // ASSIGN MEMBERS
1070
- this.method = props.method;
1071
- this.path = props.path;
1072
- this.expected = props.expected;
1073
- this.value = props.value;
1074
- }
1075
- }
1076
-
1077
- var StringUtil;
1078
- (function (StringUtil) {
1079
- StringUtil.capitalize = (str) => str.length ? str[0].toUpperCase() + str.slice(1).toLowerCase() : str;
1080
- StringUtil.escapeDuplicate = (props) => props.keep.includes(props.input)
1081
- ? StringUtil.escapeDuplicate({
1082
- keep: props.keep,
1083
- input: (props.escape ?? ((str) => `_${str}`))(props.input),
1084
- })
1085
- : props.input;
1086
- })(StringUtil || (StringUtil = {}));
1087
-
1088
- var NamingConvention;
1089
- (function (NamingConvention) {
1090
- const unsnake = (props) => (str) => {
1091
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
1092
- let prefix = "";
1093
- for (let i = 0; i < str.length; i++) {
1094
- if (str[i] === "_")
1095
- prefix += "_";
1096
- else
1097
- break;
1098
- }
1099
- if (prefix.length !== 0)
1100
- str = str.substring(prefix.length);
1101
- const out = (s) => `${prefix}${s}`;
1102
- if (str.length === 0)
1103
- return out("");
1104
- const items = str.split("_").filter((s) => s.length !== 0);
1105
- return items.length === 0
1106
- ? out("")
1107
- : items.length === 1
1108
- ? out(props.plain(items[0]))
1109
- : out(items.map(props.snake).join(""));
1110
- };
1111
- function snake(str) {
1112
- if (str.length === 0)
1113
- return str;
1114
- // PREFIX
1115
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
1116
- let prefix = "";
1117
- for (let i = 0; i < str.length; i++) {
1118
- if (str[i] === "_")
1119
- prefix += "_";
1120
- else
1121
- break;
1122
- }
1123
- if (prefix.length !== 0)
1124
- str = str.substring(prefix.length);
1125
- const out = (s) => `${prefix}${s}`;
1126
- // SNAKE CASE
1127
- const items = str.split("_");
1128
- if (items.length > 1)
1129
- return out(items.map((s) => s.toLowerCase()).join("_"));
1130
- // CAMEL OR PASCAL CASE
1131
- const indexes = [];
1132
- for (let i = 0; i < str.length; i++) {
1133
- const code = str.charCodeAt(i);
1134
- if (65 <= code && code <= 90)
1135
- indexes.push(i);
1136
- }
1137
- for (let i = indexes.length - 1; i > 0; --i) {
1138
- const now = indexes[i];
1139
- const prev = indexes[i - 1];
1140
- if (now - prev === 1)
1141
- indexes.splice(i, 1);
1142
- }
1143
- if (indexes.length !== 0 && indexes[0] === 0)
1144
- indexes.splice(0, 1);
1145
- if (indexes.length === 0)
1146
- return str.toLowerCase();
1147
- let ret = "";
1148
- for (let i = 0; i < indexes.length; i++) {
1149
- const first = i === 0 ? 0 : indexes[i - 1];
1150
- const last = indexes[i];
1151
- ret += str.substring(first, last).toLowerCase();
1152
- ret += "_";
1153
- }
1154
- ret += str.substring(indexes[indexes.length - 1]).toLowerCase();
1155
- return out(ret);
1156
- }
1157
- NamingConvention.snake = snake;
1158
- function camel(str) {
1159
- return unsnake({
1160
- plain: (str) => str.length
1161
- ? str === str.toUpperCase()
1162
- ? str.toLocaleLowerCase()
1163
- : `${str[0].toLowerCase()}${str.substring(1)}`
1164
- : str,
1165
- snake: (str, i) => i === 0 ? str.toLowerCase() : StringUtil.capitalize(str.toLowerCase()),
1166
- })(str);
1167
- }
1168
- NamingConvention.camel = camel;
1169
- function pascal(str) {
1170
- return unsnake({
1171
- plain: (str) => str.length ? `${str[0].toUpperCase()}${str.substring(1)}` : str,
1172
- snake: StringUtil.capitalize,
1173
- })(str);
1174
- }
1175
- NamingConvention.pascal = pascal;
1176
- })(NamingConvention || (NamingConvention = {}));
1177
-
1178
- var LlmTypeChecker;
1179
-
1180
- (function(LlmTypeChecker) {
1181
- LlmTypeChecker.visit = (schema, callback) => {
1182
- callback(schema);
1183
- if (LlmTypeChecker.isOneOf(schema)) schema.oneOf.forEach((s => LlmTypeChecker.visit(s, callback))); else if (LlmTypeChecker.isObject(schema)) {
1184
- for (const [_, s] of Object.entries(schema.properties ?? {})) LlmTypeChecker.visit(s, callback);
1185
- if (typeof schema.additionalProperties === "object" && schema.additionalProperties !== null) LlmTypeChecker.visit(schema.additionalProperties, callback);
1186
- } else if (LlmTypeChecker.isArray(schema)) LlmTypeChecker.visit(schema.items, callback);
1187
- };
1188
- LlmTypeChecker.isOneOf = schema => schema.oneOf !== undefined;
1189
- LlmTypeChecker.isObject = schema => schema.type === "object";
1190
- LlmTypeChecker.isArray = schema => schema.type === "array";
1191
- LlmTypeChecker.isBoolean = schema => schema.type === "boolean";
1192
- LlmTypeChecker.isInteger = schema => schema.type === "integer";
1193
- LlmTypeChecker.isNumber = schema => schema.type === "number";
1194
- LlmTypeChecker.isString = schema => schema.type === "string";
1195
- LlmTypeChecker.isNullOnly = schema => schema.type === "null";
1196
- LlmTypeChecker.isNullable = schema => !LlmTypeChecker.isUnknown(schema) && (LlmTypeChecker.isNullOnly(schema) || (LlmTypeChecker.isOneOf(schema) ? schema.oneOf.some(LlmTypeChecker.isNullable) : schema.nullable === true));
1197
- LlmTypeChecker.isUnknown = schema => !LlmTypeChecker.isOneOf(schema) && schema.type === undefined;
1198
- })(LlmTypeChecker || (LlmTypeChecker = {}));
1199
-
1200
- var LlmSchemaSeparator;
1201
-
1202
- (function(LlmSchemaSeparator) {
1203
- LlmSchemaSeparator.parameters = props => {
1204
- const indexes = props.parameters.map(LlmSchemaSeparator.schema(props.predicator));
1205
- return {
1206
- llm: indexes.map((([llm], index) => ({
1207
- index,
1208
- schema: llm
1209
- }))).filter((({schema}) => schema !== null)),
1210
- human: indexes.map((([, human], index) => ({
1211
- index,
1212
- schema: human
1213
- }))).filter((({schema}) => schema !== null))
1214
- };
1215
- };
1216
- LlmSchemaSeparator.schema = predicator => input => {
1217
- if (predicator(input) === true) return [ null, input ]; else if (LlmTypeChecker.isUnknown(input) || LlmTypeChecker.isOneOf(input)) return [ input, null ]; else if (LlmTypeChecker.isObject(input)) return separateObject(predicator)(input); else if (LlmTypeChecker.isArray(input)) return separateArray(predicator)(input);
1218
- return [ input, null ];
1219
- };
1220
- const separateArray = predicator => input => {
1221
- const [x, y] = LlmSchemaSeparator.schema(predicator)(input.items);
1222
- return [ x !== null ? {
1223
- ...input,
1224
- items: x
1225
- } : null, y !== null ? {
1226
- ...input,
1227
- items: y
1228
- } : null ];
1229
- };
1230
- const separateObject = predicator => input => {
1231
- if (!!input.additionalProperties || Object.keys(input.properties ?? {}).length === 0) return [ input, null ];
1232
- const llm = {
1233
- ...input,
1234
- properties: {}
1235
- };
1236
- const human = {
1237
- ...input,
1238
- properties: {}
1239
- };
1240
- for (const [key, value] of Object.entries(input.properties ?? {})) {
1241
- const [x, y] = LlmSchemaSeparator.schema(predicator)(value);
1242
- if (x !== null) llm.properties[key] = x;
1243
- if (y !== null) human.properties[key] = y;
1244
- }
1245
- return [ Object.keys(llm.properties).length === 0 ? null : shrinkRequired(llm), Object.keys(human.properties).length === 0 ? null : shrinkRequired(human) ];
1246
- };
1247
- const shrinkRequired = input => {
1248
- if (input.required !== undefined) input.required = input.required.filter((key => input.properties?.[key] !== undefined));
1249
- return input;
1250
- };
1251
- })(LlmSchemaSeparator || (LlmSchemaSeparator = {}));
1252
-
1253
- const application$2 = () => ({
1254
- finalize: (app, options) => {
1255
- app.options = {
1256
- separate: options?.separate ?? null,
1257
- };
1258
- if (app.options.separate === null)
1259
- return;
1260
- for (const func of app.functions)
1261
- func.separated = LlmSchemaSeparator.parameters({
1262
- parameters: func.parameters,
1263
- predicator: app.options.separate,
1264
- });
1265
- },
1266
- });
1267
-
1268
- const random$1 = () => ({
1269
- generator: RandomGenerator,
1270
- pick: pick,
1271
- });
1272
-
1273
1
  /**
1274
2
  * @internal
1275
3
  */
@@ -1389,25 +117,25 @@ function halt$8(name) {
1389
117
  }
1390
118
 
1391
119
  var functional = /*#__PURE__*/Object.freeze({
1392
- __proto__: null,
1393
- assertEqualsFunction: assertEqualsFunction,
1394
- assertEqualsParameters: assertEqualsParameters,
1395
- assertEqualsReturn: assertEqualsReturn,
1396
- assertFunction: assertFunction,
1397
- assertParameters: assertParameters,
1398
- assertReturn: assertReturn,
1399
- equalsFunction: equalsFunction,
1400
- equalsParameters: equalsParameters,
1401
- equalsReturn: equalsReturn,
1402
- isFunction: isFunction,
1403
- isParameters: isParameters,
1404
- isReturn: isReturn,
1405
- validateEqualsFunction: validateEqualsFunction,
1406
- validateEqualsParameters: validateEqualsParameters,
1407
- validateEqualsReturn: validateEqualsReturn,
1408
- validateFunction: validateFunction,
1409
- validateParameters: validateParameters,
1410
- validateReturn: validateReturn
120
+ __proto__: null,
121
+ assertEqualsFunction: assertEqualsFunction,
122
+ assertEqualsParameters: assertEqualsParameters,
123
+ assertEqualsReturn: assertEqualsReturn,
124
+ assertFunction: assertFunction,
125
+ assertParameters: assertParameters,
126
+ assertReturn: assertReturn,
127
+ equalsFunction: equalsFunction,
128
+ equalsParameters: equalsParameters,
129
+ equalsReturn: equalsReturn,
130
+ isFunction: isFunction,
131
+ isParameters: isParameters,
132
+ isReturn: isReturn,
133
+ validateEqualsFunction: validateEqualsFunction,
134
+ validateEqualsParameters: validateEqualsParameters,
135
+ validateEqualsReturn: validateEqualsReturn,
136
+ validateFunction: validateFunction,
137
+ validateParameters: validateParameters,
138
+ validateReturn: validateReturn
1411
139
  });
1412
140
 
1413
141
  /**
@@ -1574,33 +302,33 @@ function halt$7(name) {
1574
302
  }
1575
303
 
1576
304
  var http = /*#__PURE__*/Object.freeze({
1577
- __proto__: null,
1578
- assertFormData: assertFormData,
1579
- assertHeaders: assertHeaders,
1580
- assertQuery: assertQuery,
1581
- createAssertFormData: createAssertFormData,
1582
- createAssertHeaders: createAssertHeaders,
1583
- createAssertQuery: createAssertQuery,
1584
- createFormData: createFormData,
1585
- createHeaders: createHeaders,
1586
- createIsFormData: createIsFormData,
1587
- createIsHeaders: createIsHeaders,
1588
- createIsQuery: createIsQuery,
1589
- createParameter: createParameter,
1590
- createQuery: createQuery,
1591
- createValidateFormData: createValidateFormData,
1592
- createValidateHeaders: createValidateHeaders,
1593
- createValidateQuery: createValidateQuery,
1594
- formData: formData,
1595
- headers: headers,
1596
- isFormData: isFormData,
1597
- isHeaders: isHeaders,
1598
- isQuery: isQuery,
1599
- parameter: parameter,
1600
- query: query,
1601
- validateFormData: validateFormData,
1602
- validateHeaders: validateHeaders,
1603
- validateQuery: validateQuery
305
+ __proto__: null,
306
+ assertFormData: assertFormData,
307
+ assertHeaders: assertHeaders,
308
+ assertQuery: assertQuery,
309
+ createAssertFormData: createAssertFormData,
310
+ createAssertHeaders: createAssertHeaders,
311
+ createAssertQuery: createAssertQuery,
312
+ createFormData: createFormData,
313
+ createHeaders: createHeaders,
314
+ createIsFormData: createIsFormData,
315
+ createIsHeaders: createIsHeaders,
316
+ createIsQuery: createIsQuery,
317
+ createParameter: createParameter,
318
+ createQuery: createQuery,
319
+ createValidateFormData: createValidateFormData,
320
+ createValidateHeaders: createValidateHeaders,
321
+ createValidateQuery: createValidateQuery,
322
+ formData: formData,
323
+ headers: headers,
324
+ isFormData: isFormData,
325
+ isHeaders: isHeaders,
326
+ isQuery: isQuery,
327
+ parameter: parameter,
328
+ query: query,
329
+ validateFormData: validateFormData,
330
+ validateHeaders: validateHeaders,
331
+ validateQuery: validateQuery
1604
332
  });
1605
333
 
1606
334
  /**
@@ -1609,8 +337,6 @@ var http = /*#__PURE__*/Object.freeze({
1609
337
  function application$1() {
1610
338
  halt$6("application");
1611
339
  }
1612
- const applicationPure = /** @__PURE__ */ Object.assign(application$1,
1613
- /** @__PURE__ */ application$2());
1614
340
  /**
1615
341
  * @internal
1616
342
  */
@@ -1625,9 +351,9 @@ function halt$6(name) {
1625
351
  }
1626
352
 
1627
353
  var llm = /*#__PURE__*/Object.freeze({
1628
- __proto__: null,
1629
- application: applicationPure,
1630
- schema: schema
354
+ __proto__: null,
355
+ application: application$1,
356
+ schema: schema
1631
357
  });
1632
358
 
1633
359
  /**
@@ -1728,22 +454,22 @@ function halt$5(name) {
1728
454
  }
1729
455
 
1730
456
  var json = /*#__PURE__*/Object.freeze({
1731
- __proto__: null,
1732
- application: application,
1733
- assertParse: assertParse,
1734
- assertStringify: assertStringify,
1735
- createAssertParse: createAssertParse,
1736
- createAssertStringify: createAssertStringify,
1737
- createIsParse: createIsParse,
1738
- createIsStringify: createIsStringify,
1739
- createStringify: createStringify,
1740
- createValidateParse: createValidateParse,
1741
- createValidateStringify: createValidateStringify,
1742
- isParse: isParse,
1743
- isStringify: isStringify,
1744
- stringify: stringify,
1745
- validateParse: validateParse,
1746
- validateStringify: validateStringify
457
+ __proto__: null,
458
+ application: application,
459
+ assertParse: assertParse,
460
+ assertStringify: assertStringify,
461
+ createAssertParse: createAssertParse,
462
+ createAssertStringify: createAssertStringify,
463
+ createIsParse: createIsParse,
464
+ createIsStringify: createIsStringify,
465
+ createStringify: createStringify,
466
+ createValidateParse: createValidateParse,
467
+ createValidateStringify: createValidateStringify,
468
+ isParse: isParse,
469
+ isStringify: isStringify,
470
+ stringify: stringify,
471
+ validateParse: validateParse,
472
+ validateStringify: validateStringify
1747
473
  });
1748
474
 
1749
475
  /**
@@ -1856,24 +582,24 @@ function halt$4(name) {
1856
582
  }
1857
583
 
1858
584
  var misc = /*#__PURE__*/Object.freeze({
1859
- __proto__: null,
1860
- assertClone: assertClone,
1861
- assertPrune: assertPrune,
1862
- clone: clone,
1863
- createAssertClone: createAssertClone,
1864
- createAssertPrune: createAssertPrune,
1865
- createClone: createClone,
1866
- createIsClone: createIsClone,
1867
- createIsPrune: createIsPrune,
1868
- createPrune: createPrune,
1869
- createValidateClone: createValidateClone,
1870
- createValidatePrune: createValidatePrune,
1871
- isClone: isClone,
1872
- isPrune: isPrune,
1873
- literals: literals,
1874
- prune: prune,
1875
- validateClone: validateClone,
1876
- validatePrune: validatePrune
585
+ __proto__: null,
586
+ assertClone: assertClone,
587
+ assertPrune: assertPrune,
588
+ clone: clone,
589
+ createAssertClone: createAssertClone,
590
+ createAssertPrune: createAssertPrune,
591
+ createClone: createClone,
592
+ createIsClone: createIsClone,
593
+ createIsPrune: createIsPrune,
594
+ createPrune: createPrune,
595
+ createValidateClone: createValidateClone,
596
+ createValidatePrune: createValidatePrune,
597
+ isClone: isClone,
598
+ isPrune: isPrune,
599
+ literals: literals,
600
+ prune: prune,
601
+ validateClone: validateClone,
602
+ validatePrune: validatePrune
1877
603
  });
1878
604
 
1879
605
  /**
@@ -2028,31 +754,31 @@ function halt$3(name) {
2028
754
  }
2029
755
 
2030
756
  var notations = /*#__PURE__*/Object.freeze({
2031
- __proto__: null,
2032
- assertCamel: assertCamel,
2033
- assertPascal: assertPascal,
2034
- assertSnake: assertSnake,
2035
- camel: camel,
2036
- createAssertCamel: createAssertCamel,
2037
- createAssertPascal: createAssertPascal,
2038
- createAssertSnake: createAssertSnake,
2039
- createCamel: createCamel,
2040
- createIsCamel: createIsCamel,
2041
- createIsPascal: createIsPascal,
2042
- createIsSnake: createIsSnake,
2043
- createPascal: createPascal,
2044
- createSnake: createSnake,
2045
- createValidateCamel: createValidateCamel,
2046
- createValidatePascal: createValidatePascal,
2047
- createValidateSnake: createValidateSnake,
2048
- isCamel: isCamel,
2049
- isPascal: isPascal,
2050
- isSnake: isSnake,
2051
- pascal: pascal,
2052
- snake: snake,
2053
- validateCamel: validateCamel,
2054
- validatePascal: validatePascal,
2055
- validateSnake: validateSnake
757
+ __proto__: null,
758
+ assertCamel: assertCamel,
759
+ assertPascal: assertPascal,
760
+ assertSnake: assertSnake,
761
+ camel: camel,
762
+ createAssertCamel: createAssertCamel,
763
+ createAssertPascal: createAssertPascal,
764
+ createAssertSnake: createAssertSnake,
765
+ createCamel: createCamel,
766
+ createIsCamel: createIsCamel,
767
+ createIsPascal: createIsPascal,
768
+ createIsSnake: createIsSnake,
769
+ createPascal: createPascal,
770
+ createSnake: createSnake,
771
+ createValidateCamel: createValidateCamel,
772
+ createValidatePascal: createValidatePascal,
773
+ createValidateSnake: createValidateSnake,
774
+ isCamel: isCamel,
775
+ isPascal: isPascal,
776
+ isSnake: isSnake,
777
+ pascal: pascal,
778
+ snake: snake,
779
+ validateCamel: validateCamel,
780
+ validatePascal: validatePascal,
781
+ validateSnake: validateSnake
2056
782
  });
2057
783
 
2058
784
  /**
@@ -2165,24 +891,24 @@ function halt$2(name) {
2165
891
  }
2166
892
 
2167
893
  var protobuf = /*#__PURE__*/Object.freeze({
2168
- __proto__: null,
2169
- assertDecode: assertDecode,
2170
- assertEncode: assertEncode,
2171
- createAssertDecode: createAssertDecode,
2172
- createAssertEncode: createAssertEncode,
2173
- createDecode: createDecode,
2174
- createEncode: createEncode,
2175
- createIsDecode: createIsDecode,
2176
- createIsEncode: createIsEncode,
2177
- createValidateDecode: createValidateDecode,
2178
- createValidateEncode: createValidateEncode,
2179
- decode: decode,
2180
- encode: encode,
2181
- isDecode: isDecode,
2182
- isEncode: isEncode,
2183
- message: message,
2184
- validateDecode: validateDecode,
2185
- validateEncode: validateEncode
894
+ __proto__: null,
895
+ assertDecode: assertDecode,
896
+ assertEncode: assertEncode,
897
+ createAssertDecode: createAssertDecode,
898
+ createAssertEncode: createAssertEncode,
899
+ createDecode: createDecode,
900
+ createEncode: createEncode,
901
+ createIsDecode: createIsDecode,
902
+ createIsEncode: createIsEncode,
903
+ createValidateDecode: createValidateDecode,
904
+ createValidateEncode: createValidateEncode,
905
+ decode: decode,
906
+ encode: encode,
907
+ isDecode: isDecode,
908
+ isEncode: isEncode,
909
+ message: message,
910
+ validateDecode: validateDecode,
911
+ validateEncode: validateEncode
2186
912
  });
2187
913
 
2188
914
  /**
@@ -2202,15 +928,39 @@ function halt$1(name) {
2202
928
  }
2203
929
 
2204
930
  var reflect = /*#__PURE__*/Object.freeze({
2205
- __proto__: null,
2206
- metadata: metadata,
2207
- name: name
931
+ __proto__: null,
932
+ metadata: metadata,
933
+ name: name
2208
934
  });
2209
935
 
2210
936
  var index = /*#__PURE__*/Object.freeze({
2211
- __proto__: null
937
+ __proto__: null
2212
938
  });
2213
939
 
940
+ class TypeGuardError extends Error {
941
+ method;
942
+ path;
943
+ expected;
944
+ value;
945
+ fake_expected_typed_value_;
946
+ constructor(props) {
947
+ // MESSAGE CONSTRUCTION
948
+ super(props.message ||
949
+ `Error on ${props.method}(): invalid type${props.path ? ` on ${props.path}` : ""}, expect to be ${props.expected}`);
950
+ // INHERITANCE POLYFILL
951
+ const proto = new.target.prototype;
952
+ if (Object.setPrototypeOf)
953
+ Object.setPrototypeOf(this, proto);
954
+ else
955
+ this.__proto__ = proto;
956
+ // ASSIGN MEMBERS
957
+ this.method = props.method;
958
+ this.path = props.path;
959
+ this.expected = props.expected;
960
+ this.value = props.value;
961
+ }
962
+ }
963
+
2214
964
  /**
2215
965
  * @internal
2216
966
  */
@@ -2265,8 +1015,6 @@ function validateEquals() {
2265
1015
  function random() {
2266
1016
  halt("random");
2267
1017
  }
2268
- const randomPure = /** @__PURE__ */ Object.assign(random,
2269
- /** @__PURE__ */ random$1());
2270
1018
  /**
2271
1019
  * @internal
2272
1020
  */
@@ -2321,7 +1069,6 @@ function createValidateEquals() {
2321
1069
  function createRandom() {
2322
1070
  halt("createRandom");
2323
1071
  }
2324
- const createRandomPure = /** @__PURE__ */ Object.assign(createRandom, randomPure);
2325
1072
  /**
2326
1073
  * @internal
2327
1074
  */
@@ -2330,36 +1077,36 @@ function halt(name) {
2330
1077
  }
2331
1078
 
2332
1079
  var typia = /*#__PURE__*/Object.freeze({
2333
- __proto__: null,
2334
- TypeGuardError: TypeGuardError,
2335
- assert: assert,
2336
- assertEquals: assertEquals,
2337
- assertGuard: assertGuard,
2338
- assertGuardEquals: assertGuardEquals,
2339
- createAssert: createAssert,
2340
- createAssertEquals: createAssertEquals,
2341
- createAssertGuard: createAssertGuard,
2342
- createAssertGuardEquals: createAssertGuardEquals,
2343
- createEquals: createEquals,
2344
- createIs: createIs,
2345
- createRandom: createRandomPure,
2346
- createValidate: createValidate,
2347
- createValidateEquals: createValidateEquals,
2348
- equals: equals,
2349
- functional: functional,
2350
- http: http,
2351
- is: is,
2352
- json: json,
2353
- llm: llm,
2354
- misc: misc,
2355
- notations: notations,
2356
- protobuf: protobuf,
2357
- random: randomPure,
2358
- reflect: reflect,
2359
- tags: index,
2360
- validate: validate,
2361
- validateEquals: validateEquals
1080
+ __proto__: null,
1081
+ TypeGuardError: TypeGuardError,
1082
+ assert: assert,
1083
+ assertEquals: assertEquals,
1084
+ assertGuard: assertGuard,
1085
+ assertGuardEquals: assertGuardEquals,
1086
+ createAssert: createAssert,
1087
+ createAssertEquals: createAssertEquals,
1088
+ createAssertGuard: createAssertGuard,
1089
+ createAssertGuardEquals: createAssertGuardEquals,
1090
+ createEquals: createEquals,
1091
+ createIs: createIs,
1092
+ createRandom: createRandom,
1093
+ createValidate: createValidate,
1094
+ createValidateEquals: createValidateEquals,
1095
+ equals: equals,
1096
+ functional: functional,
1097
+ http: http,
1098
+ is: is,
1099
+ json: json,
1100
+ llm: llm,
1101
+ misc: misc,
1102
+ notations: notations,
1103
+ protobuf: protobuf,
1104
+ random: random,
1105
+ reflect: reflect,
1106
+ tags: index,
1107
+ validate: validate,
1108
+ validateEquals: validateEquals
2362
1109
  });
2363
1110
 
2364
- export { TypeGuardError, assert, assertEquals, assertGuard, assertGuardEquals, createAssert, createAssertEquals, createAssertGuard, createAssertGuardEquals, createEquals, createIs, createRandomPure as createRandom, createValidate, createValidateEquals, typia as default, equals, functional, http, is, json, llm, misc, notations, protobuf, randomPure as random, reflect, index as tags, validate, validateEquals };
1111
+ export { TypeGuardError, assert, assertEquals, assertGuard, assertGuardEquals, createAssert, createAssertEquals, createAssertGuard, createAssertGuardEquals, createEquals, createIs, createRandom, createValidate, createValidateEquals, typia as default, equals, functional, http, is, json, llm, misc, notations, protobuf, random, reflect, index as tags, validate, validateEquals };
2365
1112
  //# sourceMappingURL=index.mjs.map