ts-openapi-codegen 2.0.0-beta.1 → 2.0.0-beta.11
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/README.md +151 -103
- package/README.rus.md +151 -103
- package/dist/cli/checkAndUpdateConfig/checkConfig.d.ts +2 -1
- package/dist/cli/checkAndUpdateConfig/checkConfig.d.ts.map +1 -1
- package/dist/cli/checkAndUpdateConfig/checkConfig.js +14 -6
- package/dist/cli/checkAndUpdateConfig/updateConfig.d.ts +2 -1
- package/dist/cli/checkAndUpdateConfig/updateConfig.d.ts.map +1 -1
- package/dist/cli/checkAndUpdateConfig/updateConfig.js +13 -5
- package/dist/cli/{generate/runGenerateOpenApi.d.ts → generateOpenApiClient/generateOpenApiClient.d.ts} +2 -2
- package/dist/cli/generateOpenApiClient/generateOpenApiClient.d.ts.map +1 -0
- package/dist/cli/{generate/runGenerateOpenApi.js → generateOpenApiClient/generateOpenApiClient.js} +31 -11
- package/dist/cli/index.js +31 -8
- package/dist/cli/initOpenApiConfig/Types.d.ts +4 -4
- package/dist/cli/initOpenApiConfig/Types.d.ts.map +1 -1
- package/dist/cli/initOpenApiConfig/init.d.ts +6 -0
- package/dist/cli/initOpenApiConfig/init.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/init.js +53 -0
- package/dist/cli/initOpenApiConfig/initConfig.d.ts +11 -0
- package/dist/cli/initOpenApiConfig/initConfig.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/initConfig.js +102 -0
- package/dist/cli/initOpenApiConfig/initCustomRequest.d.ts +3 -0
- package/dist/cli/initOpenApiConfig/initCustomRequest.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/initCustomRequest.js +23 -0
- package/dist/cli/initOpenApiConfig/utils/buildConfig.d.ts +21 -0
- package/dist/cli/initOpenApiConfig/utils/buildConfig.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/utils/buildConfig.js +107 -0
- package/dist/cli/initOpenApiConfig/utils/findSpecFiles.d.ts +8 -0
- package/dist/cli/initOpenApiConfig/utils/findSpecFiles.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/utils/findSpecFiles.js +40 -0
- package/dist/cli/initOpenApiConfig/utils/registerHandlebarTemplates.d.ts +3 -0
- package/dist/cli/initOpenApiConfig/utils/registerHandlebarTemplates.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/utils/registerHandlebarTemplates.js +53 -0
- package/dist/cli/initOpenApiConfig/utils/validateSpecFile.d.ts +7 -0
- package/dist/cli/initOpenApiConfig/utils/validateSpecFile.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/utils/validateSpecFile.js +23 -0
- package/dist/cli/initOpenApiConfig/utils/validateSpecFiles.d.ts +11 -0
- package/dist/cli/initOpenApiConfig/utils/validateSpecFiles.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/utils/validateSpecFiles.js +24 -0
- package/dist/cli/initOpenApiConfig/utils/writeConfigFile.d.ts +11 -0
- package/dist/cli/initOpenApiConfig/utils/writeConfigFile.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/utils/writeConfigFile.js +31 -0
- package/dist/cli/previewChanges/previewChanges.d.ts +8 -0
- package/dist/cli/previewChanges/previewChanges.d.ts.map +1 -0
- package/dist/cli/previewChanges/previewChanges.js +189 -0
- package/dist/cli/previewChanges/utils/compareFiles.d.ts +6 -0
- package/dist/cli/previewChanges/utils/compareFiles.d.ts.map +1 -0
- package/dist/cli/previewChanges/utils/compareFiles.js +50 -0
- package/dist/cli/previewChanges/utils/formatDiff.d.ts +6 -0
- package/dist/cli/previewChanges/utils/formatDiff.d.ts.map +1 -0
- package/dist/cli/previewChanges/utils/formatDiff.js +30 -0
- package/dist/cli/previewChanges/utils/isDirectoryEmpty.d.ts +5 -0
- package/dist/cli/previewChanges/utils/isDirectoryEmpty.d.ts.map +1 -0
- package/dist/cli/previewChanges/utils/isDirectoryEmpty.js +17 -0
- package/dist/cli/previewChanges/utils/readDirectoryRecursive.d.ts +5 -0
- package/dist/cli/previewChanges/utils/readDirectoryRecursive.d.ts.map +1 -0
- package/dist/cli/previewChanges/utils/readDirectoryRecursive.js +28 -0
- package/dist/cli/previewChanges/utils/updateOutputPaths.d.ts +10 -0
- package/dist/cli/previewChanges/utils/updateOutputPaths.d.ts.map +1 -0
- package/dist/cli/previewChanges/utils/updateOutputPaths.js +106 -0
- package/dist/cli/schemas/base.d.ts +22 -0
- package/dist/cli/schemas/base.d.ts.map +1 -0
- package/dist/cli/schemas/base.js +23 -0
- package/dist/cli/schemas/checkConfig.d.ts +6 -0
- package/dist/cli/schemas/checkConfig.d.ts.map +1 -0
- package/dist/cli/schemas/checkConfig.js +5 -0
- package/dist/cli/schemas/generate.d.ts +8 -0
- package/dist/cli/schemas/generate.d.ts.map +1 -0
- package/dist/cli/schemas/generate.js +45 -0
- package/dist/cli/schemas/index.d.ts +8 -0
- package/dist/cli/schemas/index.d.ts.map +1 -0
- package/dist/cli/schemas/index.js +22 -0
- package/dist/cli/schemas/init.d.ts +10 -0
- package/dist/cli/schemas/init.d.ts.map +1 -0
- package/dist/cli/schemas/init.js +11 -0
- package/dist/cli/schemas/previewChanges.d.ts +9 -0
- package/dist/cli/schemas/previewChanges.d.ts.map +1 -0
- package/dist/cli/schemas/previewChanges.js +11 -0
- package/dist/cli/schemas/updateConfig.d.ts +6 -0
- package/dist/cli/schemas/updateConfig.d.ts.map +1 -0
- package/dist/cli/schemas/updateConfig.js +5 -0
- package/dist/common/Consts.d.ts +5 -0
- package/dist/common/Consts.d.ts.map +1 -1
- package/dist/common/Consts.js +11 -2
- package/dist/common/LoggerMessages.js +1 -1
- package/dist/common/TRawOptions.d.ts +4 -36
- package/dist/common/TRawOptions.d.ts.map +1 -1
- package/dist/common/Validation/formatZodError.d.ts +10 -0
- package/dist/common/Validation/formatZodError.d.ts.map +1 -0
- package/dist/common/Validation/formatZodError.js +114 -0
- package/dist/common/Validation/index.d.ts +3 -0
- package/dist/common/Validation/index.d.ts.map +1 -0
- package/dist/common/Validation/index.js +18 -0
- package/dist/common/Validation/validateZodOptions.d.ts +27 -0
- package/dist/common/Validation/validateZodOptions.d.ts.map +1 -0
- package/dist/common/Validation/validateZodOptions.js +35 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans.js +20 -4
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.d.ts +6 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.js +8 -8
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedBase.d.ts +28 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedBase.d.ts.map +1 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedBase.js +25 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV1.d.ts +37 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV1.d.ts.map +1 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV1.js +37 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV2.d.ts +38 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV2.d.ts.map +1 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV2.js +34 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV3.d.ts +40 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV3.d.ts.map +1 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV3.js +36 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV4.d.ts +42 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV4.d.ts.map +1 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV4.js +41 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.d.ts +67 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.d.ts.map +1 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.js +37 -0
- package/dist/common/VersionedSchema/CommonSchemas.d.ts +61 -29
- package/dist/common/VersionedSchema/CommonSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/CommonSchemas.js +51 -61
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsMigrationPlan.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsMigrationPlan.js +9 -16
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV1.d.ts +25 -5
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV1.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV1.js +34 -17
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV2.d.ts +25 -5
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV2.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV2.js +28 -19
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV3.d.ts +25 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV3.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV3.js +29 -2
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV4.d.ts +25 -5
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV4.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV4.js +30 -14
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV5.d.ts +23 -5
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV5.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV5.js +33 -18
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsVersionedSchemas.d.ts +3 -2
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsVersionedSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsVersionedSchemas.js +18 -11
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsMigrationPlans.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsMigrationPlans.js +2 -5
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV1.d.ts +22 -5
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV1.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV1.js +30 -12
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV2.d.ts +22 -5
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV2.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV2.js +27 -13
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV3.d.ts +22 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV3.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV3.js +28 -2
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV4.d.ts +22 -5
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV4.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV4.js +31 -12
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsVersionedSchemas.d.ts +3 -2
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsVersionedSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsVersionedSchemas.js +15 -9
- package/dist/common/VersionedSchema/Types.d.ts +5 -5
- package/dist/common/VersionedSchema/Types.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/__mocks__/compatibilityCases.d.ts +16 -0
- package/dist/common/VersionedSchema/Utils/__mocks__/compatibilityCases.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/__mocks__/compatibilityCases.js +91 -0
- package/dist/common/VersionedSchema/Utils/__tests__/compareShapes.test.d.ts +2 -0
- package/dist/common/VersionedSchema/Utils/__tests__/compareShapes.test.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/__tests__/compareShapes.test.js +23 -0
- package/dist/common/VersionedSchema/Utils/__tests__/migrateDataToLatestSchemaVersion.test.d.ts +2 -0
- package/dist/common/VersionedSchema/Utils/__tests__/migrateDataToLatestSchemaVersion.test.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/__tests__/migrateDataToLatestSchemaVersion.test.js +75 -0
- package/dist/common/VersionedSchema/Utils/buildVersionedSchema.d.ts +12 -0
- package/dist/common/VersionedSchema/Utils/buildVersionedSchema.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/buildVersionedSchema.js +13 -0
- package/dist/common/VersionedSchema/Utils/compareShapes.d.ts +16 -0
- package/dist/common/VersionedSchema/Utils/compareShapes.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/compareShapes.js +30 -0
- package/dist/common/VersionedSchema/Utils/createFieldTransformationMigration.d.ts +32 -0
- package/dist/common/VersionedSchema/Utils/createFieldTransformationMigration.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/createFieldTransformationMigration.js +40 -0
- package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.d.ts +2 -1
- package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.js +5 -5
- package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.d.ts +2 -2
- package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.js +15 -7
- package/dist/common/VersionedSchema/Utils/getLatestVersionFromMigrationPlans.d.ts +16 -0
- package/dist/common/VersionedSchema/Utils/getLatestVersionFromMigrationPlans.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/getLatestVersionFromMigrationPlans.js +23 -0
- package/dist/common/VersionedSchema/Utils/getUniqueKeysFromSchemas.d.ts +2 -2
- package/dist/common/VersionedSchema/Utils/getUniqueKeysFromSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/getUniqueKeysFromSchemas.js +16 -3
- package/dist/common/VersionedSchema/Utils/getUniqueObjectKeys.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/getUniqueObjectKeys.js +19 -2
- package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.d.ts +2 -1
- package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.js +10 -9
- package/dist/common/VersionedSchema/refinements/dependentOptionsRefinement.d.ts +4 -0
- package/dist/common/VersionedSchema/refinements/dependentOptionsRefinement.d.ts.map +1 -0
- package/dist/common/VersionedSchema/refinements/dependentOptionsRefinement.js +43 -0
- package/dist/common/VersionedSchema/refinements/singleOrMultiRefinement.d.ts +4 -0
- package/dist/common/VersionedSchema/refinements/singleOrMultiRefinement.d.ts.map +1 -0
- package/dist/common/VersionedSchema/refinements/singleOrMultiRefinement.js +21 -0
- package/dist/common/defaultOptions.d.ts.map +1 -1
- package/dist/common/defaultOptions.js +4 -1
- package/dist/common/utils/__tests__/convertArrayToObject.test.js +10 -6
- package/dist/common/utils/convertArrayToObject.js +2 -2
- package/dist/common/utils/fileSystemHelpers.d.ts +3 -1
- package/dist/common/utils/fileSystemHelpers.d.ts.map +1 -1
- package/dist/common/utils/fileSystemHelpers.js +3 -0
- package/dist/core/Context.d.ts +25 -2
- package/dist/core/Context.d.ts.map +1 -1
- package/dist/core/Context.js +144 -4
- package/dist/core/OpenApiClient.d.ts.map +1 -1
- package/dist/core/OpenApiClient.js +60 -13
- package/dist/core/WriteClient.d.ts +13 -14
- package/dist/core/WriteClient.d.ts.map +1 -1
- package/dist/core/WriteClient.js +71 -24
- package/dist/core/__tests__/WriteClient.test.js +9 -2
- package/dist/core/api/v2/Parser.d.ts +1 -1
- package/dist/core/api/v2/Parser.d.ts.map +1 -1
- package/dist/core/api/v2/Parser.js +2 -2
- package/dist/core/api/v2/parser/getModel.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getModel.js +2 -5
- package/dist/core/api/v2/parser/getModelProperties.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getModelProperties.js +1 -3
- package/dist/core/api/v2/parser/getModels.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getModels.js +2 -4
- package/dist/core/api/v2/parser/getOperationParameter.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getOperationParameter.js +2 -5
- package/dist/core/api/v2/parser/getOperationParameters.js +1 -1
- package/dist/core/api/v2/parser/getOperationResponse.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getOperationResponse.js +1 -3
- package/dist/core/api/v2/parser/getOperationResponses.js +1 -1
- package/dist/core/api/v2/parser/getServices.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getServices.js +4 -3
- package/dist/core/api/v2/parser/getType.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getType.js +16 -9
- package/dist/core/api/v3/Parser.d.ts +1 -1
- package/dist/core/api/v3/Parser.d.ts.map +1 -1
- package/dist/core/api/v3/Parser.js +2 -2
- package/dist/core/api/v3/parser/getModel.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getModel.js +2 -5
- package/dist/core/api/v3/parser/getModelProperties.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getModelProperties.js +1 -3
- package/dist/core/api/v3/parser/getModels.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getModels.js +2 -4
- package/dist/core/api/v3/parser/getOperation.js +1 -1
- package/dist/core/api/v3/parser/getOperationParameter.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getOperationParameter.js +2 -5
- package/dist/core/api/v3/parser/getOperationParameters.js +1 -1
- package/dist/core/api/v3/parser/getOperationRequestBody.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getOperationRequestBody.js +1 -3
- package/dist/core/api/v3/parser/getOperationResponse.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getOperationResponse.js +1 -3
- package/dist/core/api/v3/parser/getOperationResponses.js +1 -1
- package/dist/core/api/v3/parser/getServices.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getServices.js +4 -3
- package/dist/core/api/v3/parser/getType.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getType.js +16 -9
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +2 -0
- package/dist/core/types/base/ClientArtifacts.model.d.ts +1 -1
- package/dist/core/types/base/ClientArtifacts.model.d.ts.map +1 -1
- package/dist/core/types/base/SimpleClientArtifacts.model.d.ts +1 -1
- package/dist/core/types/base/SimpleClientArtifacts.model.d.ts.map +1 -1
- package/dist/core/types/base/Templates.model.d.ts +32 -0
- package/dist/core/types/base/Templates.model.d.ts.map +1 -0
- package/dist/core/types/enums/EmptySchemaStrategy.enum.d.ts +6 -0
- package/dist/core/types/enums/EmptySchemaStrategy.enum.d.ts.map +1 -0
- package/dist/core/types/enums/EmptySchemaStrategy.enum.js +9 -0
- package/dist/core/types/enums/ValidationLibrary.enum.d.ts +8 -0
- package/dist/core/types/enums/ValidationLibrary.enum.d.ts.map +1 -0
- package/dist/core/types/enums/ValidationLibrary.enum.js +11 -0
- package/dist/core/utils/__mocks__/templates.d.ts +1 -1
- package/dist/core/utils/__mocks__/templates.d.ts.map +1 -1
- package/dist/core/utils/__mocks__/templates.js +5 -1
- package/dist/core/utils/__tests__/getRelativeModelPath.test.js +9 -3
- package/dist/core/utils/__tests__/isSubdirectory.test.js +2 -2
- package/dist/core/utils/__tests__/modelHelpers.test.d.ts +2 -0
- package/dist/core/utils/__tests__/modelHelpers.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/modelHelpers.test.js +151 -0
- package/dist/core/utils/__tests__/postProcessModelImports.test.d.ts +2 -0
- package/dist/core/utils/__tests__/postProcessModelImports.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/postProcessModelImports.test.js +67 -0
- package/dist/core/utils/__tests__/postProcessServiceImports.test.d.ts +2 -0
- package/dist/core/utils/__tests__/postProcessServiceImports.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/postProcessServiceImports.test.js +26 -0
- package/dist/core/utils/__tests__/registerHandlebarTemplates.test.js +2 -0
- package/dist/core/utils/__tests__/resolveRefPath.test.d.ts +2 -0
- package/dist/core/utils/__tests__/resolveRefPath.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/resolveRefPath.test.js +22 -0
- package/dist/core/utils/__tests__/serviceHelpers.test.d.ts +2 -0
- package/dist/core/utils/__tests__/serviceHelpers.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/serviceHelpers.test.js +121 -0
- package/dist/core/utils/__tests__/writeClientExecutor.test.d.ts +2 -0
- package/dist/core/utils/__tests__/writeClientExecutor.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/writeClientExecutor.test.js +20 -0
- package/dist/core/utils/__tests__/writeClientSchemas.test.js +4 -0
- package/dist/core/utils/getOpenApiSpec.d.ts +0 -6
- package/dist/core/utils/getOpenApiSpec.d.ts.map +1 -1
- package/dist/core/utils/getOpenApiSpec.js +26 -23
- package/dist/core/utils/modelHelpers.d.ts.map +1 -1
- package/dist/core/utils/modelHelpers.js +37 -3
- package/dist/core/utils/postProcessModelImports.d.ts.map +1 -1
- package/dist/core/utils/postProcessModelImports.js +14 -1
- package/dist/core/utils/postProcessServiceImports.d.ts.map +1 -1
- package/dist/core/utils/postProcessServiceImports.js +1 -2
- package/dist/core/utils/precompileTemplates.js +8 -0
- package/dist/core/utils/registerHandlebarHelpers.d.ts.map +1 -1
- package/dist/core/utils/registerHandlebarHelpers.js +110 -0
- package/dist/core/utils/registerHandlebarTemplates.d.ts +3 -27
- package/dist/core/utils/registerHandlebarTemplates.d.ts.map +1 -1
- package/dist/core/utils/registerHandlebarTemplates.js +97 -6
- package/dist/core/utils/resolveRefPath.d.ts.map +1 -1
- package/dist/core/utils/resolveRefPath.js +1 -4
- package/dist/core/utils/serviceHelpers.d.ts.map +1 -1
- package/dist/core/utils/serviceHelpers.js +32 -6
- package/dist/core/utils/stripNamespace.js +1 -1
- package/dist/core/utils/validateRawOptions.d.ts +3 -0
- package/dist/core/utils/validateRawOptions.d.ts.map +1 -0
- package/dist/core/utils/validateRawOptions.js +15 -0
- package/dist/core/utils/writeClientCore.d.ts +1 -1
- package/dist/core/utils/writeClientCore.d.ts.map +1 -1
- package/dist/core/utils/writeClientCore.js +7 -4
- package/dist/core/utils/writeClientCoreIndex.d.ts +1 -1
- package/dist/core/utils/writeClientCoreIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientExecutor.d.ts +13 -0
- package/dist/core/utils/writeClientExecutor.d.ts.map +1 -0
- package/dist/core/utils/writeClientExecutor.js +30 -0
- package/dist/core/utils/writeClientFullIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientFullIndex.js +1 -1
- package/dist/core/utils/writeClientModels.d.ts +1 -1
- package/dist/core/utils/writeClientModels.d.ts.map +1 -1
- package/dist/core/utils/writeClientModelsIndex.d.ts +1 -1
- package/dist/core/utils/writeClientModelsIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientSchemas.d.ts +7 -2
- package/dist/core/utils/writeClientSchemas.d.ts.map +1 -1
- package/dist/core/utils/writeClientSchemas.js +32 -20
- package/dist/core/utils/writeClientSchemasIndex.d.ts +1 -1
- package/dist/core/utils/writeClientSchemasIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientServices.d.ts +1 -1
- package/dist/core/utils/writeClientServices.d.ts.map +1 -1
- package/dist/core/utils/writeClientServicesIndex.d.ts +1 -1
- package/dist/core/utils/writeClientServicesIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientSimpleIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientSimpleIndex.js +1 -1
- package/dist/templatesCompiled/cli/customRequest.d.ts +11 -0
- package/dist/templatesCompiled/cli/customRequest.d.ts.map +1 -0
- package/dist/templatesCompiled/cli/customRequest.js +27 -0
- package/dist/templatesCompiled/cli/customRequestExecutor.d.ts +11 -0
- package/dist/templatesCompiled/cli/customRequestExecutor.d.ts.map +1 -0
- package/dist/templatesCompiled/cli/customRequestExecutor.js +27 -0
- package/dist/templatesCompiled/cli/openApiConfig.d.ts +2 -1
- package/dist/templatesCompiled/cli/openApiConfig.d.ts.map +1 -1
- package/dist/templatesCompiled/cli/openApiConfig.js +76 -4
- package/dist/templatesCompiled/client/core/ApiError.js +1 -1
- package/dist/templatesCompiled/client/core/CancelablePromise.d.ts +1 -0
- package/dist/templatesCompiled/client/core/CancelablePromise.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/CancelablePromise.js +9 -2
- package/dist/templatesCompiled/client/core/HttpStatusCode.d.ts +1 -0
- package/dist/templatesCompiled/client/core/HttpStatusCode.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/HttpStatusCode.js +9 -2
- package/dist/templatesCompiled/client/core/executor/createExecutorAdapter.d.ts +12 -0
- package/dist/templatesCompiled/client/core/executor/createExecutorAdapter.d.ts.map +1 -0
- package/dist/templatesCompiled/client/core/executor/createExecutorAdapter.js +32 -0
- package/dist/templatesCompiled/client/core/{legacy-request-adapter.d.ts → executor/requestExecutor.d.ts} +1 -1
- package/dist/templatesCompiled/client/core/executor/requestExecutor.d.ts.map +1 -0
- package/dist/templatesCompiled/client/core/executor/requestExecutor.js +18 -0
- package/dist/templatesCompiled/client/core/functions/catchErrors.js +1 -1
- package/dist/templatesCompiled/client/core/interceptors/apiErrorInterceptor.d.ts +8 -0
- package/dist/templatesCompiled/client/core/interceptors/apiErrorInterceptor.d.ts.map +1 -0
- package/dist/templatesCompiled/client/core/interceptors/apiErrorInterceptor.js +18 -0
- package/dist/templatesCompiled/client/core/{request-executor.d.ts → interceptors/interceptors.d.ts} +2 -1
- package/dist/templatesCompiled/client/core/interceptors/interceptors.d.ts.map +1 -0
- package/dist/templatesCompiled/client/core/interceptors/interceptors.js +18 -0
- package/dist/templatesCompiled/client/core/interceptors/withInterceptors.d.ts +8 -0
- package/dist/templatesCompiled/client/core/interceptors/withInterceptors.d.ts.map +1 -0
- package/dist/templatesCompiled/client/core/interceptors/withInterceptors.js +18 -0
- package/dist/templatesCompiled/client/exportClient.d.ts +10 -0
- package/dist/templatesCompiled/client/exportClient.d.ts.map +1 -0
- package/dist/templatesCompiled/client/exportClient.js +53 -0
- package/dist/templatesCompiled/client/exportService.js +1 -1
- package/dist/templatesCompiled/client/indexCore.js +2 -2
- package/dist/templatesCompiled/client/indexFull.d.ts +13 -9
- package/dist/templatesCompiled/client/indexFull.d.ts.map +1 -1
- package/dist/templatesCompiled/client/indexFull.js +72 -46
- package/dist/templatesCompiled/client/indexSimple.d.ts +1 -0
- package/dist/templatesCompiled/client/indexSimple.d.ts.map +1 -1
- package/dist/templatesCompiled/client/indexSimple.js +5 -1
- package/dist/templatesCompiled/client/joi/exportSchema.d.ts +11 -0
- package/dist/templatesCompiled/client/joi/exportSchema.d.ts.map +1 -0
- package/dist/templatesCompiled/client/joi/exportSchema.js +71 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchema.d.ts +22 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchema.d.ts.map +1 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchema.js +129 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaArray.d.ts +16 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaArray.d.ts.map +1 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaArray.js +84 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaComposition.d.ts +18 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaComposition.d.ts.map +1 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaComposition.js +96 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaDictionary.d.ts +14 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaDictionary.d.ts.map +1 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaDictionary.js +72 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaEnum.d.ts +14 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaEnum.d.ts.map +1 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaEnum.js +74 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaGeneric.d.ts +35 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaGeneric.d.ts.map +1 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaGeneric.js +201 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaInterface.d.ts +16 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaInterface.d.ts.map +1 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaInterface.js +77 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaReference.d.ts +9 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaReference.d.ts.map +1 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaReference.js +25 -0
- package/dist/templatesCompiled/client/jsonschema/exportSchema.d.ts +11 -0
- package/dist/templatesCompiled/client/jsonschema/exportSchema.d.ts.map +1 -0
- package/dist/templatesCompiled/client/jsonschema/exportSchema.js +69 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchema.d.ts +22 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchema.d.ts.map +1 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchema.js +129 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaArray.d.ts +16 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaArray.d.ts.map +1 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaArray.js +74 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaComposition.d.ts +16 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaComposition.d.ts.map +1 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaComposition.js +84 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaDictionary.d.ts +13 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaDictionary.d.ts.map +1 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaDictionary.js +56 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaEnum.d.ts +12 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaEnum.d.ts.map +1 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaEnum.js +49 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaGeneric.d.ts +29 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaGeneric.d.ts.map +1 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaGeneric.js +175 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaInterface.d.ts +17 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaInterface.d.ts.map +1 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaInterface.js +93 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaReference.d.ts +9 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaReference.d.ts.map +1 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaReference.js +25 -0
- package/dist/templatesCompiled/client/partials/exportComposition.d.ts +2 -0
- package/dist/templatesCompiled/client/partials/exportComposition.d.ts.map +1 -1
- package/dist/templatesCompiled/client/partials/exportComposition.js +17 -9
- package/dist/templatesCompiled/client/partials/parameters.js +1 -1
- package/dist/templatesCompiled/client/partials/serviceOption.d.ts +2 -4
- package/dist/templatesCompiled/client/partials/serviceOption.d.ts.map +1 -1
- package/dist/templatesCompiled/client/partials/serviceOption.js +32 -46
- package/dist/templatesCompiled/client/yup/exportSchema.d.ts +11 -0
- package/dist/templatesCompiled/client/yup/exportSchema.d.ts.map +1 -0
- package/dist/templatesCompiled/client/yup/exportSchema.js +73 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchema.d.ts +22 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchema.d.ts.map +1 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchema.js +129 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaArray.d.ts +16 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaArray.d.ts.map +1 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaArray.js +84 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaComposition.d.ts +18 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaComposition.d.ts.map +1 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaComposition.js +96 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaDictionary.d.ts +14 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaDictionary.d.ts.map +1 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaDictionary.js +72 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaEnum.d.ts +14 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaEnum.d.ts.map +1 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaEnum.js +74 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaGeneric.d.ts +34 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaGeneric.d.ts.map +1 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaGeneric.js +201 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaInterface.d.ts +16 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaInterface.d.ts.map +1 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaInterface.js +77 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaReference.d.ts +9 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaReference.d.ts.map +1 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaReference.js +25 -0
- package/dist/templatesCompiled/client/zod/exportSchema.d.ts +11 -0
- package/dist/templatesCompiled/client/zod/exportSchema.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/exportSchema.js +67 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchema.d.ts +22 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchema.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchema.js +129 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaArray.d.ts +13 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaArray.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaArray.js +51 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaComposition.d.ts +18 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaComposition.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaComposition.js +94 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaDictionary.d.ts +11 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaDictionary.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaDictionary.js +39 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaEnum.d.ts +15 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaEnum.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaEnum.js +86 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaGeneric.d.ts +34 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaGeneric.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaGeneric.js +193 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaInterface.d.ts +16 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaInterface.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaInterface.js +61 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaReference.d.ts +9 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaReference.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaReference.js +25 -0
- package/package.json +9 -4
- package/dist/cli/generate/runGenerateOpenApi.d.ts.map +0 -1
- package/dist/cli/initOpenApiConfig/Enums.d.ts +0 -5
- package/dist/cli/initOpenApiConfig/Enums.d.ts.map +0 -1
- package/dist/cli/initOpenApiConfig/Enums.js +0 -8
- package/dist/cli/initOpenApiConfig/runInitOpenapiConfig.d.ts +0 -3
- package/dist/cli/initOpenApiConfig/runInitOpenapiConfig.d.ts.map +0 -1
- package/dist/cli/initOpenApiConfig/runInitOpenapiConfig.js +0 -70
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsMigrationPlan.d.ts +0 -3
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsMigrationPlan.d.ts.map +0 -1
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsMigrationPlan.js +0 -28
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsSchemaV1.d.ts +0 -7
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsSchemaV1.d.ts.map +0 -1
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsSchemaV1.js +0 -42
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsVersionedSchemas.d.ts +0 -3
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsVersionedSchemas.d.ts.map +0 -1
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsVersionedSchemas.js +0 -10
- package/dist/common/VersionedSchema/Utils/getErrorFieldsFromValidation.d.ts +0 -6
- package/dist/common/VersionedSchema/Utils/getErrorFieldsFromValidation.d.ts.map +0 -1
- package/dist/common/VersionedSchema/Utils/getErrorFieldsFromValidation.js +0 -7
- package/dist/common/VersionedSchema/Utils/joiHandlers.d.ts +0 -6
- package/dist/common/VersionedSchema/Utils/joiHandlers.d.ts.map +0 -1
- package/dist/common/VersionedSchema/Utils/joiHandlers.js +0 -59
- package/dist/common/VersionedSchema/Utils/mergeObjectSchemas.d.ts +0 -3
- package/dist/common/VersionedSchema/Utils/mergeObjectSchemas.d.ts.map +0 -1
- package/dist/common/VersionedSchema/Utils/mergeObjectSchemas.js +0 -12
- package/dist/common/VersionedSchema/Utils/traverseObjectStructure.d.ts +0 -3
- package/dist/common/VersionedSchema/Utils/traverseObjectStructure.d.ts.map +0 -1
- package/dist/common/VersionedSchema/Utils/traverseObjectStructure.js +0 -31
- package/dist/common/utils/__tests__/__mock__/mockJoiSchema.d.ts +0 -19
- package/dist/common/utils/__tests__/__mock__/mockJoiSchema.d.ts.map +0 -1
- package/dist/common/utils/__tests__/__mock__/mockJoiSchema.js +0 -14
- package/dist/common/utils/__tests__/determineBestMatchingSchemaVersion.test.d.ts +0 -2
- package/dist/common/utils/__tests__/determineBestMatchingSchemaVersion.test.d.ts.map +0 -1
- package/dist/common/utils/__tests__/determineBestMatchingSchemaVersion.test.js +0 -38
- package/dist/common/utils/__tests__/getUniqueKeysFromSchemas.test.d.ts +0 -2
- package/dist/common/utils/__tests__/getUniqueKeysFromSchemas.test.d.ts.map +0 -1
- package/dist/common/utils/__tests__/getUniqueKeysFromSchemas.test.js +0 -20
- package/dist/common/utils/__tests__/mergeObjectSchemas.test.d.ts +0 -2
- package/dist/common/utils/__tests__/mergeObjectSchemas.test.d.ts.map +0 -1
- package/dist/common/utils/__tests__/mergeObjectSchemas.test.js +0 -35
- package/dist/common/utils/__tests__/migrationForMultiOptions.test.d.ts +0 -2
- package/dist/common/utils/__tests__/migrationForMultiOptions.test.d.ts.map +0 -1
- package/dist/common/utils/__tests__/migrationForMultiOptions.test.js +0 -112
- package/dist/common/utils/__tests__/migrationForOptions.test.d.ts +0 -2
- package/dist/common/utils/__tests__/migrationForOptions.test.d.ts.map +0 -1
- package/dist/common/utils/__tests__/migrationForOptions.test.js +0 -56
- package/dist/core/types/base/RefWithtype.model.d.ts +0 -11
- package/dist/core/types/base/RefWithtype.model.d.ts.map +0 -1
- package/dist/core/types/enums/TypeRef.enum.d.ts +0 -8
- package/dist/core/types/enums/TypeRef.enum.d.ts.map +0 -1
- package/dist/core/types/enums/TypeRef.enum.js +0 -11
- package/dist/core/utils/__tests__/getGatheringRefs.test.d.ts +0 -2
- package/dist/core/utils/__tests__/getGatheringRefs.test.d.ts.map +0 -1
- package/dist/core/utils/__tests__/getGatheringRefs.test.js +0 -26
- package/dist/core/utils/__tests__/getRefFromSchema.test.d.ts +0 -2
- package/dist/core/utils/__tests__/getRefFromSchema.test.d.ts.map +0 -1
- package/dist/core/utils/__tests__/getRefFromSchema.test.js +0 -167
- package/dist/core/utils/__tests__/refResolver.test.d.ts +0 -2
- package/dist/core/utils/__tests__/refResolver.test.d.ts.map +0 -1
- package/dist/core/utils/__tests__/refResolver.test.js +0 -55
- package/dist/core/utils/__tests__/resolveRefToImportPath.test.d.ts +0 -2
- package/dist/core/utils/__tests__/resolveRefToImportPath.test.d.ts.map +0 -1
- package/dist/core/utils/__tests__/resolveRefToImportPath.test.js +0 -376
- package/dist/core/utils/advancedDeduplicatePath.d.ts +0 -5
- package/dist/core/utils/advancedDeduplicatePath.d.ts.map +0 -1
- package/dist/core/utils/advancedDeduplicatePath.js +0 -29
- package/dist/core/utils/findCommonParent.d.ts +0 -7
- package/dist/core/utils/findCommonParent.d.ts.map +0 -1
- package/dist/core/utils/findCommonParent.js +0 -20
- package/dist/core/utils/getGatheringRefs.d.ts +0 -4
- package/dist/core/utils/getGatheringRefs.d.ts.map +0 -1
- package/dist/core/utils/getGatheringRefs.js +0 -68
- package/dist/core/utils/getRefFromSchema.d.ts +0 -3
- package/dist/core/utils/getRefFromSchema.d.ts.map +0 -1
- package/dist/core/utils/getRefFromSchema.js +0 -9
- package/dist/core/utils/isBoolean.d.ts +0 -2
- package/dist/core/utils/isBoolean.d.ts.map +0 -1
- package/dist/core/utils/isBoolean.js +0 -12
- package/dist/core/utils/isFileName.d.ts +0 -7
- package/dist/core/utils/isFileName.d.ts.map +0 -1
- package/dist/core/utils/isFileName.js +0 -30
- package/dist/core/utils/mapPathToTargetDirSafe.d.ts +0 -10
- package/dist/core/utils/mapPathToTargetDirSafe.d.ts.map +0 -1
- package/dist/core/utils/mapPathToTargetDirSafe.js +0 -48
- package/dist/core/utils/normalizeAllRefs.d.ts +0 -6
- package/dist/core/utils/normalizeAllRefs.d.ts.map +0 -1
- package/dist/core/utils/normalizeAllRefs.js +0 -35
- package/dist/core/utils/resolveRefToImportPath.d.ts +0 -13
- package/dist/core/utils/resolveRefToImportPath.d.ts.map +0 -1
- package/dist/core/utils/resolveRefToImportPath.js +0 -105
- package/dist/templatesCompiled/client/core/legacy-request-adapter.d.ts.map +0 -1
- package/dist/templatesCompiled/client/core/legacy-request-adapter.js +0 -18
- package/dist/templatesCompiled/client/core/request-executor.d.ts.map +0 -1
- package/dist/templatesCompiled/client/core/request-executor.js +0 -11
- /package/dist/core/types/base/{RefWithtype.model.js → Templates.model.js} +0 -0
package/README.rus.md
CHANGED
|
@@ -63,7 +63,6 @@ openapi generate --input ./spec.json --output ./dist
|
|
|
63
63
|
| `--useOptions` | - | boolean | `false` | Использовать опции вместо аргументов |
|
|
64
64
|
| `--useUnionTypes` | - | boolean | `false` | Использовать union типы вместо enums |
|
|
65
65
|
| `--excludeCoreServiceFiles` | - | boolean | `false` | Исключить генерацию core и сервисных файлов |
|
|
66
|
-
| `--includeSchemasFiles` | - | boolean | `false` | Включить генерацию схем валидации моделей |
|
|
67
66
|
| `--request` | - | string | - | Путь к пользовательскому файлу запросов |
|
|
68
67
|
| `--interfacePrefix` | - | string | `I` | Префикс для интерфейсов моделей |
|
|
69
68
|
| `--enumPrefix` | - | string | `E` | Префикс для enum моделей |
|
|
@@ -73,6 +72,8 @@ openapi generate --input ./spec.json --output ./dist
|
|
|
73
72
|
| `--useSeparatedIndexes` | - | boolean | `false` | Использовать отдельные index файлы для core, models, schemas и services |
|
|
74
73
|
| `--logLevel` | `-l` | string | `error` | Уровень логирования: `info`, `warn`, или `error` |
|
|
75
74
|
| `--logTarget` | `-t` | string | `console` | Цель логирования: `console` или `file` |
|
|
75
|
+
| `--validationLibrary` | - | string | `none` | Библиотека валидации для генерации схем: `none`, `zod`, `joi`, `yup`, или `jsonschema` |
|
|
76
|
+
| `--emptySchemaStrategy` | - | string | `keep` | Стратегия для пустых схем: `keep`, `semantic`, или `skip` |
|
|
76
77
|
|
|
77
78
|
**Примеры:**
|
|
78
79
|
```bash
|
|
@@ -92,7 +93,6 @@ openapi generate \
|
|
|
92
93
|
--httpClient fetch \
|
|
93
94
|
--useOptions \
|
|
94
95
|
--useUnionTypes \
|
|
95
|
-
--includeSchemasFiles \
|
|
96
96
|
--logLevel info
|
|
97
97
|
```
|
|
98
98
|
|
|
@@ -142,7 +142,6 @@ openapi init-openapi-config --openapi-config ./my-config.json
|
|
|
142
142
|
"useOptions": false,
|
|
143
143
|
"useUnionTypes": false,
|
|
144
144
|
"excludeCoreServiceFiles": false,
|
|
145
|
-
"includeSchemasFiles": false,
|
|
146
145
|
"interfacePrefix": "I",
|
|
147
146
|
"enumPrefix": "E",
|
|
148
147
|
"typePrefix": "T",
|
|
@@ -159,7 +158,6 @@ openapi init-openapi-config --openapi-config ./my-config.json
|
|
|
159
158
|
"output": "./dist",
|
|
160
159
|
"client": "fetch",
|
|
161
160
|
"excludeCoreServiceFiles": true,
|
|
162
|
-
"includeSchemasFiles": true,
|
|
163
161
|
"items": [
|
|
164
162
|
{
|
|
165
163
|
"input": "./first.yml"
|
|
@@ -200,7 +198,6 @@ openapi init-openapi-config --openapi-config ./my-config.json
|
|
|
200
198
|
| `useOptions` | boolean | `false` | Использовать опции вместо аргументов |
|
|
201
199
|
| `useUnionTypes` | boolean | `false` | Использовать union типы вместо enums |
|
|
202
200
|
| `excludeCoreServiceFiles` | boolean | `false` | Исключить генерацию core и сервисных файлов |
|
|
203
|
-
| `includeSchemasFiles` | boolean | `false` | Включить генерацию схем валидации моделей |
|
|
204
201
|
| `request` | string | - | Путь к пользовательскому файлу запросов |
|
|
205
202
|
| `interfacePrefix` | string | `I` | Префикс для интерфейсов моделей |
|
|
206
203
|
| `enumPrefix` | string | `E` | Префикс для enum моделей |
|
|
@@ -209,6 +206,8 @@ openapi init-openapi-config --openapi-config ./my-config.json
|
|
|
209
206
|
| `sortByRequired` | boolean | `false` | Расширенная стратегия сортировки для аргументов |
|
|
210
207
|
| `useSeparatedIndexes` | boolean | `false` | Использовать отдельные index файлы |
|
|
211
208
|
| `items` | array | - | Массив конфигураций (для формата multi-options) |
|
|
209
|
+
| `validationLibrary` | string | `none` | Библиотека валидации для генерации схем: `none`, `zod`, `joi`, `yup`, или `jsonschema` |
|
|
210
|
+
| `emptySchemaStrategy` | string | `keep` | Стратегия для пустых схем: `keep`, `semantic`, или `skip` |
|
|
212
211
|
|
|
213
212
|
**Примечание:** Вы можете использовать команду `init-openapi-config` для генерации шаблона файла конфигурации.
|
|
214
213
|
|
|
@@ -368,11 +367,19 @@ const order: Order = {
|
|
|
368
367
|
}
|
|
369
368
|
```
|
|
370
369
|
|
|
371
|
-
###
|
|
370
|
+
### Схемы проверки `--validationLibrary`
|
|
372
371
|
По умолчанию генератор OpenAPI экспортирует только интерфейсы для ваших моделей. Эти интерфейсы помогут вам во время
|
|
373
|
-
разработки, но не будут доступны в JavaScript во время выполнения. Однако
|
|
374
|
-
которые могут быть полезны во время выполнения, например: `maxLength` строки или `pattern` для сопоставления и т.д.
|
|
375
|
-
|
|
372
|
+
разработки, но не будут доступны в JavaScript во время выполнения. Однако OpenAPI позволяет определять свойства,
|
|
373
|
+
которые могут быть полезны во время выполнения, например: `maxLength` строки или `pattern` для сопоставления и т.д.
|
|
374
|
+
|
|
375
|
+
Параметр `--validationLibrary` позволяет генерировать схемы валидации времени выполнения с использованием популярных библиотек валидации:
|
|
376
|
+
- **none** (по умолчанию) - Схемы валидации не генерируются
|
|
377
|
+
- **zod** - Генерация схем валидации Zod
|
|
378
|
+
- **joi** - Генерация схем валидации Joi
|
|
379
|
+
- **yup** - Генерация схем валидации Yup
|
|
380
|
+
- **jsonschema** - Генерация схем валидации JSON Schema
|
|
381
|
+
|
|
382
|
+
Допустим, у нас есть следующая модель:
|
|
376
383
|
|
|
377
384
|
```json
|
|
378
385
|
{
|
|
@@ -406,77 +413,89 @@ const order: Order = {
|
|
|
406
413
|
}
|
|
407
414
|
```
|
|
408
415
|
|
|
409
|
-
|
|
416
|
+
**С Zod (`--validationLibrary zod`):**
|
|
410
417
|
|
|
411
|
-
```
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
418
|
+
```ts
|
|
419
|
+
import { z } from 'zod';
|
|
420
|
+
|
|
421
|
+
export const MyModelSchema = z.object({
|
|
422
|
+
key: z.string().max(64).regex(/^[a-zA-Z0-9_]*$/),
|
|
423
|
+
name: z.string().max(255),
|
|
424
|
+
enabled: z.boolean().readonly().optional(),
|
|
425
|
+
modified: z.string().datetime().readonly().optional(),
|
|
426
|
+
});
|
|
427
|
+
|
|
428
|
+
export type MyModel = z.infer<typeof MyModelSchema>;
|
|
429
|
+
|
|
430
|
+
export function validateMyModel(data: unknown): MyModel {
|
|
431
|
+
return MyModelSchema.parse(data);
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
export function safeValidateMyModel(data: unknown): { success: true; data: MyModel } | { success: false; error: z.ZodError } {
|
|
435
|
+
const result = MyModelSchema.safeParse(data);
|
|
436
|
+
if (result.success) {
|
|
437
|
+
return { success: true, data: result.data };
|
|
438
|
+
}
|
|
439
|
+
return { success: false, error: result.error };
|
|
417
440
|
}
|
|
418
441
|
```
|
|
419
442
|
|
|
420
|
-
|
|
421
|
-
если мы хотим создать форму, где пользователь может создать такую модель. В этой форме вы будете итерироваться
|
|
422
|
-
по свойствам для рендеринга полей формы на основе их типа и валидации ввода на основе свойства `maxLength`
|
|
423
|
-
или `pattern`. Для этого нам нужно где-то хранить эту информацию... Для этого мы можем использовать
|
|
424
|
-
флаг `--includeSchemasFiles` для генерации runtime модели рядом с обычным интерфейсом:
|
|
443
|
+
**С Joi (`--validationLibrary joi`):**
|
|
425
444
|
|
|
426
|
-
```
|
|
427
|
-
|
|
445
|
+
```ts
|
|
446
|
+
import Joi from 'joi';
|
|
447
|
+
|
|
448
|
+
export const MyModelSchema = Joi.object({
|
|
449
|
+
key: Joi.string().max(64).pattern(/^[a-zA-Z0-9_]*$/).required(),
|
|
450
|
+
name: Joi.string().max(255).required(),
|
|
451
|
+
enabled: Joi.boolean().readonly(),
|
|
452
|
+
modified: Joi.string().isoDate().readonly(),
|
|
453
|
+
});
|
|
454
|
+
```
|
|
455
|
+
|
|
456
|
+
**С Yup (`--validationLibrary yup`):**
|
|
457
|
+
|
|
458
|
+
```ts
|
|
459
|
+
import * as yup from 'yup';
|
|
460
|
+
|
|
461
|
+
export const MyModelSchema = yup.object({
|
|
462
|
+
key: yup.string().max(64).matches(/^[a-zA-Z0-9_]*$/).required(),
|
|
463
|
+
name: yup.string().max(255).required(),
|
|
464
|
+
enabled: yup.boolean().readonly(),
|
|
465
|
+
modified: yup.string().datetime().readonly(),
|
|
466
|
+
});
|
|
467
|
+
```
|
|
468
|
+
|
|
469
|
+
**С JSON Schema (`--validationLibrary jsonschema`):**
|
|
470
|
+
|
|
471
|
+
```ts
|
|
472
|
+
export const MyModelSchema = {
|
|
473
|
+
type: 'object',
|
|
474
|
+
required: ['key', 'name'],
|
|
428
475
|
properties: {
|
|
429
476
|
key: {
|
|
430
477
|
type: 'string',
|
|
431
|
-
isRequired: true,
|
|
432
478
|
maxLength: 64,
|
|
433
479
|
pattern: '^[a-zA-Z0-9_]*$',
|
|
434
480
|
},
|
|
435
481
|
name: {
|
|
436
482
|
type: 'string',
|
|
437
|
-
isRequired: true,
|
|
438
483
|
maxLength: 255,
|
|
439
484
|
},
|
|
440
485
|
enabled: {
|
|
441
486
|
type: 'boolean',
|
|
442
|
-
|
|
487
|
+
readOnly: true,
|
|
443
488
|
},
|
|
444
489
|
modified: {
|
|
445
490
|
type: 'string',
|
|
446
|
-
isReadOnly: true,
|
|
447
491
|
format: 'date-time',
|
|
492
|
+
readOnly: true,
|
|
448
493
|
},
|
|
449
494
|
},
|
|
450
495
|
};
|
|
451
496
|
```
|
|
452
497
|
|
|
453
|
-
Эти
|
|
454
|
-
и её свойств. Теперь мы можем использовать этот объект для генерации формы:
|
|
455
|
-
|
|
456
|
-
```typescript jsx
|
|
457
|
-
import { $MyModel } from './generated';
|
|
458
|
-
|
|
459
|
-
// Псевдокод для итерации по свойствам и возврата поля формы
|
|
460
|
-
// поле формы может быть абстрактным компонентом, который рендерит правильный
|
|
461
|
-
// тип поля и правила валидации на основе заданного ввода.
|
|
462
|
-
const formFields = Object.entries($MyModel.properties).map(([key, value]) => (
|
|
463
|
-
<FormField
|
|
464
|
-
name={key}
|
|
465
|
-
type={value.type}
|
|
466
|
-
format={value.format}
|
|
467
|
-
maxLength={value.maxLength}
|
|
468
|
-
pattern={value.pattern}
|
|
469
|
-
isReadOnly={value.isReadOnly}
|
|
470
|
-
/>
|
|
471
|
-
));
|
|
472
|
-
|
|
473
|
-
const MyForm = () => (
|
|
474
|
-
<form>
|
|
475
|
-
{formFields}
|
|
476
|
-
</form>
|
|
477
|
-
);
|
|
478
|
-
|
|
479
|
-
```
|
|
498
|
+
Эти схемы валидации могут быть использованы для генерации форм, валидации ввода и проверки типов во время выполнения в вашем приложении.
|
|
480
499
|
|
|
481
500
|
### Отменяемый promise `--useCancelableRequest`
|
|
482
501
|
По умолчанию генератор OpenAPI генерирует сервисы для доступа к API, которые используют неотменяемые запросы. Поэтому мы добавили возможность переключить генератор на генерацию отменяемых API запросов. Для этого используйте флаг `--useCancelableRequest`.
|
|
@@ -509,79 +528,110 @@ export function request<T>(config: TOpenAPIConfig, options: ApiRequestOptions):
|
|
|
509
528
|
}
|
|
510
529
|
```
|
|
511
530
|
|
|
512
|
-
###
|
|
531
|
+
### RequestExecutor
|
|
532
|
+
|
|
533
|
+
Начиная с версии **2.0.0**, сгенерированные сервисы используют интерфейс `RequestExecutor`
|
|
534
|
+
вместо прямых вызовов core-функции `request`.
|
|
535
|
+
|
|
536
|
+
`RequestExecutor` — это единая точка интеграции HTTP-логики, отвечающая за выполнение запросов
|
|
537
|
+
и расширение поведения клиента. Он позволяет:
|
|
538
|
+
- использовать любой транспорт (fetch / axios / xhr / custom);
|
|
539
|
+
- централизованно обрабатывать запросы, ответы и ошибки;
|
|
540
|
+
- расширять поведение клиента без изменения сгенерированных сервисов.
|
|
513
541
|
|
|
514
|
-
|
|
542
|
+
#### Interceptors
|
|
515
543
|
|
|
516
|
-
|
|
544
|
+
`RequestExecutor` поддерживает **interceptors**, которые позволяют внедрять дополнительную
|
|
545
|
+
логику на разных этапах жизненного цикла запроса:
|
|
517
546
|
|
|
518
|
-
|
|
547
|
+
- `onRequest` — модификация запроса перед отправкой (headers, auth, логирование);
|
|
548
|
+
- `onResponse` — обработка успешных ответов;
|
|
549
|
+
- `onError` — централизованная обработка ошибок.
|
|
550
|
+
|
|
551
|
+
Interceptors применяются на уровне executor’а и автоматически используются всеми
|
|
552
|
+
сгенерированными сервисами.
|
|
553
|
+
|
|
554
|
+
```ts
|
|
555
|
+
import { createClient } from './generated';
|
|
556
|
+
|
|
557
|
+
const client = createClient({
|
|
558
|
+
interceptors: {
|
|
559
|
+
onRequest: [
|
|
560
|
+
(config) => ({
|
|
561
|
+
...config,
|
|
562
|
+
headers: {
|
|
563
|
+
...config.headers,
|
|
564
|
+
Authorization: 'Bearer token',
|
|
565
|
+
},
|
|
566
|
+
}),
|
|
567
|
+
],
|
|
568
|
+
onError: [
|
|
569
|
+
(error) => {
|
|
570
|
+
console.error(error);
|
|
571
|
+
throw error;
|
|
572
|
+
},
|
|
573
|
+
],
|
|
574
|
+
},
|
|
575
|
+
});
|
|
576
|
+
```
|
|
577
|
+
|
|
578
|
+
#### Пользовательская реализация RequestExecutor с interceptors
|
|
579
|
+
|
|
580
|
+
Пользовательский `RequestExecutor` может быть использован вместе с interceptors.
|
|
581
|
+
В этом случае executor отвечает только за транспорт и выполнение запроса,
|
|
582
|
+
а interceptors — за расширяемую бизнес-логику (авторизация, логирование, обработка ошибок).
|
|
519
583
|
|
|
520
584
|
```ts
|
|
521
|
-
import type { RequestExecutor, RequestConfig } from './generated/core/
|
|
585
|
+
import type { RequestExecutor, RequestConfig } from './generated/core/executor/requestExecutor';
|
|
586
|
+
import { withInterceptors } from './generated/core/interceptors/withInterceptors';
|
|
522
587
|
import { SimpleService } from './generated/services/SimpleService';
|
|
523
588
|
|
|
524
|
-
// Определите свой тип опций (опционально)
|
|
525
589
|
interface MyCustomOptions {
|
|
526
590
|
timeout?: number;
|
|
527
|
-
retries?: number;
|
|
528
591
|
}
|
|
529
592
|
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
async request<TResponse>(config: RequestConfig, options?: MyCustomOptions): Promise<TResponse> {
|
|
533
|
-
// Ваша пользовательская логика запросов здесь
|
|
593
|
+
const baseExecutor: RequestExecutor<MyCustomOptions> = {
|
|
594
|
+
async request<T>(config: RequestConfig, options?: MyCustomOptions): Promise<T> {
|
|
534
595
|
const response = await fetch(config.url, {
|
|
535
596
|
method: config.method,
|
|
536
597
|
headers: config.headers,
|
|
537
598
|
body: config.body ? JSON.stringify(config.body) : undefined,
|
|
538
|
-
signal: options?.timeout
|
|
599
|
+
signal: options?.timeout
|
|
600
|
+
? AbortSignal.timeout(options.timeout)
|
|
601
|
+
: undefined,
|
|
539
602
|
});
|
|
540
|
-
|
|
603
|
+
|
|
541
604
|
if (!response.ok) {
|
|
542
|
-
throw new Error(`Request failed: ${response.
|
|
605
|
+
throw new Error(`Request failed: ${response.status}`);
|
|
543
606
|
}
|
|
544
|
-
|
|
607
|
+
|
|
545
608
|
return response.json();
|
|
546
609
|
},
|
|
547
610
|
};
|
|
548
611
|
|
|
549
|
-
//
|
|
550
|
-
const
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
// Опционально, вы можете мапить пользовательские опции в ApiRequestOptions
|
|
567
|
-
interface XHROptions {
|
|
568
|
-
timeout?: number;
|
|
569
|
-
}
|
|
570
|
-
|
|
571
|
-
const executorWithOptions = createLegacyExecutor<XHROptions>(OpenAPI, (options) => {
|
|
572
|
-
// Мапьте ваши пользовательские опции в ApiRequestOptions при необходимости
|
|
573
|
-
return {
|
|
574
|
-
// Добавьте любые поля ApiRequestOptions на основе options
|
|
575
|
-
};
|
|
612
|
+
// Оборачиваем executor interceptors
|
|
613
|
+
const executor = withInterceptors(baseExecutor, {
|
|
614
|
+
onRequest: [
|
|
615
|
+
(config) => ({
|
|
616
|
+
...config,
|
|
617
|
+
headers: {
|
|
618
|
+
...config.headers,
|
|
619
|
+
Authorization: 'Bearer token',
|
|
620
|
+
},
|
|
621
|
+
}),
|
|
622
|
+
],
|
|
623
|
+
onError: [
|
|
624
|
+
(error) => {
|
|
625
|
+
console.error(error);
|
|
626
|
+
throw error;
|
|
627
|
+
},
|
|
628
|
+
],
|
|
576
629
|
});
|
|
577
630
|
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
await simpleService.getCallWithoutParametersAndResponse();
|
|
631
|
+
const service = new SimpleService(executor);
|
|
632
|
+
await service.getCallWithoutParametersAndResponse({ timeout: 5000 });
|
|
581
633
|
```
|
|
582
634
|
|
|
583
|
-
**Примечание:** Опция --request по-прежнему работает для кастомизации core-функции request. Сгенерированный legacy-request-adapter автоматически будет использовать вашу пользовательскую реализацию request при создании адаптера.
|
|
584
|
-
|
|
585
635
|
### Стратегия сортировки аргументов функций `--sortByRequired`
|
|
586
636
|
По умолчанию генератор OpenAPI сортирует параметры сервисных функций согласно упрощенной схеме. Если вам нужна более строгая опция сортировки, используйте флаг `--sortByRequired`. Упрощенная опция сортировки похожа на ту, что использовалась в версии 0.2.3 генератора OpenAPI. Этот флаг позволяет обновиться до новой версии генератора, если вы "застряли" на версии 0.2.3.
|
|
587
637
|
|
|
@@ -794,5 +844,3 @@ npm install form-data --save-dev
|
|
|
794
844
|
[librariesio-image]: https://img.shields.io/librariesio/github/ozonophore/openapi-codegen
|
|
795
845
|
[lines-image]: https://img.shields.io/tokei/lines/github/ozonophore/openapi-codegen
|
|
796
846
|
|
|
797
|
-
|
|
798
|
-
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { OptionValues } from 'commander';
|
|
1
2
|
/**
|
|
2
3
|
* Проверяет конфигурационный файл на корректность и актуальность.
|
|
3
4
|
* Если обнаружены проблемы, предлагает действия для их исправления.
|
|
@@ -8,5 +9,5 @@
|
|
|
8
9
|
* @example
|
|
9
10
|
* await checkConfig('./openapi-config.json');
|
|
10
11
|
*/
|
|
11
|
-
export declare function checkConfig(
|
|
12
|
+
export declare function checkConfig(options: OptionValues): Promise<void>;
|
|
12
13
|
//# sourceMappingURL=checkConfig.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkConfig.d.ts","sourceRoot":"","sources":["../../../src/cli/checkAndUpdateConfig/checkConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"checkConfig.d.ts","sourceRoot":"","sources":["../../../src/cli/checkAndUpdateConfig/checkConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAUzC;;;;;;;;;GASG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CtE"}
|
|
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.checkConfig = checkConfig;
|
|
4
4
|
const Consts_1 = require("../../common/Consts");
|
|
5
5
|
const loadConfigIfExists_1 = require("../../common/utils/loadConfigIfExists");
|
|
6
|
+
const validateZodOptions_1 = require("../../common/Validation/validateZodOptions");
|
|
7
|
+
const schemas_1 = require("../schemas");
|
|
6
8
|
const constants_1 = require("./constants");
|
|
7
9
|
const selectConfigAction_1 = require("./utils/selectConfigAction");
|
|
8
10
|
const validateAndMigrateConfigData_1 = require("./utils/validateAndMigrateConfigData");
|
|
@@ -16,20 +18,26 @@ const validateAndMigrateConfigData_1 = require("./utils/validateAndMigrateConfig
|
|
|
16
18
|
* @example
|
|
17
19
|
* await checkConfig('./openapi-config.json');
|
|
18
20
|
*/
|
|
19
|
-
async function checkConfig(
|
|
20
|
-
const
|
|
21
|
+
async function checkConfig(options) {
|
|
22
|
+
const validationResult = (0, validateZodOptions_1.validateZodOptions)(schemas_1.checkConfigOptionsSchema, options);
|
|
23
|
+
if (!validationResult.success) {
|
|
24
|
+
Consts_1.APP_LOGGER.error(validationResult.errors.join('\n'));
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
27
|
+
const validatedOptions = validationResult.data;
|
|
28
|
+
const configData = (0, loadConfigIfExists_1.loadConfigIfExists)(validatedOptions.openapiConfig);
|
|
21
29
|
if (!configData) {
|
|
22
|
-
Consts_1.APP_LOGGER.error(`${constants_1.ERROR_MESSAGES.FILE_NOT_FOUND} ${
|
|
30
|
+
Consts_1.APP_LOGGER.error(`${constants_1.ERROR_MESSAGES.FILE_NOT_FOUND} ${validatedOptions.openapiConfig || ''}`);
|
|
23
31
|
return;
|
|
24
32
|
}
|
|
25
33
|
try {
|
|
26
34
|
const { isActualConfigVersion, hasDefaultValues, migratedData } = (0, validateAndMigrateConfigData_1.validateAndMigrateConfigData)(configData);
|
|
27
|
-
Consts_1.APP_LOGGER.info(constants_1.SUCCESS_MESSAGES.CONFIG_VALID(
|
|
35
|
+
Consts_1.APP_LOGGER.info(constants_1.SUCCESS_MESSAGES.CONFIG_VALID(validatedOptions.openapiConfig || ''));
|
|
28
36
|
// Если версия не актуальна, предложить обновление
|
|
29
37
|
if (!isActualConfigVersion) {
|
|
30
38
|
await (0, selectConfigAction_1.selectConfigAction)({
|
|
31
39
|
migratedData,
|
|
32
|
-
configPath,
|
|
40
|
+
configPath: validatedOptions.openapiConfig || '',
|
|
33
41
|
warningMessage: 'Ваша версия конфигурации устарела и нуждается в обновлении.',
|
|
34
42
|
actionChoices: constants_1.ACTION_FOR_CONFIG_DATA_OPTIONS,
|
|
35
43
|
});
|
|
@@ -39,7 +47,7 @@ async function checkConfig(configPath) {
|
|
|
39
47
|
if (hasDefaultValues) {
|
|
40
48
|
await (0, selectConfigAction_1.selectConfigAction)({
|
|
41
49
|
migratedData,
|
|
42
|
-
configPath,
|
|
50
|
+
configPath: validatedOptions.openapiConfig || '',
|
|
43
51
|
warningMessage: 'В вашей конфигурации есть значения по умолчанию, которые можно удалить.',
|
|
44
52
|
actionChoices: constants_1.ACTION_FOR_CONFIG_DATA_OPTIONS,
|
|
45
53
|
});
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { OptionValues } from 'commander';
|
|
1
2
|
/**
|
|
2
3
|
* Обновляет конфигурационный файл до актуальной версии.
|
|
3
4
|
* Выполняет миграцию данных при необходимости.
|
|
@@ -8,5 +9,5 @@
|
|
|
8
9
|
* @example
|
|
9
10
|
* await updateConfig('./openapi-config.json');
|
|
10
11
|
*/
|
|
11
|
-
export declare function updateConfig(
|
|
12
|
+
export declare function updateConfig(options: OptionValues): Promise<void>;
|
|
12
13
|
//# sourceMappingURL=updateConfig.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateConfig.d.ts","sourceRoot":"","sources":["../../../src/cli/checkAndUpdateConfig/updateConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"updateConfig.d.ts","sourceRoot":"","sources":["../../../src/cli/checkAndUpdateConfig/updateConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAUzC;;;;;;;;;GASG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAgCvE"}
|
|
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.updateConfig = updateConfig;
|
|
4
4
|
const Consts_1 = require("../../common/Consts");
|
|
5
5
|
const loadConfigIfExists_1 = require("../../common/utils/loadConfigIfExists");
|
|
6
|
+
const validateZodOptions_1 = require("../../common/Validation/validateZodOptions");
|
|
7
|
+
const schemas_1 = require("../schemas");
|
|
6
8
|
const constants_1 = require("./constants");
|
|
7
9
|
const validateAndMigrateConfigData_1 = require("./utils/validateAndMigrateConfigData");
|
|
8
10
|
const writeConfigFile_1 = require("./utils/writeConfigFile");
|
|
@@ -16,21 +18,27 @@ const writeConfigFile_1 = require("./utils/writeConfigFile");
|
|
|
16
18
|
* @example
|
|
17
19
|
* await updateConfig('./openapi-config.json');
|
|
18
20
|
*/
|
|
19
|
-
async function updateConfig(
|
|
20
|
-
const
|
|
21
|
+
async function updateConfig(options) {
|
|
22
|
+
const validationResult = (0, validateZodOptions_1.validateZodOptions)(schemas_1.updateConfigOptionsSchema, options);
|
|
23
|
+
if (!validationResult.success) {
|
|
24
|
+
Consts_1.APP_LOGGER.error(validationResult.errors.join('\n'));
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
27
|
+
const validatedOptions = validationResult.data;
|
|
28
|
+
const configData = (0, loadConfigIfExists_1.loadConfigIfExists)(validatedOptions.openapiConfig);
|
|
21
29
|
if (!configData) {
|
|
22
|
-
Consts_1.APP_LOGGER.error(`${constants_1.ERROR_MESSAGES.FILE_NOT_FOUND} ${
|
|
30
|
+
Consts_1.APP_LOGGER.error(`${constants_1.ERROR_MESSAGES.FILE_NOT_FOUND} ${validatedOptions.openapiConfig}`);
|
|
23
31
|
return;
|
|
24
32
|
}
|
|
25
33
|
try {
|
|
26
34
|
const { isActualConfigVersion, migratedData } = (0, validateAndMigrateConfigData_1.validateAndMigrateConfigData)(configData);
|
|
27
35
|
if (isActualConfigVersion) {
|
|
28
|
-
Consts_1.APP_LOGGER.info(constants_1.SUCCESS_MESSAGES.CONFIG_UP_TO_DATE(
|
|
36
|
+
Consts_1.APP_LOGGER.info(constants_1.SUCCESS_MESSAGES.CONFIG_UP_TO_DATE(validatedOptions.openapiConfig || ''));
|
|
29
37
|
}
|
|
30
38
|
else {
|
|
31
39
|
await (0, writeConfigFile_1.writeConfigFile)({
|
|
32
40
|
data: migratedData,
|
|
33
|
-
configPath,
|
|
41
|
+
configPath: validatedOptions.openapiConfig || '',
|
|
34
42
|
isUpdating: true,
|
|
35
43
|
});
|
|
36
44
|
}
|
|
@@ -3,5 +3,5 @@ import { OptionValues } from 'commander';
|
|
|
3
3
|
* Запускает генерацию OpenAPI клиента
|
|
4
4
|
* Поддерживает как конфиг-файл, так и параметры из CLI
|
|
5
5
|
*/
|
|
6
|
-
export declare function
|
|
7
|
-
//# sourceMappingURL=
|
|
6
|
+
export declare function generateOpenApiClient(options: OptionValues): Promise<void>;
|
|
7
|
+
//# sourceMappingURL=generateOpenApiClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateOpenApiClient.d.ts","sourceRoot":"","sources":["../../../src/cli/generateOpenApiClient/generateOpenApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAgBzC;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA6DhF"}
|
package/dist/cli/{generate/runGenerateOpenApi.js → generateOpenApiClient/generateOpenApiClient.js}
RENAMED
|
@@ -33,34 +33,54 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.
|
|
36
|
+
exports.generateOpenApiClient = generateOpenApiClient;
|
|
37
37
|
const Consts_1 = require("../../common/Consts");
|
|
38
38
|
const defaultOptions_1 = require("../../common/defaultOptions");
|
|
39
39
|
const Enums_1 = require("../../common/Enums");
|
|
40
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
40
41
|
const convertArrayToObject_1 = require("../../common/utils/convertArrayToObject");
|
|
41
42
|
const loadConfigIfExists_1 = require("../../common/utils/loadConfigIfExists");
|
|
43
|
+
const validateZodOptions_1 = require("../../common/Validation/validateZodOptions");
|
|
42
44
|
const AllMigrationPlans_1 = require("../../common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans");
|
|
43
45
|
const AllVersionedSchemas_1 = require("../../common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas");
|
|
44
46
|
const migrateDataToLatestSchemaVersion_1 = require("../../common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion");
|
|
45
47
|
const OpenAPI = __importStar(require("../../core"));
|
|
48
|
+
const schemas_1 = require("../schemas");
|
|
46
49
|
/**
|
|
47
50
|
* Запускает генерацию OpenAPI клиента
|
|
48
51
|
* Поддерживает как конфиг-файл, так и параметры из CLI
|
|
49
52
|
*/
|
|
50
|
-
async function
|
|
53
|
+
async function generateOpenApiClient(options) {
|
|
51
54
|
const { openapiConfig, ...clientOptions } = options;
|
|
52
55
|
try {
|
|
53
|
-
const
|
|
56
|
+
const validationResult = (0, validateZodOptions_1.validateZodOptions)(schemas_1.generateOptionsSchema, {
|
|
57
|
+
openapiConfig,
|
|
58
|
+
...clientOptions,
|
|
59
|
+
});
|
|
60
|
+
if (!validationResult.success) {
|
|
61
|
+
Consts_1.APP_LOGGER.error(validationResult.errors.join('\n'));
|
|
62
|
+
process.exit(1);
|
|
63
|
+
}
|
|
64
|
+
const validatedOptions = validationResult.data;
|
|
65
|
+
// Если есть минимальные опции (input и output), используем их
|
|
66
|
+
const hasMinimumRequiredOptions = !!validatedOptions.input && !!validatedOptions.output;
|
|
54
67
|
if (hasMinimumRequiredOptions) {
|
|
55
|
-
|
|
68
|
+
// Используем старую Joi валидацию для обратной совместимости
|
|
69
|
+
// В будущем можно заменить на Zod
|
|
70
|
+
const { error: defaultValuesError, value } = defaultOptions_1.defaultOptions.validate({
|
|
71
|
+
input: validatedOptions.input,
|
|
72
|
+
output: validatedOptions.output,
|
|
73
|
+
...clientOptions,
|
|
74
|
+
});
|
|
56
75
|
if (defaultValuesError) {
|
|
57
76
|
await OpenAPI.generate(value);
|
|
58
77
|
process.exit(0);
|
|
59
78
|
}
|
|
60
79
|
}
|
|
61
|
-
const configData = (0, loadConfigIfExists_1.loadConfigIfExists)(openapiConfig);
|
|
80
|
+
const configData = (0, loadConfigIfExists_1.loadConfigIfExists)(validatedOptions.openapiConfig);
|
|
62
81
|
if (!configData) {
|
|
63
|
-
Consts_1.APP_LOGGER.error(
|
|
82
|
+
Consts_1.APP_LOGGER.error(LoggerMessages_1.LOGGER_MESSAGES.CONFIG.FILE_MISSING);
|
|
83
|
+
process.exit(1);
|
|
64
84
|
}
|
|
65
85
|
const preparedOptions = (0, convertArrayToObject_1.convertArrayToObject)(configData);
|
|
66
86
|
// Use unified migration system for all schema types
|
|
@@ -71,15 +91,15 @@ async function runGenerateOpenApi(options) {
|
|
|
71
91
|
migrationMode: Enums_1.EMigrationMode.GENERATE_OPENAPI,
|
|
72
92
|
});
|
|
73
93
|
if (!migratedOptions) {
|
|
74
|
-
Consts_1.APP_LOGGER.error(
|
|
75
|
-
|
|
76
|
-
else {
|
|
77
|
-
const { value } = migratedOptions;
|
|
78
|
-
await OpenAPI.generate(value);
|
|
94
|
+
Consts_1.APP_LOGGER.error(LoggerMessages_1.LOGGER_MESSAGES.CONFIG.CONVERSION_FAILED);
|
|
95
|
+
process.exit(1);
|
|
79
96
|
}
|
|
97
|
+
const { value } = migratedOptions;
|
|
98
|
+
await OpenAPI.generate(value);
|
|
80
99
|
process.exit(0);
|
|
81
100
|
}
|
|
82
101
|
catch (error) {
|
|
83
102
|
Consts_1.APP_LOGGER.error(error.message);
|
|
103
|
+
process.exit(1);
|
|
84
104
|
}
|
|
85
105
|
}
|