ts-openapi-codegen 1.0.0-beta.8 → 2.0.0-beta.0
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 +221 -123
- package/README.rus.md +725 -0
- package/dist/cli/checkAndUpdateConfig/checkConfig.d.ts +12 -0
- package/dist/cli/checkAndUpdateConfig/checkConfig.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/checkConfig.js +66 -0
- package/dist/cli/checkAndUpdateConfig/constants.d.ts +13 -0
- package/dist/cli/checkAndUpdateConfig/constants.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/constants.js +29 -0
- package/dist/cli/checkAndUpdateConfig/types.d.ts +20 -0
- package/dist/cli/checkAndUpdateConfig/types.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/types.js +12 -0
- package/dist/cli/checkAndUpdateConfig/updateConfig.d.ts +12 -0
- package/dist/cli/checkAndUpdateConfig/updateConfig.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/updateConfig.js +56 -0
- package/dist/cli/checkAndUpdateConfig/utils/generateConfigExample.d.ts +2 -0
- package/dist/cli/checkAndUpdateConfig/utils/generateConfigExample.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/generateConfigExample.js +11 -0
- package/dist/cli/checkAndUpdateConfig/utils/prepareConfigData.d.ts +14 -0
- package/dist/cli/checkAndUpdateConfig/utils/prepareConfigData.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/prepareConfigData.js +30 -0
- package/dist/cli/checkAndUpdateConfig/utils/removeDefaultConfigValues.d.ts +17 -0
- package/dist/cli/checkAndUpdateConfig/utils/removeDefaultConfigValues.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/removeDefaultConfigValues.js +29 -0
- package/dist/cli/checkAndUpdateConfig/utils/rewriteConfigFile.d.ts +2 -0
- package/dist/cli/checkAndUpdateConfig/utils/rewriteConfigFile.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/rewriteConfigFile.js +11 -0
- package/dist/cli/checkAndUpdateConfig/utils/selectConfigAction.d.ts +29 -0
- package/dist/cli/checkAndUpdateConfig/utils/selectConfigAction.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/selectConfigAction.js +49 -0
- package/dist/cli/checkAndUpdateConfig/utils/updateExistingConfigFile.d.ts +6 -0
- package/dist/cli/checkAndUpdateConfig/utils/updateExistingConfigFile.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/updateExistingConfigFile.js +22 -0
- package/dist/cli/checkAndUpdateConfig/utils/validateAndMigrateConfigData.d.ts +17 -0
- package/dist/cli/checkAndUpdateConfig/utils/validateAndMigrateConfigData.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/validateAndMigrateConfigData.js +53 -0
- package/dist/cli/checkAndUpdateConfig/utils/writeConfigFile.d.ts +34 -0
- package/dist/cli/checkAndUpdateConfig/utils/writeConfigFile.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/writeConfigFile.js +41 -0
- package/dist/cli/checkAndUpdateConfig/utils/writeExampleConfigFile.d.ts +6 -0
- package/dist/cli/checkAndUpdateConfig/utils/writeExampleConfigFile.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/writeExampleConfigFile.js +18 -0
- package/dist/cli/generate/runGenerateOpenApi.d.ts +2 -2
- package/dist/cli/generate/runGenerateOpenApi.d.ts.map +1 -1
- package/dist/cli/generate/runGenerateOpenApi.js +20 -37
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.js +56 -30
- package/dist/cli/initOpenApiConfig/runInitOpenapiConfig.d.ts.map +1 -1
- package/dist/cli/initOpenApiConfig/runInitOpenapiConfig.js +11 -18
- package/dist/cli/interactive/confirmDialog.d.ts +17 -0
- package/dist/cli/interactive/confirmDialog.d.ts.map +1 -0
- package/dist/cli/interactive/confirmDialog.js +36 -0
- package/dist/cli/interactive/constants.d.ts +7 -0
- package/dist/cli/interactive/constants.d.ts.map +1 -0
- package/dist/cli/interactive/constants.js +25 -0
- package/dist/cli/interactive/selectDialog.d.ts +17 -0
- package/dist/cli/interactive/selectDialog.d.ts.map +1 -0
- package/dist/cli/interactive/selectDialog.js +43 -0
- package/dist/cli/interactive/types.d.ts +40 -0
- package/dist/cli/interactive/types.d.ts.map +1 -0
- package/dist/cli/interactive/types.js +12 -0
- package/dist/common/Consts.d.ts +4 -0
- package/dist/common/Consts.d.ts.map +1 -1
- package/dist/common/Consts.js +31 -1
- package/dist/common/Enums.d.ts +4 -0
- package/dist/common/Enums.d.ts.map +1 -1
- package/dist/common/Enums.js +6 -1
- package/dist/common/Logger.d.ts +1 -1
- package/dist/common/Logger.d.ts.map +1 -1
- package/dist/common/Logger.js +7 -39
- package/dist/common/LoggerMessages.d.ts +64 -0
- package/dist/common/LoggerMessages.d.ts.map +1 -0
- package/dist/common/LoggerMessages.js +82 -0
- package/dist/common/TRawOptions.d.ts +40 -0
- package/dist/common/TRawOptions.d.ts.map +1 -0
- package/dist/common/UpdateNotifier.d.ts +36 -2
- package/dist/common/UpdateNotifier.d.ts.map +1 -1
- package/dist/common/UpdateNotifier.js +150 -57
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans.d.ts +8 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans.d.ts.map +1 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans.js +31 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.d.ts +8 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.d.ts.map +1 -0
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.js +33 -0
- package/dist/common/VersionedSchema/Enums.d.ts +2 -1
- package/dist/common/VersionedSchema/Enums.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Enums.js +1 -0
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsMigrationPlan.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsMigrationPlan.js +10 -19
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsMigrationPlans.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsMigrationPlans.js +10 -10
- package/dist/common/VersionedSchema/Types.d.ts +10 -0
- package/dist/common/VersionedSchema/Types.d.ts.map +1 -1
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsMigrationPlan.d.ts +3 -0
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsMigrationPlan.d.ts.map +1 -0
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsMigrationPlan.js +28 -0
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsSchemaV1.d.ts +7 -0
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsSchemaV1.d.ts.map +1 -0
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsSchemaV1.js +42 -0
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsVersionedSchemas.d.ts +3 -0
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsVersionedSchemas.d.ts.map +1 -0
- package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsVersionedSchemas.js +10 -0
- package/dist/common/VersionedSchema/Utils/createDefaultFieldsMigration.d.ts +11 -0
- package/dist/common/VersionedSchema/Utils/createDefaultFieldsMigration.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/createDefaultFieldsMigration.js +19 -0
- package/dist/common/VersionedSchema/Utils/createTrivialMigration.d.ts +7 -0
- package/dist/common/VersionedSchema/Utils/createTrivialMigration.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/createTrivialMigration.js +15 -0
- package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.d.ts +1 -7
- package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.d.ts +3 -0
- package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.js +14 -0
- package/dist/common/VersionedSchema/Utils/getKeyByMapValue.d.ts +2 -0
- package/dist/common/VersionedSchema/Utils/getKeyByMapValue.d.ts.map +1 -0
- package/dist/common/VersionedSchema/Utils/getKeyByMapValue.js +11 -0
- package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.d.ts +5 -2
- package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.js +31 -17
- package/dist/common/utils/__tests__/__mock__/mockJoiSchema.d.ts.map +1 -0
- package/dist/common/utils/__tests__/convertArrayToObject.test.d.ts.map +1 -0
- package/dist/common/{__tests__ → utils/__tests__}/convertArrayToObject.test.js +14 -14
- package/dist/common/utils/__tests__/determineBestMatchingSchemaVersion.test.d.ts.map +1 -0
- package/dist/common/{__tests__ → utils/__tests__}/determineBestMatchingSchemaVersion.test.js +5 -5
- package/dist/common/utils/__tests__/generateKeyMappingForInvalidKeys.test.d.ts.map +1 -0
- package/dist/common/{__tests__ → utils/__tests__}/generateKeyMappingForInvalidKeys.test.js +4 -4
- package/dist/common/utils/__tests__/getUniqueKeysFromSchemas.test.d.ts.map +1 -0
- package/dist/common/{__tests__ → utils/__tests__}/getUniqueKeysFromSchemas.test.js +4 -4
- package/dist/common/utils/__tests__/getUniqueObjectKeys.test.d.ts.map +1 -0
- package/dist/common/{__tests__ → utils/__tests__}/getUniqueObjectKeys.test.js +5 -5
- package/dist/common/utils/__tests__/mergeObjectSchemas.test.d.ts.map +1 -0
- package/dist/common/{__tests__ → utils/__tests__}/mergeObjectSchemas.test.js +5 -5
- package/dist/common/utils/__tests__/migrationForMultiOptions.test.d.ts.map +1 -0
- package/dist/common/{__tests__ → utils/__tests__}/migrationForMultiOptions.test.js +21 -15
- package/dist/common/utils/__tests__/migrationForOptions.test.d.ts.map +1 -0
- package/dist/common/{__tests__ → utils/__tests__}/migrationForOptions.test.js +13 -9
- package/dist/common/utils/__tests__/pathHelpers.test.d.ts.map +1 -0
- package/dist/{core → common}/utils/__tests__/pathHelpers.test.js +8 -8
- package/dist/common/utils/__tests__/replaceInvalidKeysWithMappedNames.test.d.ts.map +1 -0
- package/dist/common/{__tests__ → utils/__tests__}/replaceInvalidKeysWithMappedNames.test.js +5 -5
- package/dist/common/utils/__tests__/validateAndSuggestKeyCorrections.test.d.ts.map +1 -0
- package/dist/common/{__tests__ → utils/__tests__}/validateAndSuggestKeyCorrections.test.js +5 -5
- package/dist/common/utils/convertArrayToObject.d.ts +2 -0
- package/dist/common/utils/convertArrayToObject.d.ts.map +1 -0
- package/dist/common/{Utils.js → utils/convertArrayToObject.js} +0 -20
- package/dist/{core/utils/fileSystem.d.ts → common/utils/fileSystemHelpers.d.ts} +8 -5
- package/dist/common/utils/fileSystemHelpers.d.ts.map +1 -0
- package/dist/common/utils/fileSystemHelpers.js +85 -0
- package/dist/common/utils/format.d.ts +3 -0
- package/dist/common/utils/format.d.ts.map +1 -0
- package/dist/{core → common}/utils/format.js +2 -2
- package/dist/common/utils/loadConfigIfExists.d.ts +2 -0
- package/dist/common/utils/loadConfigIfExists.d.ts.map +1 -0
- package/dist/common/utils/loadConfigIfExists.js +22 -0
- package/dist/common/utils/pathHelpers.d.ts +6 -0
- package/dist/common/utils/pathHelpers.d.ts.map +1 -0
- package/dist/{core → common}/utils/pathHelpers.js +16 -20
- package/dist/common/utils/safeHasOwn.d.ts +2 -0
- package/dist/common/utils/safeHasOwn.d.ts.map +1 -0
- package/dist/common/utils/safeHasOwn.js +9 -0
- package/dist/core/Context.d.ts.map +1 -1
- package/dist/core/Context.js +3 -3
- package/dist/core/OpenApiClient.d.ts +13 -0
- package/dist/core/OpenApiClient.d.ts.map +1 -0
- package/dist/core/OpenApiClient.js +175 -0
- package/dist/core/WriteClient.d.ts +1 -1
- package/dist/core/WriteClient.d.ts.map +1 -1
- package/dist/core/WriteClient.js +20 -20
- package/dist/core/__tests__/WriteClient.test.js +61 -60
- package/dist/core/api/v2/Parser.d.ts.map +1 -1
- package/dist/core/api/v2/Parser.js +2 -9
- package/dist/core/api/v2/parser/__tests__/getServer.test.js +2 -2
- package/dist/core/api/v2/parser/__tests__/getType.test.js +3 -3
- package/dist/core/api/v2/parser/getModelProperties.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getModelProperties.js +2 -5
- package/dist/core/api/v2/parser/getModels.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getModels.js +2 -1
- package/dist/core/api/v2/parser/getOperationParameter.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getOperationParameter.js +2 -1
- package/dist/core/api/v2/parser/getOperationResponse.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getOperationResponse.js +2 -5
- package/dist/core/api/v2/parser/getOperationResponses.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getOperationResponses.js +2 -5
- package/dist/core/api/v2/parser/getServices.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getServices.js +2 -5
- package/dist/core/api/v2/parser/getType.js +4 -4
- 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 -9
- package/dist/core/api/v3/parser/__tests__/getServer.test.js +3 -3
- package/dist/core/api/v3/parser/__tests__/getType.test.js +3 -3
- package/dist/core/api/v3/parser/getModelProperties.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getModelProperties.js +2 -5
- package/dist/core/api/v3/parser/getModels.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getModels.js +2 -1
- package/dist/core/api/v3/parser/getOperationResponse.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getOperationResponse.js +2 -5
- package/dist/core/api/v3/parser/getOperationResponses.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getOperationResponses.js +2 -5
- package/dist/core/api/v3/parser/getServer.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getServer.js +2 -5
- package/dist/core/api/v3/parser/getServices.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getServices.js +2 -5
- package/dist/core/api/v3/parser/getType.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getType.js +5 -13
- package/dist/core/index.d.ts +2 -2
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +6 -161
- package/dist/core/types/Consts.d.ts +5 -1
- package/dist/core/types/Consts.d.ts.map +1 -1
- package/dist/core/types/Consts.js +6 -2
- package/dist/core/types/base/Root.model.d.ts +1 -0
- package/dist/core/types/base/Root.model.d.ts.map +1 -1
- package/dist/core/utils/__tests__/escapeDescription.test.js +3 -3
- package/dist/core/utils/__tests__/escapeName.test.js +2 -2
- package/dist/core/utils/__tests__/flatMap.test.js +2 -2
- package/dist/core/utils/__tests__/getAbsolutePath.test.js +6 -6
- package/dist/core/utils/__tests__/getClassName.test.js +2 -2
- package/dist/core/utils/__tests__/getComment.test.js +2 -2
- package/dist/core/utils/__tests__/getEnumFromDescription.test.js +2 -2
- package/dist/core/utils/__tests__/getFileName.test.js +2 -2
- package/dist/core/utils/__tests__/getGatheringRefs.test.js +2 -2
- package/dist/core/utils/__tests__/getMappedType.test.js +2 -2
- package/dist/core/utils/__tests__/getModelNames.test.js +2 -2
- package/dist/core/utils/__tests__/getOpenApiVersion.test.js +2 -2
- package/dist/core/utils/__tests__/getOperationName.test.js +2 -2
- package/dist/core/utils/__tests__/getOperationParameterName.test.js +2 -2
- package/dist/core/utils/__tests__/getOperationPath.test.js +2 -2
- package/dist/core/utils/__tests__/getOperationResponseCode.test.js +2 -2
- package/dist/core/utils/__tests__/getPattern.test.js +2 -2
- package/dist/core/utils/__tests__/getRefFromSchema.test.js +2 -2
- package/dist/core/utils/__tests__/getRefs.test.js +2 -2
- package/dist/core/utils/__tests__/getRelativeModelPath.test.js +3 -3
- package/dist/core/utils/__tests__/getServiceClassName.test.js +2 -2
- package/dist/core/utils/__tests__/getServiceNames.test.js +2 -2
- package/dist/core/utils/__tests__/getServiceVersion.test.js +2 -2
- package/dist/core/utils/__tests__/isString.test.js +2 -2
- package/dist/core/utils/__tests__/isSubdirectory.test.js +10 -10
- package/dist/core/utils/__tests__/registerHandlebarHelpers.test.js +2 -2
- package/dist/core/utils/__tests__/registerHandlebarTemplates.test.js +2 -2
- package/dist/core/utils/__tests__/replaceString.test.js +2 -2
- package/dist/core/utils/__tests__/resolveRefToImportPath.test.js +360 -51
- package/dist/core/utils/__tests__/sort.test.js +2 -2
- package/dist/core/utils/__tests__/sortByRequiredExtended.test.js +11 -11
- package/dist/core/utils/__tests__/sortByRequiredSimple.test.js +11 -11
- package/dist/core/utils/__tests__/sortModelsByName.test.js +2 -2
- package/dist/core/utils/__tests__/sortServicesByName.test.js +2 -2
- package/dist/core/utils/__tests__/stripNamespace.test.js +2 -2
- package/dist/core/utils/__tests__/unique.test.js +2 -2
- package/dist/core/utils/__tests__/writeClientCore.test.js +52 -50
- package/dist/core/utils/__tests__/writeClientFullIndex.test.js +39 -37
- package/dist/core/utils/__tests__/writeClientModels.test.js +65 -63
- package/dist/core/utils/__tests__/writeClientSchemas.test.js +65 -63
- package/dist/core/utils/__tests__/writeClientServices.test.js +60 -58
- package/dist/core/utils/appendUniqueLinesToFile.js +4 -4
- package/dist/core/utils/createNormalizedRef.js +2 -2
- package/dist/core/utils/getAbsolutePath.js +3 -3
- package/dist/core/utils/getModelNameWithPrefix.d.ts +3 -0
- package/dist/core/utils/getModelNameWithPrefix.d.ts.map +1 -0
- package/dist/core/utils/getModelNameWithPrefix.js +15 -0
- package/dist/core/utils/getOpenApiSpec.d.ts.map +1 -1
- package/dist/core/utils/getOpenApiSpec.js +4 -4
- package/dist/core/utils/getOutputPaths.d.ts.map +1 -1
- package/dist/core/utils/getOutputPaths.js +6 -6
- package/dist/core/utils/getPattern.d.ts.map +1 -1
- package/dist/core/utils/getPattern.js +2 -1
- package/dist/core/utils/getRelativeModelPath.d.ts.map +1 -1
- package/dist/core/utils/getRelativeModelPath.js +2 -6
- package/dist/core/utils/isSubdirectory.d.ts.map +1 -1
- package/dist/core/utils/isSubdirectory.js +4 -3
- package/dist/core/utils/mapPathToTargetDirSafe.d.ts.map +1 -1
- package/dist/core/utils/mapPathToTargetDirSafe.js +11 -12
- package/dist/core/utils/modelHelpers.d.ts.map +1 -1
- package/dist/core/utils/modelHelpers.js +18 -6
- package/dist/core/utils/normalizeString.d.ts +2 -0
- package/dist/core/utils/normalizeString.d.ts.map +1 -0
- package/dist/core/utils/normalizeString.js +14 -0
- package/dist/core/utils/normalizedAbsolutePath.js +3 -3
- package/dist/core/utils/parseRef.d.ts.map +1 -1
- package/dist/core/utils/parseRef.js +7 -10
- package/dist/core/utils/precompileTemplates.js +14 -10
- package/dist/core/utils/registerHandlebarHelpers.d.ts.map +1 -1
- package/dist/core/utils/registerHandlebarHelpers.js +24 -0
- package/dist/core/utils/replaceString.d.ts.map +1 -1
- package/dist/core/utils/replaceString.js +2 -1
- package/dist/core/utils/resolveRefPath.d.ts.map +1 -1
- package/dist/core/utils/resolveRefPath.js +3 -3
- package/dist/core/utils/resolveRefToImportPath.d.ts +8 -2
- package/dist/core/utils/resolveRefToImportPath.d.ts.map +1 -1
- package/dist/core/utils/resolveRefToImportPath.js +91 -31
- package/dist/core/utils/serviceHelpers.d.ts.map +1 -1
- package/dist/core/utils/serviceHelpers.js +2 -1
- package/dist/core/utils/stripNamespace.js +5 -5
- package/dist/core/utils/writeClientCore.d.ts.map +1 -1
- package/dist/core/utils/writeClientCore.js +12 -12
- package/dist/core/utils/writeClientCoreIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientCoreIndex.js +2 -2
- package/dist/core/utils/writeClientFullIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientFullIndex.js +4 -4
- package/dist/core/utils/writeClientModels.d.ts.map +1 -1
- package/dist/core/utils/writeClientModels.js +7 -7
- package/dist/core/utils/writeClientModelsIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientModelsIndex.js +2 -2
- package/dist/core/utils/writeClientSchemas.d.ts.map +1 -1
- package/dist/core/utils/writeClientSchemas.js +7 -7
- package/dist/core/utils/writeClientSchemasIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientSchemasIndex.js +2 -2
- package/dist/core/utils/writeClientServices.d.ts.map +1 -1
- package/dist/core/utils/writeClientServices.js +5 -5
- package/dist/core/utils/writeClientServicesIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientServicesIndex.js +2 -2
- package/dist/core/utils/writeClientSimpleIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientSimpleIndex.js +4 -4
- package/dist/templatesCompiled/client/exportModel.js +4 -4
- package/dist/templatesCompiled/client/exportService.d.ts.map +1 -1
- package/dist/templatesCompiled/client/exportService.js +12 -13
- package/dist/templatesCompiled/client/indexFull.d.ts.map +1 -1
- package/dist/templatesCompiled/client/indexFull.js +35 -29
- package/dist/templatesCompiled/client/partials/parameters.d.ts +3 -2
- package/dist/templatesCompiled/client/partials/parameters.d.ts.map +1 -1
- package/dist/templatesCompiled/client/partials/parameters.js +25 -20
- package/dist/templatesCompiled/client/partials/parametersDefinition.d.ts +4 -2
- package/dist/templatesCompiled/client/partials/parametersDefinition.d.ts.map +1 -1
- package/dist/templatesCompiled/client/partials/parametersDefinition.js +31 -10
- package/package.json +15 -13
- package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.d.ts +0 -5
- package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.d.ts.map +0 -1
- package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.js +0 -45
- package/dist/common/Options.d.ts +0 -26
- package/dist/common/Options.d.ts.map +0 -1
- package/dist/common/Utils.d.ts +0 -3
- package/dist/common/Utils.d.ts.map +0 -1
- package/dist/common/__tests__/__mock__/mockJoiSchema.d.ts.map +0 -1
- package/dist/common/__tests__/convertArrayToObject.test.d.ts.map +0 -1
- package/dist/common/__tests__/determineBestMatchingSchemaVersion.test.d.ts.map +0 -1
- package/dist/common/__tests__/generateKeyMappingForInvalidKeys.test.d.ts.map +0 -1
- package/dist/common/__tests__/getUniqueKeysFromSchemas.test.d.ts.map +0 -1
- package/dist/common/__tests__/getUniqueObjectKeys.test.d.ts.map +0 -1
- package/dist/common/__tests__/mergeObjectSchemas.test.d.ts.map +0 -1
- package/dist/common/__tests__/migrationForMultiOptions.test.d.ts.map +0 -1
- package/dist/common/__tests__/migrationForOptions.test.d.ts.map +0 -1
- package/dist/common/__tests__/replaceInvalidKeysWithMappedNames.test.d.ts.map +0 -1
- package/dist/common/__tests__/validateAndSuggestKeyCorrections.test.d.ts.map +0 -1
- package/dist/core/utils/__tests__/getRelativeModelImportPath.test.d.ts +0 -2
- package/dist/core/utils/__tests__/getRelativeModelImportPath.test.d.ts.map +0 -1
- package/dist/core/utils/__tests__/getRelativeModelImportPath.test.js +0 -82
- package/dist/core/utils/__tests__/pathHelpers.test.d.ts.map +0 -1
- package/dist/core/utils/fileSystem.d.ts.map +0 -1
- package/dist/core/utils/fileSystem.js +0 -26
- package/dist/core/utils/format.d.ts +0 -2
- package/dist/core/utils/format.d.ts.map +0 -1
- package/dist/core/utils/getRelativeModelImportPath.d.ts +0 -9
- package/dist/core/utils/getRelativeModelImportPath.d.ts.map +0 -1
- package/dist/core/utils/getRelativeModelImportPath.js +0 -45
- package/dist/core/utils/isDirectory.d.ts +0 -2
- package/dist/core/utils/isDirectory.d.ts.map +0 -1
- package/dist/core/utils/isDirectory.js +0 -13
- package/dist/core/utils/pathHelpers.d.ts +0 -7
- package/dist/core/utils/pathHelpers.d.ts.map +0 -1
- package/dist/core/utils/prepareOptions.d.ts +0 -8
- package/dist/core/utils/prepareOptions.d.ts.map +0 -1
- package/dist/core/utils/prepareOptions.js +0 -31
- /package/dist/common/{Options.js → TRawOptions.js} +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/__mock__/mockJoiSchema.d.ts +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/__mock__/mockJoiSchema.js +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/convertArrayToObject.test.d.ts +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/determineBestMatchingSchemaVersion.test.d.ts +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/generateKeyMappingForInvalidKeys.test.d.ts +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/getUniqueKeysFromSchemas.test.d.ts +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/getUniqueObjectKeys.test.d.ts +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/mergeObjectSchemas.test.d.ts +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/migrationForMultiOptions.test.d.ts +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/migrationForOptions.test.d.ts +0 -0
- /package/dist/{core → common}/utils/__tests__/pathHelpers.test.d.ts +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/replaceInvalidKeysWithMappedNames.test.d.ts +0 -0
- /package/dist/common/{__tests__ → utils/__tests__}/validateAndSuggestKeyCorrections.test.d.ts +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SchemaMigrationPlan } from '../Types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a trivial migration plan that just copies all fields.
|
|
4
|
+
* Use this when migration only adds doesn't require transformation.
|
|
5
|
+
*/
|
|
6
|
+
export declare function createTrivialMigration<From extends Record<string, any>>(fromVersion: string, toVersion: string, description?: string): SchemaMigrationPlan<From, From>;
|
|
7
|
+
//# sourceMappingURL=createTrivialMigration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createTrivialMigration.d.ts","sourceRoot":"","sources":["../../../../src/common/VersionedSchema/Utils/createTrivialMigration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACnE,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,MAAM,GACrB,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAOjC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createTrivialMigration = createTrivialMigration;
|
|
4
|
+
/**
|
|
5
|
+
* Creates a trivial migration plan that just copies all fields.
|
|
6
|
+
* Use this when migration only adds doesn't require transformation.
|
|
7
|
+
*/
|
|
8
|
+
function createTrivialMigration(fromVersion, toVersion, description) {
|
|
9
|
+
return {
|
|
10
|
+
fromVersion,
|
|
11
|
+
toVersion,
|
|
12
|
+
migrate: (oldVersion) => ({ ...oldVersion }),
|
|
13
|
+
description: description || 'Trivial migration that copies all fields without changes',
|
|
14
|
+
};
|
|
15
|
+
}
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
import { VersionedSchema } from '../Types';
|
|
2
|
-
type VersionMatchResult = {
|
|
3
|
-
lastVersionIndex: number;
|
|
4
|
-
latestVersion: string;
|
|
5
|
-
firstVersion: string;
|
|
6
|
-
};
|
|
1
|
+
import { VersionedSchema, VersionMatchResult } from '../Types';
|
|
7
2
|
export declare function determineBestMatchingSchemaVersion(inputData: Record<string, any>, versionedSchemas: VersionedSchema<Record<string, any>>[]): VersionMatchResult;
|
|
8
|
-
export {};
|
|
9
3
|
//# sourceMappingURL=determineBestMatchingSchemaVersion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"determineBestMatchingSchemaVersion.d.ts","sourceRoot":"","sources":["../../../../src/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"determineBestMatchingSchemaVersion.d.ts","sourceRoot":"","sources":["../../../../src/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAM/D,wBAAgB,kCAAkC,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,gBAAgB,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,kBAAkB,CA4C/J"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getCurrentErrorMessage.d.ts","sourceRoot":"","sources":["../../../../src/common/VersionedSchema/Utils/getCurrentErrorMessage.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAKtB,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,GAAG,CAAC,eAAe,EAAE,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QAQxG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCurrentErrorMessage = getCurrentErrorMessage;
|
|
4
|
+
const getErrorFieldsFromValidation_1 = require("./getErrorFieldsFromValidation");
|
|
5
|
+
const getKeyByMapValue_1 = require("./getKeyByMapValue");
|
|
6
|
+
function getCurrentErrorMessage(error, replaicingKeysMap) {
|
|
7
|
+
const { path } = (0, getErrorFieldsFromValidation_1.getErrorFieldsFromValidation)(error)[0];
|
|
8
|
+
const reverseKey = (0, getKeyByMapValue_1.getKeyByMapValue)(replaicingKeysMap, path);
|
|
9
|
+
let currentMessage = error.message;
|
|
10
|
+
if (reverseKey) {
|
|
11
|
+
currentMessage = error.message.replace(path, reverseKey);
|
|
12
|
+
}
|
|
13
|
+
throw new Error(currentMessage);
|
|
14
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getKeyByMapValue.d.ts","sourceRoot":"","sources":["../../../../src/common/VersionedSchema/Utils/getKeyByMapValue.ts"],"names":[],"mappings":"AAAA,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,MAAM,sBAQjF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getKeyByMapValue = getKeyByMapValue;
|
|
4
|
+
function getKeyByMapValue(keysMap, searchValue) {
|
|
5
|
+
for (const [key, value] of keysMap.entries()) {
|
|
6
|
+
if (value === searchValue) {
|
|
7
|
+
return key;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
return undefined;
|
|
11
|
+
}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
|
+
import { EMigrationMode } from '../../Enums';
|
|
1
2
|
import { EVersionedSchemaType } from '../Enums';
|
|
2
|
-
import { SchemaMigrationPlan, VersionedSchema } from '../Types';
|
|
3
|
+
import { SchemaMigrationPlan, VersionedSchema, VersionMatchResult } from '../Types';
|
|
3
4
|
type MigrateToLatestProps = {
|
|
4
5
|
rawInput: Record<string, any>;
|
|
5
6
|
migrationPlans: SchemaMigrationPlan<Record<string, any>, Record<string, any>>[];
|
|
6
7
|
versionedSchemas: VersionedSchema<Record<string, any>>[];
|
|
8
|
+
migrationMode: EMigrationMode;
|
|
7
9
|
};
|
|
8
10
|
type MigrateToLatestResult = {
|
|
9
11
|
value: Record<string, any>;
|
|
12
|
+
guessedVersion: VersionMatchResult;
|
|
10
13
|
schemaVersion: string;
|
|
11
14
|
schemaType: EVersionedSchemaType;
|
|
12
15
|
};
|
|
13
|
-
export declare function migrateDataToLatestSchemaVersion({ rawInput, migrationPlans, versionedSchemas }: MigrateToLatestProps): MigrateToLatestResult | null;
|
|
16
|
+
export declare function migrateDataToLatestSchemaVersion({ rawInput, migrationPlans, versionedSchemas, migrationMode }: MigrateToLatestProps): MigrateToLatestResult | null;
|
|
14
17
|
export {};
|
|
15
18
|
//# sourceMappingURL=migrateDataToLatestSchemaVersion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrateDataToLatestSchemaVersion.d.ts","sourceRoot":"","sources":["../../../../src/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"migrateDataToLatestSchemaVersion.d.ts","sourceRoot":"","sources":["../../../../src/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AASpF,KAAK,oBAAoB,GAAG;IACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,cAAc,EAAE,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;IAChF,gBAAgB,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;IACzD,aAAa,EAAE,cAAc,CAAC;CACjC,CAAC;AAEF,KAAK,qBAAqB,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,cAAc,EAAE,kBAAkB,CAAC;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,oBAAoB,CAAC;CACpC,CAAC;AAEF,wBAAgB,gCAAgC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,EAAE,oBAAoB,GAAG,qBAAqB,GAAG,IAAI,CAiElK"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.migrateDataToLatestSchemaVersion = migrateDataToLatestSchemaVersion;
|
|
4
|
+
const Enums_1 = require("../../Enums");
|
|
4
5
|
const determineBestMatchingSchemaVersion_1 = require("./determineBestMatchingSchemaVersion");
|
|
5
6
|
const generateKeyMappingForInvalidKeys_1 = require("./generateKeyMappingForInvalidKeys");
|
|
7
|
+
const getCurrentErrorMessage_1 = require("./getCurrentErrorMessage");
|
|
6
8
|
const getUniqueKeysFromSchemas_1 = require("./getUniqueKeysFromSchemas");
|
|
7
9
|
const getUniqueObjectKeys_1 = require("./getUniqueObjectKeys");
|
|
8
10
|
const replaceInvalidKeysWithMappedNames_1 = require("./replaceInvalidKeysWithMappedNames");
|
|
9
11
|
const validateAndSuggestKeyCorrections_1 = require("./validateAndSuggestKeyCorrections");
|
|
10
|
-
function migrateDataToLatestSchemaVersion({ rawInput, migrationPlans, versionedSchemas }) {
|
|
12
|
+
function migrateDataToLatestSchemaVersion({ rawInput, migrationPlans, versionedSchemas, migrationMode }) {
|
|
11
13
|
const schemas = versionedSchemas.map(el => el.schema);
|
|
12
14
|
const allUniqueKeysFromSchemas = (0, getUniqueKeysFromSchemas_1.getUniqueKeysFromSchemas)(schemas);
|
|
13
15
|
const allUniqueKeysFromRawInput = (0, getUniqueObjectKeys_1.getUniqueObjectKeys)(rawInput);
|
|
@@ -17,27 +19,39 @@ function migrateDataToLatestSchemaVersion({ rawInput, migrationPlans, versionedS
|
|
|
17
19
|
const schemaPossibleKeys = (0, getUniqueKeysFromSchemas_1.getUniqueKeysFromSchemas)([guessedValidationSchema]);
|
|
18
20
|
const replacingKeysMap = (0, generateKeyMappingForInvalidKeys_1.generateKeyMappingForInvalidKeys)(allUniqueKeysFromRawInput, schemaPossibleKeys);
|
|
19
21
|
let currentData = replacingKeysMap.size ? (0, replaceInvalidKeysWithMappedNames_1.replaceInvalidKeysWithMappedNames)(rawInput, replacingKeysMap) : rawInput;
|
|
22
|
+
const actualVersionIndex = versionedSchemas.length - 1;
|
|
23
|
+
const actualSchema = versionedSchemas[actualVersionIndex];
|
|
20
24
|
for (let idx = guessedVersion.lastVersionIndex; idx < versionedSchemas.length - 1; idx++) {
|
|
21
|
-
const
|
|
25
|
+
const currentVersionSchema = versionedSchemas[idx];
|
|
26
|
+
const { error: firstError } = currentVersionSchema.schema.validate(currentData);
|
|
27
|
+
if (firstError) {
|
|
28
|
+
(0, getCurrentErrorMessage_1.getCurrentErrorMessage)(firstError, replacingKeysMap);
|
|
29
|
+
}
|
|
30
|
+
const fromVersion = currentVersionSchema.version;
|
|
22
31
|
const migrationPlan = migrationPlans.find(p => p.fromVersion === fromVersion);
|
|
23
32
|
if (!migrationPlan) {
|
|
24
|
-
|
|
33
|
+
const availableVersions = migrationPlans.map(p => p.fromVersion).join(', ');
|
|
34
|
+
throw new Error(`No migration plan from ${fromVersion}. ` +
|
|
35
|
+
`Available migration plans: ${availableVersions}. ` +
|
|
36
|
+
`This usually means the migration chain is incomplete.`);
|
|
25
37
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
38
|
+
const toVersion = versionedSchemas[idx + 1].version;
|
|
39
|
+
const migratedRaw = migrationPlan.migrate(currentData);
|
|
40
|
+
const { error } = versionedSchemas[idx + 1].schema.validate(migratedRaw, { allowUnknown: false });
|
|
41
|
+
if (error) {
|
|
42
|
+
throw new Error(`Migration from ${fromVersion} to ${toVersion} failed validation. ` +
|
|
43
|
+
`Error: ${error.message}. ` +
|
|
44
|
+
`Migration description: ${migrationPlan.description || 'No description provided'}.`);
|
|
33
45
|
}
|
|
34
|
-
|
|
35
|
-
|
|
46
|
+
currentData = { ...migratedRaw };
|
|
47
|
+
const isLastIteration = idx + 1 === actualVersionIndex;
|
|
48
|
+
if (isLastIteration && migrationMode === Enums_1.EMigrationMode.GENERATE_OPENAPI) {
|
|
49
|
+
console.warn('Для выполнения генерации OpenApi потребовалось мигрировать схему Ваших данных на актуальную. Для обновленмя конфигурации в файле используйте команду `npm name_cli_tool update-config`');
|
|
36
50
|
}
|
|
37
51
|
}
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
return { value, schemaVersion:
|
|
52
|
+
const { error } = actualSchema.schema.validate(currentData, { allowUnknown: false });
|
|
53
|
+
if (error) {
|
|
54
|
+
(0, getCurrentErrorMessage_1.getCurrentErrorMessage)(error, replacingKeysMap);
|
|
55
|
+
}
|
|
56
|
+
return { value: currentData, guessedVersion, schemaVersion: actualSchema.version, schemaType: actualSchema.type };
|
|
43
57
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mockJoiSchema.d.ts","sourceRoot":"","sources":["../../../../../src/common/utils/__tests__/__mock__/mockJoiSchema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,EAAE,EAAE,SAAS,OAAO,EAAE,SAAQ;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAO,EAAE,iBAAe;sBACxG,GAAG,WAAW,GAAG;;;sBADyC,MAAM;sBAAQ,MAAM;;;;;;;;;CASlG,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convertArrayToObject.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/convertArrayToObject.test.ts"],"names":[],"mappings":""}
|
|
@@ -5,11 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const node_assert_1 = __importDefault(require("node:assert"));
|
|
7
7
|
const node_test_1 = require("node:test");
|
|
8
|
-
const
|
|
9
|
-
(0, node_test_1.describe)('convertArrayToObject', () => {
|
|
10
|
-
(0, node_test_1.test)('
|
|
8
|
+
const convertArrayToObject_1 = require("../convertArrayToObject");
|
|
9
|
+
(0, node_test_1.describe)('@unit: convertArrayToObject', () => {
|
|
10
|
+
(0, node_test_1.test)('Empty array', () => {
|
|
11
11
|
const input = [];
|
|
12
|
-
const result = (0,
|
|
12
|
+
const result = (0, convertArrayToObject_1.convertArrayToObject)(input);
|
|
13
13
|
const expected = {
|
|
14
14
|
items: [],
|
|
15
15
|
excludeCoreServiceFiles: undefined,
|
|
@@ -20,7 +20,7 @@ const Utils_1 = require("common/Utils");
|
|
|
20
20
|
};
|
|
21
21
|
node_assert_1.default.deepStrictEqual(result, expected);
|
|
22
22
|
});
|
|
23
|
-
(0, node_test_1.test)('
|
|
23
|
+
(0, node_test_1.test)('An array with one element', () => {
|
|
24
24
|
const input = [
|
|
25
25
|
{
|
|
26
26
|
input: 'url1',
|
|
@@ -56,10 +56,10 @@ const Utils_1 = require("common/Utils");
|
|
|
56
56
|
useSeparatedIndexes: undefined,
|
|
57
57
|
useUnionTypes: undefined,
|
|
58
58
|
};
|
|
59
|
-
const result = (0,
|
|
59
|
+
const result = (0, convertArrayToObject_1.convertArrayToObject)(input);
|
|
60
60
|
node_assert_1.default.deepStrictEqual(result, expected);
|
|
61
61
|
});
|
|
62
|
-
(0, node_test_1.test)('
|
|
62
|
+
(0, node_test_1.test)('Multiple elements with the same outer margins', () => {
|
|
63
63
|
const input = [
|
|
64
64
|
{ input: 'url1', output: 'res1', exportCore: true, request: 'req1', useOptions: true },
|
|
65
65
|
{ input: 'url2', output: 'res2', exportCore: true, request: 'req1', useOptions: true },
|
|
@@ -98,10 +98,10 @@ const Utils_1 = require("common/Utils");
|
|
|
98
98
|
useSeparatedIndexes: undefined,
|
|
99
99
|
useUnionTypes: undefined,
|
|
100
100
|
};
|
|
101
|
-
const result = (0,
|
|
101
|
+
const result = (0, convertArrayToObject_1.convertArrayToObject)(input);
|
|
102
102
|
node_assert_1.default.deepStrictEqual(result, expected);
|
|
103
103
|
});
|
|
104
|
-
(0, node_test_1.test)('
|
|
104
|
+
(0, node_test_1.test)('Multiple elements with different external margins', () => {
|
|
105
105
|
const input = [
|
|
106
106
|
{ input: 'url1', output: 'res1', exportCore: true, request: 'req1', useOptions: true },
|
|
107
107
|
{ input: 'url2', output: 'res2', exportCore: false, request: 'req2', useOptions: false },
|
|
@@ -140,10 +140,10 @@ const Utils_1 = require("common/Utils");
|
|
|
140
140
|
useSeparatedIndexes: undefined,
|
|
141
141
|
useUnionTypes: undefined,
|
|
142
142
|
};
|
|
143
|
-
const result = (0,
|
|
143
|
+
const result = (0, convertArrayToObject_1.convertArrayToObject)(input);
|
|
144
144
|
node_assert_1.default.deepStrictEqual(result, expected);
|
|
145
145
|
});
|
|
146
|
-
(0, node_test_1.test)('
|
|
146
|
+
(0, node_test_1.test)('No optional fields', () => {
|
|
147
147
|
const input = [
|
|
148
148
|
{ input: 'url1', output: 'res1' },
|
|
149
149
|
{ input: 'url2', output: 'res2' },
|
|
@@ -182,10 +182,10 @@ const Utils_1 = require("common/Utils");
|
|
|
182
182
|
useSeparatedIndexes: undefined,
|
|
183
183
|
useUnionTypes: undefined,
|
|
184
184
|
};
|
|
185
|
-
const result = (0,
|
|
185
|
+
const result = (0, convertArrayToObject_1.convertArrayToObject)(input);
|
|
186
186
|
node_assert_1.default.deepStrictEqual(result, expected);
|
|
187
187
|
});
|
|
188
|
-
(0, node_test_1.test)('
|
|
188
|
+
(0, node_test_1.test)('Mixed presence of optional fields', () => {
|
|
189
189
|
const input = [
|
|
190
190
|
{ input: 'url1', output: 'res1', exportCore: true },
|
|
191
191
|
{ input: 'url2', output: 'res2', request: 'req2' },
|
|
@@ -224,7 +224,7 @@ const Utils_1 = require("common/Utils");
|
|
|
224
224
|
useSeparatedIndexes: undefined,
|
|
225
225
|
useUnionTypes: undefined,
|
|
226
226
|
};
|
|
227
|
-
const result = (0,
|
|
227
|
+
const result = (0, convertArrayToObject_1.convertArrayToObject)(input);
|
|
228
228
|
node_assert_1.default.deepStrictEqual(result, expected);
|
|
229
229
|
});
|
|
230
230
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"determineBestMatchingSchemaVersion.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/determineBestMatchingSchemaVersion.test.ts"],"names":[],"mappings":""}
|
package/dist/common/{__tests__ → utils/__tests__}/determineBestMatchingSchemaVersion.test.js
RENAMED
|
@@ -5,11 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const node_assert_1 = __importDefault(require("node:assert"));
|
|
7
7
|
const node_test_1 = require("node:test");
|
|
8
|
-
const Enums_1 = require("../../
|
|
9
|
-
const determineBestMatchingSchemaVersion_1 = require("
|
|
8
|
+
const Enums_1 = require("../../VersionedSchema/Enums");
|
|
9
|
+
const determineBestMatchingSchemaVersion_1 = require("../../VersionedSchema/Utils/determineBestMatchingSchemaVersion");
|
|
10
10
|
const mockJoiSchema_1 = require("./__mock__/mockJoiSchema");
|
|
11
|
-
(0, node_test_1.describe)('determineBestMatchingSchemaVersion', () => {
|
|
12
|
-
(0, node_test_1.test)('
|
|
11
|
+
(0, node_test_1.describe)('@unit: determineBestMatchingSchemaVersion', () => {
|
|
12
|
+
(0, node_test_1.test)('it should return the latest version if there is an exact match.', async () => {
|
|
13
13
|
const schemas = [
|
|
14
14
|
{ schema: (0, mockJoiSchema_1.mockJoiSchema)(['name'], true), version: '1.0', type: Enums_1.EVersionedSchemaType.OPTIONS },
|
|
15
15
|
{ schema: (0, mockJoiSchema_1.mockJoiSchema)(['name', 'age'], true), version: '2.0', type: Enums_1.EVersionedSchemaType.OPTIONS },
|
|
@@ -22,7 +22,7 @@ const mockJoiSchema_1 = require("./__mock__/mockJoiSchema");
|
|
|
22
22
|
firstVersion: '1.0',
|
|
23
23
|
});
|
|
24
24
|
});
|
|
25
|
-
(0, node_test_1.test)('
|
|
25
|
+
(0, node_test_1.test)('should return the best scheme in the absence of exact matches.', async () => {
|
|
26
26
|
const schemas = [
|
|
27
27
|
{ schema: (0, mockJoiSchema_1.mockJoiSchema)(['name'], false, [{ path: 'age', type: 'string' }]), version: '1.0', type: Enums_1.EVersionedSchemaType.OPTIONS },
|
|
28
28
|
{ schema: (0, mockJoiSchema_1.mockJoiSchema)(['name', 'age'], true), version: '2.0', type: Enums_1.EVersionedSchemaType.OPTIONS },
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateKeyMappingForInvalidKeys.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/generateKeyMappingForInvalidKeys.test.ts"],"names":[],"mappings":""}
|
|
@@ -5,15 +5,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const node_assert_1 = __importDefault(require("node:assert"));
|
|
7
7
|
const node_test_1 = require("node:test");
|
|
8
|
-
const generateKeyMappingForInvalidKeys_1 = require("
|
|
9
|
-
(0, node_test_1.describe)('generateKeyMappingForInvalidKeys', () => {
|
|
10
|
-
(0, node_test_1.test)('
|
|
8
|
+
const generateKeyMappingForInvalidKeys_1 = require("../../VersionedSchema/Utils/generateKeyMappingForInvalidKeys");
|
|
9
|
+
(0, node_test_1.describe)('@unit: generateKeyMappingForInvalidKeys', () => {
|
|
10
|
+
(0, node_test_1.test)('must create a replacement card for invalid keys', async () => {
|
|
11
11
|
const inputKeys = ['nmae', 'title'];
|
|
12
12
|
const allowedKeys = new Set(['name', 'title']);
|
|
13
13
|
const result = (0, generateKeyMappingForInvalidKeys_1.generateKeyMappingForInvalidKeys)(inputKeys, allowedKeys);
|
|
14
14
|
node_assert_1.default.deepEqual(result, new Map([['nmae', 'name']]));
|
|
15
15
|
});
|
|
16
|
-
(0, node_test_1.test)('
|
|
16
|
+
(0, node_test_1.test)('must return an empty card if all keys are valid.', async () => {
|
|
17
17
|
const inputKeys = ['name', 'title'];
|
|
18
18
|
const allowedKeys = new Set(['name', 'title']);
|
|
19
19
|
const result = (0, generateKeyMappingForInvalidKeys_1.generateKeyMappingForInvalidKeys)(inputKeys, allowedKeys);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUniqueKeysFromSchemas.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/getUniqueKeysFromSchemas.test.ts"],"names":[],"mappings":""}
|
|
@@ -5,15 +5,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const node_assert_1 = __importDefault(require("node:assert"));
|
|
7
7
|
const node_test_1 = require("node:test");
|
|
8
|
-
const getUniqueKeysFromSchemas_1 = require("
|
|
8
|
+
const getUniqueKeysFromSchemas_1 = require("../../VersionedSchema/Utils/getUniqueKeysFromSchemas");
|
|
9
9
|
const mockJoiSchema_1 = require("./__mock__/mockJoiSchema");
|
|
10
|
-
(0, node_test_1.describe)('getUniqueKeysFromSchemas', () => {
|
|
11
|
-
(0, node_test_1.test)('
|
|
10
|
+
(0, node_test_1.describe)('@unit: getUniqueKeysFromSchemas', () => {
|
|
11
|
+
(0, node_test_1.test)('must return unique keys from the schema', async () => {
|
|
12
12
|
const schema = (0, mockJoiSchema_1.mockJoiSchema)(['name', 'age'], true);
|
|
13
13
|
const result = (0, getUniqueKeysFromSchemas_1.getUniqueKeysFromSchemas)([schema]);
|
|
14
14
|
node_assert_1.default.deepEqual(result, new Set(['name', 'age']));
|
|
15
15
|
});
|
|
16
|
-
(0, node_test_1.test)('
|
|
16
|
+
(0, node_test_1.test)('should return an empty set for an empty list of schemas', async () => {
|
|
17
17
|
const result = (0, getUniqueKeysFromSchemas_1.getUniqueKeysFromSchemas)([]);
|
|
18
18
|
node_assert_1.default.deepEqual(result, new Set());
|
|
19
19
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUniqueObjectKeys.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/getUniqueObjectKeys.test.ts"],"names":[],"mappings":""}
|
|
@@ -5,19 +5,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const node_assert_1 = __importDefault(require("node:assert"));
|
|
7
7
|
const node_test_1 = require("node:test");
|
|
8
|
-
const getUniqueObjectKeys_1 = require("
|
|
9
|
-
(0, node_test_1.describe)('getUniqueObjectKeys', () => {
|
|
10
|
-
(0, node_test_1.test)('
|
|
8
|
+
const getUniqueObjectKeys_1 = require("../../VersionedSchema/Utils/getUniqueObjectKeys");
|
|
9
|
+
(0, node_test_1.describe)('@unit: getUniqueObjectKeys', () => {
|
|
10
|
+
(0, node_test_1.test)('must return unique keys from the object', async () => {
|
|
11
11
|
const input = { name: 'John', age: 30, nested: { id: 1 } };
|
|
12
12
|
const result = (0, getUniqueObjectKeys_1.getUniqueObjectKeys)(input);
|
|
13
13
|
node_assert_1.default.deepEqual(result, ['name', 'age', 'nested', 'id']);
|
|
14
14
|
});
|
|
15
|
-
(0, node_test_1.test)('
|
|
15
|
+
(0, node_test_1.test)('must return unique keys from an array of objects', async () => {
|
|
16
16
|
const input = [{ name: 'John' }, { age: 30 }];
|
|
17
17
|
const result = (0, getUniqueObjectKeys_1.getUniqueObjectKeys)(input);
|
|
18
18
|
node_assert_1.default.deepEqual(result, ['name', 'age']);
|
|
19
19
|
});
|
|
20
|
-
(0, node_test_1.test)('
|
|
20
|
+
(0, node_test_1.test)('must return an empty array for an empty object', async () => {
|
|
21
21
|
const result = (0, getUniqueObjectKeys_1.getUniqueObjectKeys)({});
|
|
22
22
|
node_assert_1.default.deepEqual(result, []);
|
|
23
23
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mergeObjectSchemas.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/mergeObjectSchemas.test.ts"],"names":[],"mappings":""}
|
|
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
const node_assert_1 = __importDefault(require("node:assert"));
|
|
7
7
|
const node_test_1 = require("node:test");
|
|
8
8
|
const joi_1 = __importDefault(require("joi"));
|
|
9
|
-
const OptionsSchemaV2_1 = require("
|
|
10
|
-
const mergeObjectSchemas_1 = require("
|
|
11
|
-
(0, node_test_1.describe)('mergeObjectSchemas', () => {
|
|
12
|
-
(0, node_test_1.test)('
|
|
9
|
+
const OptionsSchemaV2_1 = require("../../VersionedSchema/OptionsVersioned/OptionsSchemaV2");
|
|
10
|
+
const mergeObjectSchemas_1 = require("../../VersionedSchema/Utils/mergeObjectSchemas");
|
|
11
|
+
(0, node_test_1.describe)('@unit: mergeObjectSchemas', () => {
|
|
12
|
+
(0, node_test_1.test)('should combine multiple schemas correctly', () => {
|
|
13
13
|
const schema1 = joi_1.default.object({ a: joi_1.default.string().required() });
|
|
14
14
|
const schema2 = joi_1.default.object({ b: joi_1.default.number().optional() });
|
|
15
15
|
const mergedSchema = (0, mergeObjectSchemas_1.mergeObjectSchemas)(schema1, schema2);
|
|
@@ -18,7 +18,7 @@ const mergeObjectSchemas_1 = require("../VersionedSchema/Utils/mergeObjectSchema
|
|
|
18
18
|
node_assert_1.default.equal(mergedSchema.validate(validData).error, null, 'Valid data should pass validation');
|
|
19
19
|
node_assert_1.default.notEqual(mergedSchema.validate(invalidData).error, null, 'Invalid data should fail validation');
|
|
20
20
|
});
|
|
21
|
-
(0, node_test_1.test)('
|
|
21
|
+
(0, node_test_1.test)('should work with real schemas from OptionSchemas', () => {
|
|
22
22
|
const validData = {
|
|
23
23
|
input: 'source/path',
|
|
24
24
|
httpClient: 'axios',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrationForMultiOptions.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/migrationForMultiOptions.test.ts"],"names":[],"mappings":""}
|
|
@@ -5,18 +5,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
7
|
const node_test_1 = require("node:test");
|
|
8
|
-
const Enums_1 = require("
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
8
|
+
const Enums_1 = require("../../Enums");
|
|
9
|
+
const Enums_2 = require("../../VersionedSchema/Enums");
|
|
10
|
+
const MultiOptionsMigrationPlan_1 = require("../../VersionedSchema/MultiOptionsVersioned/MultiOptionsMigrationPlan");
|
|
11
|
+
const MultiOptionsVersionedSchemas_1 = require("../../VersionedSchema/MultiOptionsVersioned/MultiOptionsVersionedSchemas");
|
|
12
|
+
const migrateDataToLatestSchemaVersion_1 = require("../../VersionedSchema/Utils/migrateDataToLatestSchemaVersion");
|
|
12
13
|
const mockJoiSchema_1 = require("./__mock__/mockJoiSchema");
|
|
13
|
-
|
|
14
|
-
(0, node_test_1.test)('
|
|
14
|
+
node_test_1.describe.skip('@unit: migrationForMultiOptions', () => {
|
|
15
|
+
(0, node_test_1.test)('must successfully migrate MULTI_OPTIONS data to the latest version', async () => {
|
|
15
16
|
const input = { input: 'input/path', output: 'output/path', client: 'fetch', items: [{ input: 'path/item1' }] };
|
|
16
17
|
const result = (0, migrateDataToLatestSchemaVersion_1.migrateDataToLatestSchemaVersion)({
|
|
17
18
|
rawInput: input,
|
|
18
19
|
migrationPlans: MultiOptionsMigrationPlan_1.multiOptionsMigrationPlan,
|
|
19
20
|
versionedSchemas: MultiOptionsVersionedSchemas_1.multiOptionsVersionedSchema,
|
|
21
|
+
migrationMode: Enums_1.EMigrationMode.GENERATE_OPENAPI,
|
|
20
22
|
});
|
|
21
23
|
strict_1.default.deepEqual(result, {
|
|
22
24
|
value: {
|
|
@@ -35,30 +37,32 @@ const mockJoiSchema_1 = require("./__mock__/mockJoiSchema");
|
|
|
35
37
|
],
|
|
36
38
|
sortByRequired: false,
|
|
37
39
|
useCancelableRequest: false,
|
|
38
|
-
useSeparatedIndexes: false
|
|
40
|
+
useSeparatedIndexes: false,
|
|
39
41
|
},
|
|
40
42
|
schemaVersion: 'v5',
|
|
41
|
-
schemaType:
|
|
43
|
+
schemaType: Enums_2.EVersionedSchemaType.MULTI_OPTIONS,
|
|
42
44
|
});
|
|
43
45
|
});
|
|
44
|
-
(0, node_test_1.test)('
|
|
46
|
+
(0, node_test_1.test)('should return null in case of validation error of the last MULTI_OPTIONS scheme', async () => {
|
|
45
47
|
const input = { input: 'input/path' };
|
|
46
48
|
const result = (0, migrateDataToLatestSchemaVersion_1.migrateDataToLatestSchemaVersion)({
|
|
47
49
|
rawInput: input,
|
|
48
50
|
migrationPlans: MultiOptionsMigrationPlan_1.multiOptionsMigrationPlan,
|
|
49
51
|
versionedSchemas: MultiOptionsVersionedSchemas_1.multiOptionsVersionedSchema,
|
|
52
|
+
migrationMode: Enums_1.EMigrationMode.GENERATE_OPENAPI,
|
|
50
53
|
});
|
|
51
54
|
strict_1.default.equal(result, null);
|
|
52
55
|
});
|
|
53
|
-
(0, node_test_1.test)('
|
|
56
|
+
(0, node_test_1.test)('should throw an error if the migration plan for MULTI_OPTIONS is not found.', async () => {
|
|
54
57
|
const input = { input: 'input/path', output: 'output/path', client: 'fetch', items: [{ input: 'path/item1' }] };
|
|
55
58
|
strict_1.default.throws(() => (0, migrateDataToLatestSchemaVersion_1.migrateDataToLatestSchemaVersion)({
|
|
56
59
|
rawInput: input,
|
|
57
60
|
migrationPlans: [],
|
|
58
61
|
versionedSchemas: MultiOptionsVersionedSchemas_1.multiOptionsVersionedSchema,
|
|
62
|
+
migrationMode: Enums_1.EMigrationMode.GENERATE_OPENAPI,
|
|
59
63
|
}), /No migration plan from v1/);
|
|
60
64
|
});
|
|
61
|
-
(0, node_test_1.test)('
|
|
65
|
+
(0, node_test_1.test)('should throw an error on unrecognized fields in MULTI_OPTIONS', async () => {
|
|
62
66
|
const input = {
|
|
63
67
|
input: 'input/path',
|
|
64
68
|
output: 'output/path',
|
|
@@ -69,19 +73,20 @@ const mockJoiSchema_1 = require("./__mock__/mockJoiSchema");
|
|
|
69
73
|
rawInput: input,
|
|
70
74
|
migrationPlans: MultiOptionsMigrationPlan_1.multiOptionsMigrationPlan,
|
|
71
75
|
versionedSchemas: MultiOptionsVersionedSchemas_1.multiOptionsVersionedSchema,
|
|
76
|
+
migrationMode: Enums_1.EMigrationMode.GENERATE_OPENAPI,
|
|
72
77
|
}), /The "name" field is not recognized./);
|
|
73
78
|
});
|
|
74
|
-
(0, node_test_1.test)('
|
|
79
|
+
(0, node_test_1.test)('must process an empty array of MULTI_OPTIONS data', async () => {
|
|
75
80
|
const schemas = [
|
|
76
81
|
{
|
|
77
82
|
schema: (0, mockJoiSchema_1.mockJoiSchema)(['name'], true, [], true),
|
|
78
83
|
version: '1.0',
|
|
79
|
-
type:
|
|
84
|
+
type: Enums_2.EVersionedSchemaType.MULTI_OPTIONS,
|
|
80
85
|
},
|
|
81
86
|
{
|
|
82
87
|
schema: (0, mockJoiSchema_1.mockJoiSchema)(['name', 'options'], true, [], true),
|
|
83
88
|
version: '2.0',
|
|
84
|
-
type:
|
|
89
|
+
type: Enums_2.EVersionedSchemaType.MULTI_OPTIONS,
|
|
85
90
|
},
|
|
86
91
|
];
|
|
87
92
|
const migrationPlans = [
|
|
@@ -96,11 +101,12 @@ const mockJoiSchema_1 = require("./__mock__/mockJoiSchema");
|
|
|
96
101
|
rawInput: input,
|
|
97
102
|
migrationPlans,
|
|
98
103
|
versionedSchemas: schemas,
|
|
104
|
+
migrationMode: Enums_1.EMigrationMode.GENERATE_OPENAPI,
|
|
99
105
|
});
|
|
100
106
|
strict_1.default.deepEqual(result, {
|
|
101
107
|
value: [],
|
|
102
108
|
schemaVersion: '2.0',
|
|
103
|
-
schemaType:
|
|
109
|
+
schemaType: Enums_2.EVersionedSchemaType.MULTI_OPTIONS,
|
|
104
110
|
});
|
|
105
111
|
});
|
|
106
112
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrationForOptions.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/migrationForOptions.test.ts"],"names":[],"mappings":""}
|
|
@@ -5,17 +5,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
7
|
const node_test_1 = require("node:test");
|
|
8
|
-
const Enums_1 = require("
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
const Enums_1 = require("../../Enums");
|
|
9
|
+
const Enums_2 = require("../../VersionedSchema/Enums");
|
|
10
|
+
const OptionsMigrationPlans_1 = require("../../VersionedSchema/OptionsVersioned/OptionsMigrationPlans");
|
|
11
|
+
const OptionsVersionedSchemas_1 = require("../../VersionedSchema/OptionsVersioned/OptionsVersionedSchemas");
|
|
12
|
+
const migrateDataToLatestSchemaVersion_1 = require("../../VersionedSchema/Utils/migrateDataToLatestSchemaVersion");
|
|
13
|
+
node_test_1.describe.skip('@unit: migrationForOptions', () => {
|
|
14
|
+
(0, node_test_1.test)('must migrate data to the latest schema version', async () => {
|
|
14
15
|
const input = { input: 'input/path', output: 'output/path', client: 'fetch' };
|
|
15
16
|
const result = (0, migrateDataToLatestSchemaVersion_1.migrateDataToLatestSchemaVersion)({
|
|
16
17
|
rawInput: input,
|
|
17
18
|
migrationPlans: OptionsMigrationPlans_1.optionsMigrationPlans,
|
|
18
19
|
versionedSchemas: OptionsVersionedSchemas_1.optionsVersionedSchemas,
|
|
20
|
+
migrationMode: Enums_1.EMigrationMode.GENERATE_OPENAPI,
|
|
19
21
|
});
|
|
20
22
|
strict_1.default.deepEqual(result, {
|
|
21
23
|
value: {
|
|
@@ -29,24 +31,26 @@ const migrateDataToLatestSchemaVersion_1 = require("../VersionedSchema/Utils/mig
|
|
|
29
31
|
useSeparatedIndexes: false,
|
|
30
32
|
},
|
|
31
33
|
schemaVersion: 'v4',
|
|
32
|
-
schemaType:
|
|
34
|
+
schemaType: Enums_2.EVersionedSchemaType.OPTIONS,
|
|
33
35
|
});
|
|
34
36
|
});
|
|
35
|
-
(0, node_test_1.test)('
|
|
37
|
+
(0, node_test_1.test)('should return null if the validation error occurred for the last schema.', async () => {
|
|
36
38
|
const input = { input: 'input/path' };
|
|
37
39
|
const result = (0, migrateDataToLatestSchemaVersion_1.migrateDataToLatestSchemaVersion)({
|
|
38
40
|
rawInput: input,
|
|
39
41
|
migrationPlans: OptionsMigrationPlans_1.optionsMigrationPlans,
|
|
40
42
|
versionedSchemas: OptionsVersionedSchemas_1.optionsVersionedSchemas,
|
|
43
|
+
migrationMode: Enums_1.EMigrationMode.GENERATE_OPENAPI,
|
|
41
44
|
});
|
|
42
45
|
strict_1.default.equal(result, null);
|
|
43
46
|
});
|
|
44
|
-
(0, node_test_1.test)('
|
|
47
|
+
(0, node_test_1.test)('It should throw an error if the migration plan is not found.', async () => {
|
|
45
48
|
const input = { input: 'input/path', output: 'output/path', client: 'fetch' };
|
|
46
49
|
strict_1.default.throws(() => (0, migrateDataToLatestSchemaVersion_1.migrateDataToLatestSchemaVersion)({
|
|
47
50
|
rawInput: input,
|
|
48
51
|
migrationPlans: [],
|
|
49
52
|
versionedSchemas: OptionsVersionedSchemas_1.optionsVersionedSchemas,
|
|
53
|
+
migrationMode: Enums_1.EMigrationMode.GENERATE_OPENAPI,
|
|
50
54
|
}), /No migration plan from v1/);
|
|
51
55
|
});
|
|
52
56
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pathHelpers.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/pathHelpers.test.ts"],"names":[],"mappings":""}
|