@typia/utils 12.1.0-dev.20260325 → 13.0.0-dev.20260425
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.
- package/LICENSE +21 -21
- package/README.md +85 -85
- package/lib/_virtual/ArrayUtil.mjs +4 -0
- package/lib/_virtual/ArrayUtil.mjs.map +1 -0
- package/lib/_virtual/EndpointUtil.mjs +4 -0
- package/lib/_virtual/EndpointUtil.mjs.map +1 -0
- package/lib/_virtual/HttpError.mjs +4 -0
- package/lib/_virtual/HttpError.mjs.map +1 -0
- package/lib/_virtual/HttpLlm.mjs +4 -0
- package/lib/_virtual/HttpLlm.mjs.map +1 -0
- package/lib/_virtual/HttpLlmApplicationComposer.mjs +4 -0
- package/lib/_virtual/HttpLlmApplicationComposer.mjs.map +1 -0
- package/lib/_virtual/HttpLlmFunctionFetcher.mjs +4 -0
- package/lib/_virtual/HttpLlmFunctionFetcher.mjs.map +1 -0
- package/lib/_virtual/HttpMigrateApplicationComposer.mjs +4 -0
- package/lib/_virtual/HttpMigrateApplicationComposer.mjs.map +1 -0
- package/lib/_virtual/HttpMigrateRouteAccessor.mjs +4 -0
- package/lib/_virtual/HttpMigrateRouteAccessor.mjs.map +1 -0
- package/lib/_virtual/HttpMigrateRouteComposer.mjs +4 -0
- package/lib/_virtual/HttpMigrateRouteComposer.mjs.map +1 -0
- package/lib/_virtual/HttpMigrateRouteFetcher.mjs +4 -0
- package/lib/_virtual/HttpMigrateRouteFetcher.mjs.map +1 -0
- package/lib/_virtual/HttpMigration.mjs +4 -0
- package/lib/_virtual/HttpMigration.mjs.map +1 -0
- package/lib/_virtual/IOpenApiValidatorContext.mjs +4 -0
- package/lib/_virtual/IOpenApiValidatorContext.mjs.map +1 -0
- package/lib/_virtual/JsonDescriptor.mjs +4 -0
- package/lib/_virtual/JsonDescriptor.mjs.map +1 -0
- package/lib/_virtual/LlmDescriptionInverter.mjs +4 -0
- package/lib/_virtual/LlmDescriptionInverter.mjs.map +1 -0
- package/lib/_virtual/LlmJson.mjs +4 -0
- package/lib/_virtual/LlmJson.mjs.map +1 -0
- package/lib/_virtual/LlmParametersComposer.mjs +4 -0
- package/lib/_virtual/LlmParametersComposer.mjs.map +1 -0
- package/lib/_virtual/LlmSchemaConverter.mjs +4 -0
- package/lib/_virtual/LlmSchemaConverter.mjs.map +1 -0
- package/lib/_virtual/LlmTypeChecker.mjs +4 -0
- package/lib/_virtual/LlmTypeChecker.mjs.map +1 -0
- package/lib/_virtual/MapUtil.mjs +4 -0
- package/lib/_virtual/MapUtil.mjs.map +1 -0
- package/lib/_virtual/NamingConvention.mjs +4 -0
- package/lib/_virtual/NamingConvention.mjs.map +1 -0
- package/lib/_virtual/OpenApiArrayValidator.mjs +4 -0
- package/lib/_virtual/OpenApiArrayValidator.mjs.map +1 -0
- package/lib/_virtual/OpenApiBooleanValidator.mjs +4 -0
- package/lib/_virtual/OpenApiBooleanValidator.mjs.map +1 -0
- package/lib/_virtual/OpenApiConstantValidator.mjs +4 -0
- package/lib/_virtual/OpenApiConstantValidator.mjs.map +1 -0
- package/lib/_virtual/OpenApiConstraintShifter.mjs +4 -0
- package/lib/_virtual/OpenApiConstraintShifter.mjs.map +1 -0
- package/lib/_virtual/OpenApiConverter.mjs +4 -0
- package/lib/_virtual/OpenApiConverter.mjs.map +1 -0
- package/lib/_virtual/OpenApiExclusiveEmender.mjs +4 -0
- package/lib/_virtual/OpenApiExclusiveEmender.mjs.map +1 -0
- package/lib/_virtual/OpenApiIntegerValidator.mjs +4 -0
- package/lib/_virtual/OpenApiIntegerValidator.mjs.map +1 -0
- package/lib/_virtual/OpenApiNumberValidator.mjs +4 -0
- package/lib/_virtual/OpenApiNumberValidator.mjs.map +1 -0
- package/lib/_virtual/OpenApiObjectValidator.mjs +4 -0
- package/lib/_virtual/OpenApiObjectValidator.mjs.map +1 -0
- package/lib/_virtual/OpenApiOneOfValidator.mjs +4 -0
- package/lib/_virtual/OpenApiOneOfValidator.mjs.map +1 -0
- package/lib/_virtual/OpenApiSchemaNamingRule.mjs +4 -0
- package/lib/_virtual/OpenApiSchemaNamingRule.mjs.map +1 -0
- package/lib/_virtual/OpenApiStationValidator.mjs +4 -0
- package/lib/_virtual/OpenApiStationValidator.mjs.map +1 -0
- package/lib/_virtual/OpenApiStringValidator.mjs +4 -0
- package/lib/_virtual/OpenApiStringValidator.mjs.map +1 -0
- package/lib/_virtual/OpenApiTupleValidator.mjs +4 -0
- package/lib/_virtual/OpenApiTupleValidator.mjs.map +1 -0
- package/lib/_virtual/OpenApiTypeChecker.mjs +4 -0
- package/lib/_virtual/OpenApiTypeChecker.mjs.map +1 -0
- package/lib/_virtual/OpenApiTypeCheckerBase.mjs +4 -0
- package/lib/_virtual/OpenApiTypeCheckerBase.mjs.map +1 -0
- package/lib/_virtual/OpenApiV3Downgrader.mjs +4 -0
- package/lib/_virtual/OpenApiV3Downgrader.mjs.map +1 -0
- package/lib/_virtual/OpenApiV3TypeChecker.mjs +4 -0
- package/lib/_virtual/OpenApiV3TypeChecker.mjs.map +1 -0
- package/lib/_virtual/OpenApiV3Upgrader.mjs +4 -0
- package/lib/_virtual/OpenApiV3Upgrader.mjs.map +1 -0
- package/lib/_virtual/OpenApiV3_1Downgrader.mjs +4 -0
- package/lib/_virtual/OpenApiV3_1Downgrader.mjs.map +1 -0
- package/lib/_virtual/OpenApiV3_1TypeChecker.mjs +4 -0
- package/lib/_virtual/OpenApiV3_1TypeChecker.mjs.map +1 -0
- package/lib/_virtual/OpenApiV3_1Upgrader.mjs +4 -0
- package/lib/_virtual/OpenApiV3_1Upgrader.mjs.map +1 -0
- package/lib/_virtual/OpenApiV3_2Upgrader.mjs +4 -0
- package/lib/_virtual/OpenApiV3_2Upgrader.mjs.map +1 -0
- package/lib/_virtual/OpenApiValidator.mjs +4 -0
- package/lib/_virtual/OpenApiValidator.mjs.map +1 -0
- package/lib/_virtual/Singleton.mjs +4 -0
- package/lib/_virtual/Singleton.mjs.map +1 -0
- package/lib/_virtual/StringUtil.mjs +4 -0
- package/lib/_virtual/StringUtil.mjs.map +1 -0
- package/lib/_virtual/SwaggerV2Downgrader.mjs +4 -0
- package/lib/_virtual/SwaggerV2Downgrader.mjs.map +1 -0
- package/lib/_virtual/SwaggerV2TypeChecker.mjs +4 -0
- package/lib/_virtual/SwaggerV2TypeChecker.mjs.map +1 -0
- package/lib/_virtual/SwaggerV2Upgrader.mjs +4 -0
- package/lib/_virtual/SwaggerV2Upgrader.mjs.map +1 -0
- package/lib/_virtual/_commonjsHelpers.mjs +6 -0
- package/lib/_virtual/_commonjsHelpers.mjs.map +1 -0
- package/lib/_virtual/_isBigintString.mjs +4 -0
- package/lib/_virtual/_isBigintString.mjs.map +1 -0
- package/lib/_virtual/_isFormatByte.mjs +4 -0
- package/lib/_virtual/_isFormatByte.mjs.map +1 -0
- package/lib/_virtual/_isFormatDate.mjs +4 -0
- package/lib/_virtual/_isFormatDate.mjs.map +1 -0
- package/lib/_virtual/_isFormatDateTime.mjs +4 -0
- package/lib/_virtual/_isFormatDateTime.mjs.map +1 -0
- package/lib/_virtual/_isFormatDuration.mjs +4 -0
- package/lib/_virtual/_isFormatDuration.mjs.map +1 -0
- package/lib/_virtual/_isFormatEmail.mjs +4 -0
- package/lib/_virtual/_isFormatEmail.mjs.map +1 -0
- package/lib/_virtual/_isFormatHostname.mjs +4 -0
- package/lib/_virtual/_isFormatHostname.mjs.map +1 -0
- package/lib/_virtual/_isFormatIdnEmail.mjs +4 -0
- package/lib/_virtual/_isFormatIdnEmail.mjs.map +1 -0
- package/lib/_virtual/_isFormatIdnHostname.mjs +4 -0
- package/lib/_virtual/_isFormatIdnHostname.mjs.map +1 -0
- package/lib/_virtual/_isFormatIpv4.mjs +4 -0
- package/lib/_virtual/_isFormatIpv4.mjs.map +1 -0
- package/lib/_virtual/_isFormatIpv6.mjs +4 -0
- package/lib/_virtual/_isFormatIpv6.mjs.map +1 -0
- package/lib/_virtual/_isFormatIri.mjs +4 -0
- package/lib/_virtual/_isFormatIri.mjs.map +1 -0
- package/lib/_virtual/_isFormatIriReference.mjs +4 -0
- package/lib/_virtual/_isFormatIriReference.mjs.map +1 -0
- package/lib/_virtual/_isFormatJsonPointer.mjs +4 -0
- package/lib/_virtual/_isFormatJsonPointer.mjs.map +1 -0
- package/lib/_virtual/_isFormatPassword.mjs +4 -0
- package/lib/_virtual/_isFormatPassword.mjs.map +1 -0
- package/lib/_virtual/_isFormatRegex.mjs +4 -0
- package/lib/_virtual/_isFormatRegex.mjs.map +1 -0
- package/lib/_virtual/_isFormatRelativeJsonPointer.mjs +4 -0
- package/lib/_virtual/_isFormatRelativeJsonPointer.mjs.map +1 -0
- package/lib/_virtual/_isFormatTime.mjs +4 -0
- package/lib/_virtual/_isFormatTime.mjs.map +1 -0
- package/lib/_virtual/_isFormatUri.mjs +4 -0
- package/lib/_virtual/_isFormatUri.mjs.map +1 -0
- package/lib/_virtual/_isFormatUriReference.mjs +4 -0
- package/lib/_virtual/_isFormatUriReference.mjs.map +1 -0
- package/lib/_virtual/_isFormatUriTemplate.mjs +4 -0
- package/lib/_virtual/_isFormatUriTemplate.mjs.map +1 -0
- package/lib/_virtual/_isFormatUrl.mjs +4 -0
- package/lib/_virtual/_isFormatUrl.mjs.map +1 -0
- package/lib/_virtual/_isFormatUuid.mjs +4 -0
- package/lib/_virtual/_isFormatUuid.mjs.map +1 -0
- package/lib/_virtual/_isUniqueItems.mjs +4 -0
- package/lib/_virtual/_isUniqueItems.mjs.map +1 -0
- package/lib/_virtual/coerceLlmArguments.mjs +4 -0
- package/lib/_virtual/coerceLlmArguments.mjs.map +1 -0
- package/lib/_virtual/dedent.mjs +4 -0
- package/lib/_virtual/dedent.mjs.map +1 -0
- package/lib/_virtual/index.mjs +4 -0
- package/lib/_virtual/index.mjs.map +1 -0
- package/lib/_virtual/index2.mjs +4 -0
- package/lib/_virtual/index2.mjs.map +1 -0
- package/lib/_virtual/index3.mjs +4 -0
- package/lib/_virtual/index3.mjs.map +1 -0
- package/lib/_virtual/index4.mjs +4 -0
- package/lib/_virtual/index4.mjs.map +1 -0
- package/lib/_virtual/index5.mjs +4 -0
- package/lib/_virtual/index5.mjs.map +1 -0
- package/lib/_virtual/parseLenientJson.mjs +4 -0
- package/lib/_virtual/parseLenientJson.mjs.map +1 -0
- package/lib/_virtual/stringifyValidationFailure.mjs +4 -0
- package/lib/_virtual/stringifyValidationFailure.mjs.map +1 -0
- package/lib/converters/LlmSchemaConverter.js +149 -51
- package/lib/converters/LlmSchemaConverter.js.map +1 -1
- package/lib/converters/LlmSchemaConverter.mjs +5 -511
- package/lib/converters/LlmSchemaConverter.mjs.map +1 -1
- package/lib/converters/LlmSchemaConverter2.mjs +551 -0
- package/lib/converters/LlmSchemaConverter2.mjs.map +1 -0
- package/lib/converters/OpenApiConverter.js.map +1 -1
- package/lib/converters/OpenApiConverter.mjs +5 -146
- package/lib/converters/OpenApiConverter.mjs.map +1 -1
- package/lib/converters/OpenApiConverter2.mjs +167 -0
- package/lib/converters/OpenApiConverter2.mjs.map +1 -0
- package/lib/converters/index.mjs +7 -3
- package/lib/converters/index.mjs.map +1 -1
- package/lib/converters/index2.mjs +37 -0
- package/lib/converters/index2.mjs.map +1 -0
- package/lib/converters/internal/LlmDescriptionInverter.js.map +1 -1
- package/lib/converters/internal/LlmDescriptionInverter.mjs +5 -138
- package/lib/converters/internal/LlmDescriptionInverter.mjs.map +1 -1
- package/lib/converters/internal/LlmDescriptionInverter2.mjs +153 -0
- package/lib/converters/internal/LlmDescriptionInverter2.mjs.map +1 -0
- package/lib/converters/internal/LlmParametersComposer.js +14 -17
- package/lib/converters/internal/LlmParametersComposer.js.map +1 -1
- package/lib/converters/internal/LlmParametersComposer.mjs +5 -39
- package/lib/converters/internal/LlmParametersComposer.mjs.map +1 -1
- package/lib/converters/internal/LlmParametersComposer2.mjs +48 -0
- package/lib/converters/internal/LlmParametersComposer2.mjs.map +1 -0
- package/lib/converters/internal/OpenApiConstraintShifter.js.map +1 -1
- package/lib/converters/internal/OpenApiConstraintShifter.mjs +5 -99
- package/lib/converters/internal/OpenApiConstraintShifter.mjs.map +1 -1
- package/lib/converters/internal/OpenApiConstraintShifter2.mjs +115 -0
- package/lib/converters/internal/OpenApiConstraintShifter2.mjs.map +1 -0
- package/lib/converters/internal/OpenApiExclusiveEmender.js.map +1 -1
- package/lib/converters/internal/OpenApiExclusiveEmender.mjs +6 -33
- package/lib/converters/internal/OpenApiExclusiveEmender.mjs.map +1 -1
- package/lib/converters/internal/OpenApiExclusiveEmender2.mjs +43 -0
- package/lib/converters/internal/OpenApiExclusiveEmender2.mjs.map +1 -0
- package/lib/converters/internal/OpenApiV3Downgrader.js +2 -1
- package/lib/converters/internal/OpenApiV3Downgrader.js.map +1 -1
- package/lib/converters/internal/OpenApiV3Downgrader.mjs +5 -299
- package/lib/converters/internal/OpenApiV3Downgrader.mjs.map +1 -1
- package/lib/converters/internal/OpenApiV3Downgrader2.mjs +247 -0
- package/lib/converters/internal/OpenApiV3Downgrader2.mjs.map +1 -0
- package/lib/converters/internal/OpenApiV3Upgrader.js +58 -67
- package/lib/converters/internal/OpenApiV3Upgrader.js.map +1 -1
- package/lib/converters/internal/OpenApiV3Upgrader.mjs +5 -367
- package/lib/converters/internal/OpenApiV3Upgrader.mjs.map +1 -1
- package/lib/converters/internal/OpenApiV3Upgrader2.mjs +308 -0
- package/lib/converters/internal/OpenApiV3Upgrader2.mjs.map +1 -0
- package/lib/converters/internal/OpenApiV3_1Downgrader.js.map +1 -1
- package/lib/converters/internal/OpenApiV3_1Downgrader.mjs +5 -236
- package/lib/converters/internal/OpenApiV3_1Downgrader.mjs.map +1 -1
- package/lib/converters/internal/OpenApiV3_1Downgrader2.mjs +203 -0
- package/lib/converters/internal/OpenApiV3_1Downgrader2.mjs.map +1 -0
- package/lib/converters/internal/OpenApiV3_1Upgrader.js +68 -70
- package/lib/converters/internal/OpenApiV3_1Upgrader.js.map +1 -1
- package/lib/converters/internal/OpenApiV3_1Upgrader.mjs +5 -564
- package/lib/converters/internal/OpenApiV3_1Upgrader.mjs.map +1 -1
- package/lib/converters/internal/OpenApiV3_1Upgrader2.mjs +435 -0
- package/lib/converters/internal/OpenApiV3_1Upgrader2.mjs.map +1 -0
- package/lib/converters/internal/OpenApiV3_2Upgrader.js +57 -63
- package/lib/converters/internal/OpenApiV3_2Upgrader.js.map +1 -1
- package/lib/converters/internal/OpenApiV3_2Upgrader.mjs +5 -240
- package/lib/converters/internal/OpenApiV3_2Upgrader.mjs.map +1 -1
- package/lib/converters/internal/OpenApiV3_2Upgrader2.mjs +211 -0
- package/lib/converters/internal/OpenApiV3_2Upgrader2.mjs.map +1 -0
- package/lib/converters/internal/SwaggerV2Downgrader.js +44 -56
- package/lib/converters/internal/SwaggerV2Downgrader.js.map +1 -1
- package/lib/converters/internal/SwaggerV2Downgrader.mjs +5 -352
- package/lib/converters/internal/SwaggerV2Downgrader.mjs.map +1 -1
- package/lib/converters/internal/SwaggerV2Downgrader2.mjs +297 -0
- package/lib/converters/internal/SwaggerV2Downgrader2.mjs.map +1 -0
- package/lib/converters/internal/SwaggerV2Upgrader.js +52 -63
- package/lib/converters/internal/SwaggerV2Upgrader.js.map +1 -1
- package/lib/converters/internal/SwaggerV2Upgrader.mjs +5 -421
- package/lib/converters/internal/SwaggerV2Upgrader.mjs.map +1 -1
- package/lib/converters/internal/SwaggerV2Upgrader2.mjs +378 -0
- package/lib/converters/internal/SwaggerV2Upgrader2.mjs.map +1 -0
- package/lib/http/HttpError.js.map +1 -1
- package/lib/http/HttpError.mjs +6 -74
- package/lib/http/HttpError.mjs.map +1 -1
- package/lib/http/HttpError2.mjs +81 -0
- package/lib/http/HttpError2.mjs.map +1 -0
- package/lib/http/HttpLlm.js +5 -4
- package/lib/http/HttpLlm.js.map +1 -1
- package/lib/http/HttpLlm.mjs +5 -96
- package/lib/http/HttpLlm.mjs.map +1 -1
- package/lib/http/HttpLlm2.mjs +115 -0
- package/lib/http/HttpLlm2.mjs.map +1 -0
- package/lib/http/HttpMigration.js.map +1 -1
- package/lib/http/HttpMigration.mjs +5 -49
- package/lib/http/HttpMigration.mjs.map +1 -1
- package/lib/http/HttpMigration2.mjs +66 -0
- package/lib/http/HttpMigration2.mjs.map +1 -0
- package/lib/http/index.mjs +7 -3
- package/lib/http/index.mjs.map +1 -1
- package/lib/http/index2.mjs +36 -0
- package/lib/http/index2.mjs.map +1 -0
- package/lib/http/internal/HttpLlmApplicationComposer.js +12 -13
- package/lib/http/internal/HttpLlmApplicationComposer.js.map +1 -1
- package/lib/http/internal/HttpLlmApplicationComposer.mjs +5 -297
- package/lib/http/internal/HttpLlmApplicationComposer.mjs.map +1 -1
- package/lib/http/internal/HttpLlmApplicationComposer2.mjs +309 -0
- package/lib/http/internal/HttpLlmApplicationComposer2.mjs.map +1 -0
- package/lib/http/internal/HttpLlmFunctionFetcher.js.map +1 -1
- package/lib/http/internal/HttpLlmFunctionFetcher.mjs +5 -21
- package/lib/http/internal/HttpLlmFunctionFetcher.mjs.map +1 -1
- package/lib/http/internal/HttpLlmFunctionFetcher2.mjs +36 -0
- package/lib/http/internal/HttpLlmFunctionFetcher2.mjs.map +1 -0
- package/lib/http/internal/HttpMigrateApplicationComposer.js.map +1 -1
- package/lib/http/internal/HttpMigrateApplicationComposer.mjs +5 -44
- package/lib/http/internal/HttpMigrateApplicationComposer.mjs.map +1 -1
- package/lib/http/internal/HttpMigrateApplicationComposer2.mjs +59 -0
- package/lib/http/internal/HttpMigrateApplicationComposer2.mjs.map +1 -0
- package/lib/http/internal/HttpMigrateRouteAccessor.js.map +1 -1
- package/lib/http/internal/HttpMigrateRouteAccessor.mjs +5 -103
- package/lib/http/internal/HttpMigrateRouteAccessor.mjs.map +1 -1
- package/lib/http/internal/HttpMigrateRouteAccessor2.mjs +121 -0
- package/lib/http/internal/HttpMigrateRouteAccessor2.mjs.map +1 -0
- package/lib/http/internal/HttpMigrateRouteComposer.js +35 -54
- package/lib/http/internal/HttpMigrateRouteComposer.js.map +1 -1
- package/lib/http/internal/HttpMigrateRouteComposer.mjs +5 -381
- package/lib/http/internal/HttpMigrateRouteComposer.mjs.map +1 -1
- package/lib/http/internal/HttpMigrateRouteComposer2.mjs +384 -0
- package/lib/http/internal/HttpMigrateRouteComposer2.mjs.map +1 -0
- package/lib/http/internal/HttpMigrateRouteFetcher.js +7 -6
- package/lib/http/internal/HttpMigrateRouteFetcher.js.map +1 -1
- package/lib/http/internal/HttpMigrateRouteFetcher.mjs +5 -171
- package/lib/http/internal/HttpMigrateRouteFetcher.mjs.map +1 -1
- package/lib/http/internal/HttpMigrateRouteFetcher2.mjs +192 -0
- package/lib/http/internal/HttpMigrateRouteFetcher2.mjs.map +1 -0
- package/lib/index.mjs +7 -19
- package/lib/index.mjs.map +1 -1
- package/lib/index2.mjs +38 -0
- package/lib/index2.mjs.map +1 -0
- package/lib/utils/ArrayUtil.js.map +1 -1
- package/lib/utils/ArrayUtil.mjs +6 -26
- package/lib/utils/ArrayUtil.mjs.map +1 -1
- package/lib/utils/ArrayUtil2.mjs +40 -0
- package/lib/utils/ArrayUtil2.mjs.map +1 -0
- package/lib/utils/LlmJson.d.ts +1 -1
- package/lib/utils/LlmJson.js.map +1 -1
- package/lib/utils/LlmJson.mjs +5 -153
- package/lib/utils/LlmJson.mjs.map +1 -1
- package/lib/utils/LlmJson2.mjs +172 -0
- package/lib/utils/LlmJson2.mjs.map +1 -0
- package/lib/utils/MapUtil.js.map +1 -1
- package/lib/utils/MapUtil.mjs +6 -13
- package/lib/utils/MapUtil.mjs.map +1 -1
- package/lib/utils/MapUtil2.mjs +27 -0
- package/lib/utils/MapUtil2.mjs.map +1 -0
- package/lib/utils/NamingConvention.js.map +1 -1
- package/lib/utils/NamingConvention.mjs +6 -196
- package/lib/utils/NamingConvention.mjs.map +1 -1
- package/lib/utils/NamingConvention2.mjs +210 -0
- package/lib/utils/NamingConvention2.mjs.map +1 -0
- package/lib/utils/Singleton.d.ts +6 -1
- package/lib/utils/Singleton.js +0 -1
- package/lib/utils/Singleton.js.map +1 -1
- package/lib/utils/Singleton.mjs +6 -16
- package/lib/utils/Singleton.mjs.map +1 -1
- package/lib/utils/Singleton2.mjs +28 -0
- package/lib/utils/Singleton2.mjs.map +1 -0
- package/lib/utils/StringUtil.js +6 -9
- package/lib/utils/StringUtil.js.map +1 -1
- package/lib/utils/StringUtil.mjs +6 -11
- package/lib/utils/StringUtil.mjs.map +1 -1
- package/lib/utils/StringUtil2.mjs +25 -0
- package/lib/utils/StringUtil2.mjs.map +1 -0
- package/lib/utils/dedent.js.map +1 -1
- package/lib/utils/dedent.mjs +6 -48
- package/lib/utils/dedent.mjs.map +1 -1
- package/lib/utils/dedent2.mjs +62 -0
- package/lib/utils/dedent2.mjs.map +1 -0
- package/lib/utils/index.mjs +7 -7
- package/lib/utils/index.mjs.map +1 -1
- package/lib/utils/index2.mjs +44 -0
- package/lib/utils/index2.mjs.map +1 -0
- package/lib/utils/internal/EndpointUtil.js.map +1 -1
- package/lib/utils/internal/EndpointUtil.mjs +5 -34
- package/lib/utils/internal/EndpointUtil.mjs.map +1 -1
- package/lib/utils/internal/EndpointUtil2.mjs +49 -0
- package/lib/utils/internal/EndpointUtil2.mjs.map +1 -0
- package/lib/utils/internal/JsonDescriptor.js +18 -25
- package/lib/utils/internal/JsonDescriptor.js.map +1 -1
- package/lib/utils/internal/JsonDescriptor.mjs +5 -45
- package/lib/utils/internal/JsonDescriptor.mjs.map +1 -1
- package/lib/utils/internal/JsonDescriptor2.mjs +64 -0
- package/lib/utils/internal/JsonDescriptor2.mjs.map +1 -0
- package/lib/utils/internal/OpenApiTypeCheckerBase.js +15 -9
- package/lib/utils/internal/OpenApiTypeCheckerBase.js.map +1 -1
- package/lib/utils/internal/OpenApiTypeCheckerBase.mjs +5 -581
- package/lib/utils/internal/OpenApiTypeCheckerBase.mjs.map +1 -1
- package/lib/utils/internal/OpenApiTypeCheckerBase2.mjs +539 -0
- package/lib/utils/internal/OpenApiTypeCheckerBase2.mjs.map +1 -0
- package/lib/utils/internal/coerceLlmArguments.js +18 -4
- package/lib/utils/internal/coerceLlmArguments.js.map +1 -1
- package/lib/utils/internal/coerceLlmArguments.mjs +5 -245
- package/lib/utils/internal/coerceLlmArguments.mjs.map +1 -1
- package/lib/utils/internal/coerceLlmArguments2.mjs +276 -0
- package/lib/utils/internal/coerceLlmArguments2.mjs.map +1 -0
- package/lib/utils/internal/parseLenientJson.js.map +1 -1
- package/lib/utils/internal/parseLenientJson.mjs +6 -803
- package/lib/utils/internal/parseLenientJson.mjs.map +1 -1
- package/lib/utils/internal/parseLenientJson2.mjs +815 -0
- package/lib/utils/internal/parseLenientJson2.mjs.map +1 -0
- package/lib/utils/internal/stringifyValidationFailure.js.map +1 -1
- package/lib/utils/internal/stringifyValidationFailure.mjs +5 -315
- package/lib/utils/internal/stringifyValidationFailure.mjs.map +1 -1
- package/lib/utils/internal/stringifyValidationFailure2.mjs +333 -0
- package/lib/utils/internal/stringifyValidationFailure2.mjs.map +1 -0
- package/lib/validators/LlmTypeChecker.js +4 -3
- package/lib/validators/LlmTypeChecker.js.map +1 -1
- package/lib/validators/LlmTypeChecker.mjs +5 -297
- package/lib/validators/LlmTypeChecker.mjs.map +1 -1
- package/lib/validators/LlmTypeChecker2.mjs +323 -0
- package/lib/validators/LlmTypeChecker2.mjs.map +1 -0
- package/lib/validators/OpenApiTypeChecker.js.map +1 -1
- package/lib/validators/OpenApiTypeChecker.mjs +5 -215
- package/lib/validators/OpenApiTypeChecker.mjs.map +1 -1
- package/lib/validators/OpenApiTypeChecker2.mjs +219 -0
- package/lib/validators/OpenApiTypeChecker2.mjs.map +1 -0
- package/lib/validators/OpenApiV3TypeChecker.js.map +1 -1
- package/lib/validators/OpenApiV3TypeChecker.mjs +6 -27
- package/lib/validators/OpenApiV3TypeChecker.mjs.map +1 -1
- package/lib/validators/OpenApiV3TypeChecker2.mjs +41 -0
- package/lib/validators/OpenApiV3TypeChecker2.mjs.map +1 -0
- package/lib/validators/OpenApiV3_1TypeChecker.js.map +1 -1
- package/lib/validators/OpenApiV3_1TypeChecker.mjs +6 -31
- package/lib/validators/OpenApiV3_1TypeChecker.mjs.map +1 -1
- package/lib/validators/OpenApiV3_1TypeChecker2.mjs +45 -0
- package/lib/validators/OpenApiV3_1TypeChecker2.mjs.map +1 -0
- package/lib/validators/OpenApiValidator.js.map +1 -1
- package/lib/validators/OpenApiValidator.mjs +5 -72
- package/lib/validators/OpenApiValidator.mjs.map +1 -1
- package/lib/validators/OpenApiValidator2.mjs +83 -0
- package/lib/validators/OpenApiValidator2.mjs.map +1 -0
- package/lib/validators/SwaggerV2TypeChecker.js.map +1 -1
- package/lib/validators/SwaggerV2TypeChecker.mjs +6 -28
- package/lib/validators/SwaggerV2TypeChecker.mjs.map +1 -1
- package/lib/validators/SwaggerV2TypeChecker2.mjs +42 -0
- package/lib/validators/SwaggerV2TypeChecker2.mjs.map +1 -0
- package/lib/validators/functional/_isBigintString.js.map +1 -1
- package/lib/validators/functional/_isBigintString.mjs +6 -10
- package/lib/validators/functional/_isBigintString.mjs.map +1 -1
- package/lib/validators/functional/_isBigintString2.mjs +25 -0
- package/lib/validators/functional/_isBigintString2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatByte.js.map +1 -1
- package/lib/validators/functional/_isFormatByte.mjs +6 -6
- package/lib/validators/functional/_isFormatByte.mjs.map +1 -1
- package/lib/validators/functional/_isFormatByte2.mjs +21 -0
- package/lib/validators/functional/_isFormatByte2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatDate.js.map +1 -1
- package/lib/validators/functional/_isFormatDate.mjs +6 -3
- package/lib/validators/functional/_isFormatDate.mjs.map +1 -1
- package/lib/validators/functional/_isFormatDate2.mjs +18 -0
- package/lib/validators/functional/_isFormatDate2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatDateTime.js.map +1 -1
- package/lib/validators/functional/_isFormatDateTime.mjs +6 -3
- package/lib/validators/functional/_isFormatDateTime.mjs.map +1 -1
- package/lib/validators/functional/_isFormatDateTime2.mjs +18 -0
- package/lib/validators/functional/_isFormatDateTime2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatDuration.js.map +1 -1
- package/lib/validators/functional/_isFormatDuration.mjs +6 -3
- package/lib/validators/functional/_isFormatDuration.mjs.map +1 -1
- package/lib/validators/functional/_isFormatDuration2.mjs +18 -0
- package/lib/validators/functional/_isFormatDuration2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatEmail.js.map +1 -1
- package/lib/validators/functional/_isFormatEmail.mjs +6 -3
- package/lib/validators/functional/_isFormatEmail.mjs.map +1 -1
- package/lib/validators/functional/_isFormatEmail2.mjs +18 -0
- package/lib/validators/functional/_isFormatEmail2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatHostname.js.map +1 -1
- package/lib/validators/functional/_isFormatHostname.mjs +6 -3
- package/lib/validators/functional/_isFormatHostname.mjs.map +1 -1
- package/lib/validators/functional/_isFormatHostname2.mjs +18 -0
- package/lib/validators/functional/_isFormatHostname2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatIdnEmail.js.map +1 -1
- package/lib/validators/functional/_isFormatIdnEmail.mjs +6 -3
- package/lib/validators/functional/_isFormatIdnEmail.mjs.map +1 -1
- package/lib/validators/functional/_isFormatIdnEmail2.mjs +18 -0
- package/lib/validators/functional/_isFormatIdnEmail2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatIdnHostname.js.map +1 -1
- package/lib/validators/functional/_isFormatIdnHostname.mjs +6 -3
- package/lib/validators/functional/_isFormatIdnHostname.mjs.map +1 -1
- package/lib/validators/functional/_isFormatIdnHostname2.mjs +18 -0
- package/lib/validators/functional/_isFormatIdnHostname2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatIpv4.js.map +1 -1
- package/lib/validators/functional/_isFormatIpv4.mjs +6 -3
- package/lib/validators/functional/_isFormatIpv4.mjs.map +1 -1
- package/lib/validators/functional/_isFormatIpv42.mjs +18 -0
- package/lib/validators/functional/_isFormatIpv42.mjs.map +1 -0
- package/lib/validators/functional/_isFormatIpv6.js.map +1 -1
- package/lib/validators/functional/_isFormatIpv6.mjs +6 -3
- package/lib/validators/functional/_isFormatIpv6.mjs.map +1 -1
- package/lib/validators/functional/_isFormatIpv62.mjs +18 -0
- package/lib/validators/functional/_isFormatIpv62.mjs.map +1 -0
- package/lib/validators/functional/_isFormatIri.js.map +1 -1
- package/lib/validators/functional/_isFormatIri.mjs +6 -3
- package/lib/validators/functional/_isFormatIri.mjs.map +1 -1
- package/lib/validators/functional/_isFormatIri2.mjs +18 -0
- package/lib/validators/functional/_isFormatIri2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatIriReference.js.map +1 -1
- package/lib/validators/functional/_isFormatIriReference.mjs +6 -3
- package/lib/validators/functional/_isFormatIriReference.mjs.map +1 -1
- package/lib/validators/functional/_isFormatIriReference2.mjs +18 -0
- package/lib/validators/functional/_isFormatIriReference2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatJsonPointer.js.map +1 -1
- package/lib/validators/functional/_isFormatJsonPointer.mjs +6 -3
- package/lib/validators/functional/_isFormatJsonPointer.mjs.map +1 -1
- package/lib/validators/functional/_isFormatJsonPointer2.mjs +18 -0
- package/lib/validators/functional/_isFormatJsonPointer2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatPassword.js.map +1 -1
- package/lib/validators/functional/_isFormatPassword.mjs +6 -2
- package/lib/validators/functional/_isFormatPassword.mjs.map +1 -1
- package/lib/validators/functional/_isFormatPassword2.mjs +17 -0
- package/lib/validators/functional/_isFormatPassword2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatRegex.js.map +1 -1
- package/lib/validators/functional/_isFormatRegex.mjs +6 -10
- package/lib/validators/functional/_isFormatRegex.mjs.map +1 -1
- package/lib/validators/functional/_isFormatRegex2.mjs +25 -0
- package/lib/validators/functional/_isFormatRegex2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatRelativeJsonPointer.js.map +1 -1
- package/lib/validators/functional/_isFormatRelativeJsonPointer.mjs +6 -3
- package/lib/validators/functional/_isFormatRelativeJsonPointer.mjs.map +1 -1
- package/lib/validators/functional/_isFormatRelativeJsonPointer2.mjs +18 -0
- package/lib/validators/functional/_isFormatRelativeJsonPointer2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatTime.js.map +1 -1
- package/lib/validators/functional/_isFormatTime.mjs +6 -3
- package/lib/validators/functional/_isFormatTime.mjs.map +1 -1
- package/lib/validators/functional/_isFormatTime2.mjs +18 -0
- package/lib/validators/functional/_isFormatTime2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatUri.js.map +1 -1
- package/lib/validators/functional/_isFormatUri.mjs +6 -4
- package/lib/validators/functional/_isFormatUri.mjs.map +1 -1
- package/lib/validators/functional/_isFormatUri2.mjs +19 -0
- package/lib/validators/functional/_isFormatUri2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatUriReference.js.map +1 -1
- package/lib/validators/functional/_isFormatUriReference.mjs +6 -3
- package/lib/validators/functional/_isFormatUriReference.mjs.map +1 -1
- package/lib/validators/functional/_isFormatUriReference2.mjs +18 -0
- package/lib/validators/functional/_isFormatUriReference2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatUriTemplate.js.map +1 -1
- package/lib/validators/functional/_isFormatUriTemplate.mjs +6 -3
- package/lib/validators/functional/_isFormatUriTemplate.mjs.map +1 -1
- package/lib/validators/functional/_isFormatUriTemplate2.mjs +18 -0
- package/lib/validators/functional/_isFormatUriTemplate2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatUrl.js.map +1 -1
- package/lib/validators/functional/_isFormatUrl.mjs +6 -3
- package/lib/validators/functional/_isFormatUrl.mjs.map +1 -1
- package/lib/validators/functional/_isFormatUrl2.mjs +18 -0
- package/lib/validators/functional/_isFormatUrl2.mjs.map +1 -0
- package/lib/validators/functional/_isFormatUuid.js.map +1 -1
- package/lib/validators/functional/_isFormatUuid.mjs +6 -3
- package/lib/validators/functional/_isFormatUuid.mjs.map +1 -1
- package/lib/validators/functional/_isFormatUuid2.mjs +18 -0
- package/lib/validators/functional/_isFormatUuid2.mjs.map +1 -0
- package/lib/validators/functional/_isUniqueItems.js.map +1 -1
- package/lib/validators/functional/_isUniqueItems.mjs +6 -136
- package/lib/validators/functional/_isUniqueItems.mjs.map +1 -1
- package/lib/validators/functional/_isUniqueItems2.mjs +151 -0
- package/lib/validators/functional/_isUniqueItems2.mjs.map +1 -0
- package/lib/validators/index.d.ts +1 -0
- package/lib/validators/index.js +0 -1
- package/lib/validators/index.js.map +1 -1
- package/lib/validators/index.mjs +7 -6
- package/lib/validators/index.mjs.map +1 -1
- package/lib/validators/index2.mjs +45 -0
- package/lib/validators/index2.mjs.map +1 -0
- package/lib/validators/internal/IOpenApiValidatorContext.mjs +6 -0
- package/lib/validators/internal/IOpenApiValidatorContext.mjs.map +1 -1
- package/lib/validators/internal/IOpenApiValidatorContext2.mjs +14 -0
- package/lib/validators/internal/IOpenApiValidatorContext2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiArrayValidator.js.map +1 -1
- package/lib/validators/internal/OpenApiArrayValidator.mjs +5 -44
- package/lib/validators/internal/OpenApiArrayValidator.mjs.map +1 -1
- package/lib/validators/internal/OpenApiArrayValidator2.mjs +45 -0
- package/lib/validators/internal/OpenApiArrayValidator2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiBooleanValidator.js.map +1 -1
- package/lib/validators/internal/OpenApiBooleanValidator.mjs +6 -7
- package/lib/validators/internal/OpenApiBooleanValidator.mjs.map +1 -1
- package/lib/validators/internal/OpenApiBooleanValidator2.mjs +21 -0
- package/lib/validators/internal/OpenApiBooleanValidator2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiConstantValidator.js.map +1 -1
- package/lib/validators/internal/OpenApiConstantValidator.mjs +6 -7
- package/lib/validators/internal/OpenApiConstantValidator.mjs.map +1 -1
- package/lib/validators/internal/OpenApiConstantValidator2.mjs +21 -0
- package/lib/validators/internal/OpenApiConstantValidator2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiIntegerValidator.js.map +1 -1
- package/lib/validators/internal/OpenApiIntegerValidator.mjs +6 -45
- package/lib/validators/internal/OpenApiIntegerValidator.mjs.map +1 -1
- package/lib/validators/internal/OpenApiIntegerValidator2.mjs +44 -0
- package/lib/validators/internal/OpenApiIntegerValidator2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiNumberValidator.js.map +1 -1
- package/lib/validators/internal/OpenApiNumberValidator.mjs +6 -45
- package/lib/validators/internal/OpenApiNumberValidator.mjs.map +1 -1
- package/lib/validators/internal/OpenApiNumberValidator2.mjs +44 -0
- package/lib/validators/internal/OpenApiNumberValidator2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiObjectValidator.js +6 -12
- package/lib/validators/internal/OpenApiObjectValidator.js.map +1 -1
- package/lib/validators/internal/OpenApiObjectValidator.mjs +5 -65
- package/lib/validators/internal/OpenApiObjectValidator.mjs.map +1 -1
- package/lib/validators/internal/OpenApiObjectValidator2.mjs +65 -0
- package/lib/validators/internal/OpenApiObjectValidator2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiOneOfValidator.js +20 -20
- package/lib/validators/internal/OpenApiOneOfValidator.js.map +1 -1
- package/lib/validators/internal/OpenApiOneOfValidator.mjs +5 -203
- package/lib/validators/internal/OpenApiOneOfValidator.mjs.map +1 -1
- package/lib/validators/internal/OpenApiOneOfValidator2.mjs +196 -0
- package/lib/validators/internal/OpenApiOneOfValidator2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiSchemaNamingRule.js.map +1 -1
- package/lib/validators/internal/OpenApiSchemaNamingRule.mjs +5 -118
- package/lib/validators/internal/OpenApiSchemaNamingRule.mjs.map +1 -1
- package/lib/validators/internal/OpenApiSchemaNamingRule2.mjs +134 -0
- package/lib/validators/internal/OpenApiSchemaNamingRule2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiStationValidator.js +2 -1
- package/lib/validators/internal/OpenApiStationValidator.js.map +1 -1
- package/lib/validators/internal/OpenApiStationValidator.mjs +5 -104
- package/lib/validators/internal/OpenApiStationValidator.mjs.map +1 -1
- package/lib/validators/internal/OpenApiStationValidator2.mjs +86 -0
- package/lib/validators/internal/OpenApiStationValidator2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiStringValidator.js.map +1 -1
- package/lib/validators/internal/OpenApiStringValidator.mjs +5 -82
- package/lib/validators/internal/OpenApiStringValidator.mjs.map +1 -1
- package/lib/validators/internal/OpenApiStringValidator2.mjs +105 -0
- package/lib/validators/internal/OpenApiStringValidator2.mjs.map +1 -0
- package/lib/validators/internal/OpenApiTupleValidator.js.map +1 -1
- package/lib/validators/internal/OpenApiTupleValidator.mjs +5 -43
- package/lib/validators/internal/OpenApiTupleValidator.mjs.map +1 -1
- package/lib/validators/internal/OpenApiTupleValidator2.mjs +43 -0
- package/lib/validators/internal/OpenApiTupleValidator2.mjs.map +1 -0
- package/package.json +8 -9
- package/src/converters/LlmSchemaConverter.ts +152 -33
- package/src/converters/OpenApiConverter.ts +375 -375
- package/src/converters/internal/OpenApiV3Downgrader.ts +381 -381
- package/src/converters/internal/OpenApiV3Upgrader.ts +494 -494
- package/src/converters/internal/OpenApiV3_1Downgrader.ts +318 -318
- package/src/converters/internal/OpenApiV3_1Upgrader.ts +713 -710
- package/src/converters/internal/OpenApiV3_2Upgrader.ts +342 -342
- package/src/converters/internal/SwaggerV2Downgrader.ts +450 -450
- package/src/converters/internal/SwaggerV2Upgrader.ts +547 -547
- package/src/http/HttpError.ts +114 -114
- package/src/http/HttpLlm.ts +169 -169
- package/src/http/HttpMigration.ts +94 -94
- package/src/http/internal/HttpMigrateApplicationComposer.ts +56 -56
- package/src/http/internal/HttpMigrateRouteComposer.ts +505 -505
- package/src/utils/LlmJson.ts +173 -173
- package/src/utils/Singleton.ts +0 -1
- package/src/utils/internal/OpenApiTypeCheckerBase.ts +2 -0
- package/src/utils/internal/coerceLlmArguments.ts +21 -3
- package/src/utils/internal/parseLenientJson.ts +919 -919
- package/src/validators/index.ts +0 -1
|
@@ -1,94 +1,94 @@
|
|
|
1
|
-
import {
|
|
2
|
-
IHttpConnection,
|
|
3
|
-
IHttpMigrateApplication,
|
|
4
|
-
IHttpMigrateRoute,
|
|
5
|
-
IHttpResponse,
|
|
6
|
-
OpenApi,
|
|
7
|
-
OpenApiV3,
|
|
8
|
-
OpenApiV3_1,
|
|
9
|
-
OpenApiV3_2,
|
|
10
|
-
SwaggerV2,
|
|
11
|
-
} from "@typia/interface";
|
|
12
|
-
|
|
13
|
-
import { OpenApiConverter } from "../converters/OpenApiConverter";
|
|
14
|
-
import { HttpMigrateApplicationComposer } from "./internal/HttpMigrateApplicationComposer";
|
|
15
|
-
import { HttpMigrateRouteFetcher } from "./internal/HttpMigrateRouteFetcher";
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* OpenAPI to HTTP migration utilities.
|
|
19
|
-
*
|
|
20
|
-
* `HttpMigration` converts OpenAPI documents into executable HTTP routes
|
|
21
|
-
* ({@link IHttpMigrateApplication}). Unlike {@link HttpLlm} which targets LLM
|
|
22
|
-
* function calling, this focuses on SDK/client code generation.
|
|
23
|
-
*
|
|
24
|
-
* Supports all OpenAPI versions (Swagger 2.0, OpenAPI 3.0, 3.1) through
|
|
25
|
-
* automatic conversion to normalized {@link OpenApi} format.
|
|
26
|
-
*
|
|
27
|
-
* Main functions:
|
|
28
|
-
*
|
|
29
|
-
* - {@link application}: Convert OpenAPI document to
|
|
30
|
-
* {@link IHttpMigrateApplication}
|
|
31
|
-
* - {@link execute}: Call a route and return response body
|
|
32
|
-
* - {@link propagate}: Call a route and return full HTTP response (including
|
|
33
|
-
* non-2xx)
|
|
34
|
-
*
|
|
35
|
-
* @author Jeongho Nam - https://github.com/samchon
|
|
36
|
-
*/
|
|
37
|
-
export namespace HttpMigration {
|
|
38
|
-
/**
|
|
39
|
-
* Convert OpenAPI document to migration application.
|
|
40
|
-
*
|
|
41
|
-
* @param document OpenAPI document (any version)
|
|
42
|
-
* @returns Migration application with callable routes
|
|
43
|
-
*/
|
|
44
|
-
export const application = (
|
|
45
|
-
document:
|
|
46
|
-
| OpenApi.IDocument
|
|
47
|
-
| SwaggerV2.IDocument
|
|
48
|
-
| OpenApiV3.IDocument
|
|
49
|
-
| OpenApiV3_1.IDocument
|
|
50
|
-
| OpenApiV3_2.IDocument,
|
|
51
|
-
): IHttpMigrateApplication =>
|
|
52
|
-
HttpMigrateApplicationComposer.compose(
|
|
53
|
-
OpenApiConverter.upgradeDocument(document),
|
|
54
|
-
);
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* Execute HTTP route.
|
|
58
|
-
*
|
|
59
|
-
* @param props Fetch properties
|
|
60
|
-
* @returns Response body
|
|
61
|
-
* @throws HttpError on non-2xx status
|
|
62
|
-
*/
|
|
63
|
-
export const execute = (props: IFetchProps): Promise<unknown> =>
|
|
64
|
-
HttpMigrateRouteFetcher.execute(props);
|
|
65
|
-
|
|
66
|
-
/**
|
|
67
|
-
* Execute HTTP route and return full response.
|
|
68
|
-
*
|
|
69
|
-
* @param props Fetch properties
|
|
70
|
-
* @returns Full HTTP response including non-2xx
|
|
71
|
-
*/
|
|
72
|
-
export const propagate = (props: IFetchProps): Promise<IHttpResponse> =>
|
|
73
|
-
HttpMigrateRouteFetcher.propagate(props);
|
|
74
|
-
|
|
75
|
-
/** Properties for HTTP route execution. */
|
|
76
|
-
export interface IFetchProps {
|
|
77
|
-
/** HTTP connection info. */
|
|
78
|
-
connection: IHttpConnection;
|
|
79
|
-
|
|
80
|
-
/** Route to execute. */
|
|
81
|
-
route: IHttpMigrateRoute;
|
|
82
|
-
|
|
83
|
-
/** Path parameters. */
|
|
84
|
-
parameters:
|
|
85
|
-
| Array<string | number | boolean | bigint | null>
|
|
86
|
-
| Record<string, string | number | boolean | bigint | null>;
|
|
87
|
-
|
|
88
|
-
/** Query parameters. */
|
|
89
|
-
query?: object | undefined;
|
|
90
|
-
|
|
91
|
-
/** Request body. */
|
|
92
|
-
body?: object | undefined;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
1
|
+
import {
|
|
2
|
+
IHttpConnection,
|
|
3
|
+
IHttpMigrateApplication,
|
|
4
|
+
IHttpMigrateRoute,
|
|
5
|
+
IHttpResponse,
|
|
6
|
+
OpenApi,
|
|
7
|
+
OpenApiV3,
|
|
8
|
+
OpenApiV3_1,
|
|
9
|
+
OpenApiV3_2,
|
|
10
|
+
SwaggerV2,
|
|
11
|
+
} from "@typia/interface";
|
|
12
|
+
|
|
13
|
+
import { OpenApiConverter } from "../converters/OpenApiConverter";
|
|
14
|
+
import { HttpMigrateApplicationComposer } from "./internal/HttpMigrateApplicationComposer";
|
|
15
|
+
import { HttpMigrateRouteFetcher } from "./internal/HttpMigrateRouteFetcher";
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* OpenAPI to HTTP migration utilities.
|
|
19
|
+
*
|
|
20
|
+
* `HttpMigration` converts OpenAPI documents into executable HTTP routes
|
|
21
|
+
* ({@link IHttpMigrateApplication}). Unlike {@link HttpLlm} which targets LLM
|
|
22
|
+
* function calling, this focuses on SDK/client code generation.
|
|
23
|
+
*
|
|
24
|
+
* Supports all OpenAPI versions (Swagger 2.0, OpenAPI 3.0, 3.1) through
|
|
25
|
+
* automatic conversion to normalized {@link OpenApi} format.
|
|
26
|
+
*
|
|
27
|
+
* Main functions:
|
|
28
|
+
*
|
|
29
|
+
* - {@link application}: Convert OpenAPI document to
|
|
30
|
+
* {@link IHttpMigrateApplication}
|
|
31
|
+
* - {@link execute}: Call a route and return response body
|
|
32
|
+
* - {@link propagate}: Call a route and return full HTTP response (including
|
|
33
|
+
* non-2xx)
|
|
34
|
+
*
|
|
35
|
+
* @author Jeongho Nam - https://github.com/samchon
|
|
36
|
+
*/
|
|
37
|
+
export namespace HttpMigration {
|
|
38
|
+
/**
|
|
39
|
+
* Convert OpenAPI document to migration application.
|
|
40
|
+
*
|
|
41
|
+
* @param document OpenAPI document (any version)
|
|
42
|
+
* @returns Migration application with callable routes
|
|
43
|
+
*/
|
|
44
|
+
export const application = (
|
|
45
|
+
document:
|
|
46
|
+
| OpenApi.IDocument
|
|
47
|
+
| SwaggerV2.IDocument
|
|
48
|
+
| OpenApiV3.IDocument
|
|
49
|
+
| OpenApiV3_1.IDocument
|
|
50
|
+
| OpenApiV3_2.IDocument,
|
|
51
|
+
): IHttpMigrateApplication =>
|
|
52
|
+
HttpMigrateApplicationComposer.compose(
|
|
53
|
+
OpenApiConverter.upgradeDocument(document),
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Execute HTTP route.
|
|
58
|
+
*
|
|
59
|
+
* @param props Fetch properties
|
|
60
|
+
* @returns Response body
|
|
61
|
+
* @throws HttpError on non-2xx status
|
|
62
|
+
*/
|
|
63
|
+
export const execute = (props: IFetchProps): Promise<unknown> =>
|
|
64
|
+
HttpMigrateRouteFetcher.execute(props);
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Execute HTTP route and return full response.
|
|
68
|
+
*
|
|
69
|
+
* @param props Fetch properties
|
|
70
|
+
* @returns Full HTTP response including non-2xx
|
|
71
|
+
*/
|
|
72
|
+
export const propagate = (props: IFetchProps): Promise<IHttpResponse> =>
|
|
73
|
+
HttpMigrateRouteFetcher.propagate(props);
|
|
74
|
+
|
|
75
|
+
/** Properties for HTTP route execution. */
|
|
76
|
+
export interface IFetchProps {
|
|
77
|
+
/** HTTP connection info. */
|
|
78
|
+
connection: IHttpConnection;
|
|
79
|
+
|
|
80
|
+
/** Route to execute. */
|
|
81
|
+
route: IHttpMigrateRoute;
|
|
82
|
+
|
|
83
|
+
/** Path parameters. */
|
|
84
|
+
parameters:
|
|
85
|
+
| Array<string | number | boolean | bigint | null>
|
|
86
|
+
| Record<string, string | number | boolean | bigint | null>;
|
|
87
|
+
|
|
88
|
+
/** Query parameters. */
|
|
89
|
+
query?: object | undefined;
|
|
90
|
+
|
|
91
|
+
/** Request body. */
|
|
92
|
+
body?: object | undefined;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
import {
|
|
2
|
-
IHttpMigrateApplication,
|
|
3
|
-
IHttpMigrateRoute,
|
|
4
|
-
OpenApi,
|
|
5
|
-
} from "@typia/interface";
|
|
6
|
-
|
|
7
|
-
import { EndpointUtil } from "../../utils/internal/EndpointUtil";
|
|
8
|
-
import { HttpMigrateRouteAccessor } from "./HttpMigrateRouteAccessor";
|
|
9
|
-
import { HttpMigrateRouteComposer } from "./HttpMigrateRouteComposer";
|
|
10
|
-
|
|
11
|
-
export namespace HttpMigrateApplicationComposer {
|
|
12
|
-
export const compose = (
|
|
13
|
-
document: OpenApi.IDocument,
|
|
14
|
-
): IHttpMigrateApplication => {
|
|
15
|
-
const errors: IHttpMigrateApplication.IError[] = [];
|
|
16
|
-
const entire: Array<IHttpMigrateRoute | null> = Object.entries({
|
|
17
|
-
...(document.paths ?? {}),
|
|
18
|
-
...(document.webhooks ?? {}),
|
|
19
|
-
})
|
|
20
|
-
.map(([path, collection]) =>
|
|
21
|
-
(["head", "get", "post", "put", "patch", "delete", "query"] as const)
|
|
22
|
-
.filter((method) => collection[method] !== undefined)
|
|
23
|
-
.map((method) => {
|
|
24
|
-
const operation: OpenApi.IOperation = collection[method]!;
|
|
25
|
-
const migrated: IHttpMigrateRoute | string[] =
|
|
26
|
-
HttpMigrateRouteComposer.compose({
|
|
27
|
-
document,
|
|
28
|
-
method,
|
|
29
|
-
path,
|
|
30
|
-
emendedPath: EndpointUtil.reJoinWithDecimalParameters(path),
|
|
31
|
-
operation,
|
|
32
|
-
});
|
|
33
|
-
if (Array.isArray(migrated)) {
|
|
34
|
-
errors.push({
|
|
35
|
-
method,
|
|
36
|
-
path,
|
|
37
|
-
operation: () => operation,
|
|
38
|
-
messages: migrated,
|
|
39
|
-
});
|
|
40
|
-
return null;
|
|
41
|
-
}
|
|
42
|
-
return migrated;
|
|
43
|
-
}),
|
|
44
|
-
)
|
|
45
|
-
.flat();
|
|
46
|
-
const operations: IHttpMigrateRoute[] = entire.filter(
|
|
47
|
-
(o): o is IHttpMigrateRoute => !!o,
|
|
48
|
-
);
|
|
49
|
-
HttpMigrateRouteAccessor.overwrite(operations);
|
|
50
|
-
return {
|
|
51
|
-
document: () => document,
|
|
52
|
-
routes: operations,
|
|
53
|
-
errors,
|
|
54
|
-
} satisfies IHttpMigrateApplication as IHttpMigrateApplication;
|
|
55
|
-
};
|
|
56
|
-
}
|
|
1
|
+
import {
|
|
2
|
+
IHttpMigrateApplication,
|
|
3
|
+
IHttpMigrateRoute,
|
|
4
|
+
OpenApi,
|
|
5
|
+
} from "@typia/interface";
|
|
6
|
+
|
|
7
|
+
import { EndpointUtil } from "../../utils/internal/EndpointUtil";
|
|
8
|
+
import { HttpMigrateRouteAccessor } from "./HttpMigrateRouteAccessor";
|
|
9
|
+
import { HttpMigrateRouteComposer } from "./HttpMigrateRouteComposer";
|
|
10
|
+
|
|
11
|
+
export namespace HttpMigrateApplicationComposer {
|
|
12
|
+
export const compose = (
|
|
13
|
+
document: OpenApi.IDocument,
|
|
14
|
+
): IHttpMigrateApplication => {
|
|
15
|
+
const errors: IHttpMigrateApplication.IError[] = [];
|
|
16
|
+
const entire: Array<IHttpMigrateRoute | null> = Object.entries({
|
|
17
|
+
...(document.paths ?? {}),
|
|
18
|
+
...(document.webhooks ?? {}),
|
|
19
|
+
})
|
|
20
|
+
.map(([path, collection]) =>
|
|
21
|
+
(["head", "get", "post", "put", "patch", "delete", "query"] as const)
|
|
22
|
+
.filter((method) => collection[method] !== undefined)
|
|
23
|
+
.map((method) => {
|
|
24
|
+
const operation: OpenApi.IOperation = collection[method]!;
|
|
25
|
+
const migrated: IHttpMigrateRoute | string[] =
|
|
26
|
+
HttpMigrateRouteComposer.compose({
|
|
27
|
+
document,
|
|
28
|
+
method,
|
|
29
|
+
path,
|
|
30
|
+
emendedPath: EndpointUtil.reJoinWithDecimalParameters(path),
|
|
31
|
+
operation,
|
|
32
|
+
});
|
|
33
|
+
if (Array.isArray(migrated)) {
|
|
34
|
+
errors.push({
|
|
35
|
+
method,
|
|
36
|
+
path,
|
|
37
|
+
operation: () => operation,
|
|
38
|
+
messages: migrated,
|
|
39
|
+
});
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
return migrated;
|
|
43
|
+
}),
|
|
44
|
+
)
|
|
45
|
+
.flat();
|
|
46
|
+
const operations: IHttpMigrateRoute[] = entire.filter(
|
|
47
|
+
(o): o is IHttpMigrateRoute => !!o,
|
|
48
|
+
);
|
|
49
|
+
HttpMigrateRouteAccessor.overwrite(operations);
|
|
50
|
+
return {
|
|
51
|
+
document: () => document,
|
|
52
|
+
routes: operations,
|
|
53
|
+
errors,
|
|
54
|
+
} satisfies IHttpMigrateApplication as IHttpMigrateApplication;
|
|
55
|
+
};
|
|
56
|
+
}
|