ts-openapi-codegen 2.0.0-beta.1 → 2.0.0-beta.10
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 +149 -103
- package/README.rus.md +149 -101
- 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 +29 -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 +9 -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 +10 -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/UnifiedVersionedSchemas.d.ts +65 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.d.ts.map +1 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.js +31 -0
- package/dist/common/VersionedSchema/CommonSchemas.d.ts +53 -29
- package/dist/common/VersionedSchema/CommonSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/CommonSchemas.js +44 -62
- 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 +85 -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 +2 -1
- package/dist/common/utils/__tests__/convertArrayToObject.test.js +5 -6
- package/dist/common/utils/convertArrayToObject.d.ts.map +1 -1
- package/dist/common/utils/convertArrayToObject.js +1 -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 +54 -13
- package/dist/core/WriteClient.d.ts +6 -13
- package/dist/core/WriteClient.d.ts.map +1 -1
- package/dist/core/WriteClient.js +32 -22
- package/dist/core/__tests__/WriteClient.test.js +7 -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/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 +2 -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 +7 -0
- package/dist/core/utils/registerHandlebarHelpers.d.ts.map +1 -1
- package/dist/core/utils/registerHandlebarHelpers.js +85 -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 +3 -1
- package/dist/core/utils/writeClientSchemas.d.ts.map +1 -1
- package/dist/core/utils/writeClientSchemas.js +23 -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 +14 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaInterface.d.ts.map +1 -0
- package/dist/templatesCompiled/client/joi/partials/joiSchemaInterface.js +50 -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 +15 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaInterface.d.ts.map +1 -0
- package/dist/templatesCompiled/client/jsonschema/partials/jsonschemaSchemaInterface.js +63 -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 +14 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaInterface.d.ts.map +1 -0
- package/dist/templatesCompiled/client/yup/partials/yupSchemaInterface.js +50 -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 +14 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaArray.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaArray.js +65 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaComposition.d.ts +15 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaComposition.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaComposition.js +70 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaDictionary.d.ts +12 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaDictionary.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaDictionary.js +53 -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 +14 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaInterface.d.ts.map +1 -0
- package/dist/templatesCompiled/client/zod/partials/zodSchemaInterface.js +50 -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,7 @@ 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
76
|
|
|
77
77
|
**Примеры:**
|
|
78
78
|
```bash
|
|
@@ -92,7 +92,6 @@ openapi generate \
|
|
|
92
92
|
--httpClient fetch \
|
|
93
93
|
--useOptions \
|
|
94
94
|
--useUnionTypes \
|
|
95
|
-
--includeSchemasFiles \
|
|
96
95
|
--logLevel info
|
|
97
96
|
```
|
|
98
97
|
|
|
@@ -142,7 +141,6 @@ openapi init-openapi-config --openapi-config ./my-config.json
|
|
|
142
141
|
"useOptions": false,
|
|
143
142
|
"useUnionTypes": false,
|
|
144
143
|
"excludeCoreServiceFiles": false,
|
|
145
|
-
"includeSchemasFiles": false,
|
|
146
144
|
"interfacePrefix": "I",
|
|
147
145
|
"enumPrefix": "E",
|
|
148
146
|
"typePrefix": "T",
|
|
@@ -159,7 +157,6 @@ openapi init-openapi-config --openapi-config ./my-config.json
|
|
|
159
157
|
"output": "./dist",
|
|
160
158
|
"client": "fetch",
|
|
161
159
|
"excludeCoreServiceFiles": true,
|
|
162
|
-
"includeSchemasFiles": true,
|
|
163
160
|
"items": [
|
|
164
161
|
{
|
|
165
162
|
"input": "./first.yml"
|
|
@@ -200,7 +197,6 @@ openapi init-openapi-config --openapi-config ./my-config.json
|
|
|
200
197
|
| `useOptions` | boolean | `false` | Использовать опции вместо аргументов |
|
|
201
198
|
| `useUnionTypes` | boolean | `false` | Использовать union типы вместо enums |
|
|
202
199
|
| `excludeCoreServiceFiles` | boolean | `false` | Исключить генерацию core и сервисных файлов |
|
|
203
|
-
| `includeSchemasFiles` | boolean | `false` | Включить генерацию схем валидации моделей |
|
|
204
200
|
| `request` | string | - | Путь к пользовательскому файлу запросов |
|
|
205
201
|
| `interfacePrefix` | string | `I` | Префикс для интерфейсов моделей |
|
|
206
202
|
| `enumPrefix` | string | `E` | Префикс для enum моделей |
|
|
@@ -209,6 +205,7 @@ openapi init-openapi-config --openapi-config ./my-config.json
|
|
|
209
205
|
| `sortByRequired` | boolean | `false` | Расширенная стратегия сортировки для аргументов |
|
|
210
206
|
| `useSeparatedIndexes` | boolean | `false` | Использовать отдельные index файлы |
|
|
211
207
|
| `items` | array | - | Массив конфигураций (для формата multi-options) |
|
|
208
|
+
| `validationLibrary` | string | `none` | Библиотека валидации для генерации схем: `none`, `zod`, `joi`, `yup`, или `jsonschema` |
|
|
212
209
|
|
|
213
210
|
**Примечание:** Вы можете использовать команду `init-openapi-config` для генерации шаблона файла конфигурации.
|
|
214
211
|
|
|
@@ -368,11 +365,19 @@ const order: Order = {
|
|
|
368
365
|
}
|
|
369
366
|
```
|
|
370
367
|
|
|
371
|
-
###
|
|
368
|
+
### Схемы проверки `--validationLibrary`
|
|
372
369
|
По умолчанию генератор OpenAPI экспортирует только интерфейсы для ваших моделей. Эти интерфейсы помогут вам во время
|
|
373
|
-
разработки, но не будут доступны в JavaScript во время выполнения. Однако
|
|
374
|
-
которые могут быть полезны во время выполнения, например: `maxLength` строки или `pattern` для сопоставления и т.д.
|
|
375
|
-
|
|
370
|
+
разработки, но не будут доступны в JavaScript во время выполнения. Однако OpenAPI позволяет определять свойства,
|
|
371
|
+
которые могут быть полезны во время выполнения, например: `maxLength` строки или `pattern` для сопоставления и т.д.
|
|
372
|
+
|
|
373
|
+
Параметр `--validationLibrary` позволяет генерировать схемы валидации времени выполнения с использованием популярных библиотек валидации:
|
|
374
|
+
- **none** (по умолчанию) - Схемы валидации не генерируются
|
|
375
|
+
- **zod** - Генерация схем валидации Zod
|
|
376
|
+
- **joi** - Генерация схем валидации Joi
|
|
377
|
+
- **yup** - Генерация схем валидации Yup
|
|
378
|
+
- **jsonschema** - Генерация схем валидации JSON Schema
|
|
379
|
+
|
|
380
|
+
Допустим, у нас есть следующая модель:
|
|
376
381
|
|
|
377
382
|
```json
|
|
378
383
|
{
|
|
@@ -406,77 +411,89 @@ const order: Order = {
|
|
|
406
411
|
}
|
|
407
412
|
```
|
|
408
413
|
|
|
409
|
-
|
|
414
|
+
**С Zod (`--validationLibrary zod`):**
|
|
410
415
|
|
|
411
|
-
```
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
416
|
+
```ts
|
|
417
|
+
import { z } from 'zod';
|
|
418
|
+
|
|
419
|
+
export const MyModelSchema = z.object({
|
|
420
|
+
key: z.string().max(64).regex(/^[a-zA-Z0-9_]*$/),
|
|
421
|
+
name: z.string().max(255),
|
|
422
|
+
enabled: z.boolean().readonly().optional(),
|
|
423
|
+
modified: z.string().datetime().readonly().optional(),
|
|
424
|
+
});
|
|
425
|
+
|
|
426
|
+
export type MyModel = z.infer<typeof MyModelSchema>;
|
|
427
|
+
|
|
428
|
+
export function validateMyModel(data: unknown): MyModel {
|
|
429
|
+
return MyModelSchema.parse(data);
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
export function safeValidateMyModel(data: unknown): { success: true; data: MyModel } | { success: false; error: z.ZodError } {
|
|
433
|
+
const result = MyModelSchema.safeParse(data);
|
|
434
|
+
if (result.success) {
|
|
435
|
+
return { success: true, data: result.data };
|
|
436
|
+
}
|
|
437
|
+
return { success: false, error: result.error };
|
|
417
438
|
}
|
|
418
439
|
```
|
|
419
440
|
|
|
420
|
-
|
|
421
|
-
если мы хотим создать форму, где пользователь может создать такую модель. В этой форме вы будете итерироваться
|
|
422
|
-
по свойствам для рендеринга полей формы на основе их типа и валидации ввода на основе свойства `maxLength`
|
|
423
|
-
или `pattern`. Для этого нам нужно где-то хранить эту информацию... Для этого мы можем использовать
|
|
424
|
-
флаг `--includeSchemasFiles` для генерации runtime модели рядом с обычным интерфейсом:
|
|
441
|
+
**С Joi (`--validationLibrary joi`):**
|
|
425
442
|
|
|
426
|
-
```
|
|
427
|
-
|
|
443
|
+
```ts
|
|
444
|
+
import Joi from 'joi';
|
|
445
|
+
|
|
446
|
+
export const MyModelSchema = Joi.object({
|
|
447
|
+
key: Joi.string().max(64).pattern(/^[a-zA-Z0-9_]*$/).required(),
|
|
448
|
+
name: Joi.string().max(255).required(),
|
|
449
|
+
enabled: Joi.boolean().readonly(),
|
|
450
|
+
modified: Joi.string().isoDate().readonly(),
|
|
451
|
+
});
|
|
452
|
+
```
|
|
453
|
+
|
|
454
|
+
**С Yup (`--validationLibrary yup`):**
|
|
455
|
+
|
|
456
|
+
```ts
|
|
457
|
+
import * as yup from 'yup';
|
|
458
|
+
|
|
459
|
+
export const MyModelSchema = yup.object({
|
|
460
|
+
key: yup.string().max(64).matches(/^[a-zA-Z0-9_]*$/).required(),
|
|
461
|
+
name: yup.string().max(255).required(),
|
|
462
|
+
enabled: yup.boolean().readonly(),
|
|
463
|
+
modified: yup.string().datetime().readonly(),
|
|
464
|
+
});
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
**С JSON Schema (`--validationLibrary jsonschema`):**
|
|
468
|
+
|
|
469
|
+
```ts
|
|
470
|
+
export const MyModelSchema = {
|
|
471
|
+
type: 'object',
|
|
472
|
+
required: ['key', 'name'],
|
|
428
473
|
properties: {
|
|
429
474
|
key: {
|
|
430
475
|
type: 'string',
|
|
431
|
-
isRequired: true,
|
|
432
476
|
maxLength: 64,
|
|
433
477
|
pattern: '^[a-zA-Z0-9_]*$',
|
|
434
478
|
},
|
|
435
479
|
name: {
|
|
436
480
|
type: 'string',
|
|
437
|
-
isRequired: true,
|
|
438
481
|
maxLength: 255,
|
|
439
482
|
},
|
|
440
483
|
enabled: {
|
|
441
484
|
type: 'boolean',
|
|
442
|
-
|
|
485
|
+
readOnly: true,
|
|
443
486
|
},
|
|
444
487
|
modified: {
|
|
445
488
|
type: 'string',
|
|
446
|
-
isReadOnly: true,
|
|
447
489
|
format: 'date-time',
|
|
490
|
+
readOnly: true,
|
|
448
491
|
},
|
|
449
492
|
},
|
|
450
493
|
};
|
|
451
494
|
```
|
|
452
495
|
|
|
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
|
-
```
|
|
496
|
+
Эти схемы валидации могут быть использованы для генерации форм, валидации ввода и проверки типов во время выполнения в вашем приложении.
|
|
480
497
|
|
|
481
498
|
### Отменяемый promise `--useCancelableRequest`
|
|
482
499
|
По умолчанию генератор OpenAPI генерирует сервисы для доступа к API, которые используют неотменяемые запросы. Поэтому мы добавили возможность переключить генератор на генерацию отменяемых API запросов. Для этого используйте флаг `--useCancelableRequest`.
|
|
@@ -509,79 +526,110 @@ export function request<T>(config: TOpenAPIConfig, options: ApiRequestOptions):
|
|
|
509
526
|
}
|
|
510
527
|
```
|
|
511
528
|
|
|
512
|
-
###
|
|
529
|
+
### RequestExecutor
|
|
530
|
+
|
|
531
|
+
Начиная с версии **2.0.0**, сгенерированные сервисы используют интерфейс `RequestExecutor`
|
|
532
|
+
вместо прямых вызовов core-функции `request`.
|
|
513
533
|
|
|
514
|
-
|
|
534
|
+
`RequestExecutor` — это единая точка интеграции HTTP-логики, отвечающая за выполнение запросов
|
|
535
|
+
и расширение поведения клиента. Он позволяет:
|
|
536
|
+
- использовать любой транспорт (fetch / axios / xhr / custom);
|
|
537
|
+
- централизованно обрабатывать запросы, ответы и ошибки;
|
|
538
|
+
- расширять поведение клиента без изменения сгенерированных сервисов.
|
|
515
539
|
|
|
516
|
-
|
|
540
|
+
#### Interceptors
|
|
517
541
|
|
|
518
|
-
|
|
542
|
+
`RequestExecutor` поддерживает **interceptors**, которые позволяют внедрять дополнительную
|
|
543
|
+
логику на разных этапах жизненного цикла запроса:
|
|
544
|
+
|
|
545
|
+
- `onRequest` — модификация запроса перед отправкой (headers, auth, логирование);
|
|
546
|
+
- `onResponse` — обработка успешных ответов;
|
|
547
|
+
- `onError` — централизованная обработка ошибок.
|
|
548
|
+
|
|
549
|
+
Interceptors применяются на уровне executor’а и автоматически используются всеми
|
|
550
|
+
сгенерированными сервисами.
|
|
519
551
|
|
|
520
552
|
```ts
|
|
521
|
-
import
|
|
553
|
+
import { createClient } from './generated';
|
|
554
|
+
|
|
555
|
+
const client = createClient({
|
|
556
|
+
interceptors: {
|
|
557
|
+
onRequest: [
|
|
558
|
+
(config) => ({
|
|
559
|
+
...config,
|
|
560
|
+
headers: {
|
|
561
|
+
...config.headers,
|
|
562
|
+
Authorization: 'Bearer token',
|
|
563
|
+
},
|
|
564
|
+
}),
|
|
565
|
+
],
|
|
566
|
+
onError: [
|
|
567
|
+
(error) => {
|
|
568
|
+
console.error(error);
|
|
569
|
+
throw error;
|
|
570
|
+
},
|
|
571
|
+
],
|
|
572
|
+
},
|
|
573
|
+
});
|
|
574
|
+
```
|
|
575
|
+
|
|
576
|
+
#### Пользовательская реализация RequestExecutor с interceptors
|
|
577
|
+
|
|
578
|
+
Пользовательский `RequestExecutor` может быть использован вместе с interceptors.
|
|
579
|
+
В этом случае executor отвечает только за транспорт и выполнение запроса,
|
|
580
|
+
а interceptors — за расширяемую бизнес-логику (авторизация, логирование, обработка ошибок).
|
|
581
|
+
|
|
582
|
+
```ts
|
|
583
|
+
import type { RequestExecutor, RequestConfig } from './generated/core/executor/requestExecutor';
|
|
584
|
+
import { withInterceptors } from './generated/core/interceptors/withInterceptors';
|
|
522
585
|
import { SimpleService } from './generated/services/SimpleService';
|
|
523
586
|
|
|
524
|
-
// Определите свой тип опций (опционально)
|
|
525
587
|
interface MyCustomOptions {
|
|
526
588
|
timeout?: number;
|
|
527
|
-
retries?: number;
|
|
528
589
|
}
|
|
529
590
|
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
async request<TResponse>(config: RequestConfig, options?: MyCustomOptions): Promise<TResponse> {
|
|
533
|
-
// Ваша пользовательская логика запросов здесь
|
|
591
|
+
const baseExecutor: RequestExecutor<MyCustomOptions> = {
|
|
592
|
+
async request<T>(config: RequestConfig, options?: MyCustomOptions): Promise<T> {
|
|
534
593
|
const response = await fetch(config.url, {
|
|
535
594
|
method: config.method,
|
|
536
595
|
headers: config.headers,
|
|
537
596
|
body: config.body ? JSON.stringify(config.body) : undefined,
|
|
538
|
-
signal: options?.timeout
|
|
597
|
+
signal: options?.timeout
|
|
598
|
+
? AbortSignal.timeout(options.timeout)
|
|
599
|
+
: undefined,
|
|
539
600
|
});
|
|
540
|
-
|
|
601
|
+
|
|
541
602
|
if (!response.ok) {
|
|
542
|
-
throw new Error(`Request failed: ${response.
|
|
603
|
+
throw new Error(`Request failed: ${response.status}`);
|
|
543
604
|
}
|
|
544
|
-
|
|
605
|
+
|
|
545
606
|
return response.json();
|
|
546
607
|
},
|
|
547
608
|
};
|
|
548
609
|
|
|
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
|
-
};
|
|
610
|
+
// Оборачиваем executor interceptors
|
|
611
|
+
const executor = withInterceptors(baseExecutor, {
|
|
612
|
+
onRequest: [
|
|
613
|
+
(config) => ({
|
|
614
|
+
...config,
|
|
615
|
+
headers: {
|
|
616
|
+
...config.headers,
|
|
617
|
+
Authorization: 'Bearer token',
|
|
618
|
+
},
|
|
619
|
+
}),
|
|
620
|
+
],
|
|
621
|
+
onError: [
|
|
622
|
+
(error) => {
|
|
623
|
+
console.error(error);
|
|
624
|
+
throw error;
|
|
625
|
+
},
|
|
626
|
+
],
|
|
576
627
|
});
|
|
577
628
|
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
await simpleService.getCallWithoutParametersAndResponse();
|
|
629
|
+
const service = new SimpleService(executor);
|
|
630
|
+
await service.getCallWithoutParametersAndResponse({ timeout: 5000 });
|
|
581
631
|
```
|
|
582
632
|
|
|
583
|
-
**Примечание:** Опция --request по-прежнему работает для кастомизации core-функции request. Сгенерированный legacy-request-adapter автоматически будет использовать вашу пользовательскую реализацию request при создании адаптера.
|
|
584
|
-
|
|
585
633
|
### Стратегия сортировки аргументов функций `--sortByRequired`
|
|
586
634
|
По умолчанию генератор OpenAPI сортирует параметры сервисных функций согласно упрощенной схеме. Если вам нужна более строгая опция сортировки, используйте флаг `--sortByRequired`. Упрощенная опция сортировки похожа на ту, что использовалась в версии 0.2.3 генератора OpenAPI. Этот флаг позволяет обновиться до новой версии генератора, если вы "застряли" на версии 0.2.3.
|
|
587
635
|
|
|
@@ -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
|
}
|