ts-openapi-codegen 2.1.0-beta.1 → 2.1.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 +27 -934
- package/README.rus.md +27 -934
- package/dist/cli/analyzeDiff/__tests__/analyzeDiff.cli.test.js +40 -24
- package/dist/cli/analyzeDiff/__tests__/analyzeDiffLomMiracles.test.d.ts +2 -0
- package/dist/cli/analyzeDiff/__tests__/analyzeDiffLomMiracles.test.d.ts.map +1 -0
- package/dist/cli/analyzeDiff/__tests__/analyzeDiffLomMiracles.test.js +47 -0
- package/dist/cli/analyzeDiff/__tests__/analyzeDiffRenameAndInvalidRegex.test.js +17 -7
- package/dist/cli/analyzeDiff/__tests__/analyzeDiffTypeCoercion.test.js +17 -7
- package/dist/cli/analyzeDiff/analyzeDiff.d.ts +14 -2
- package/dist/cli/analyzeDiff/analyzeDiff.d.ts.map +1 -1
- package/dist/cli/analyzeDiff/analyzeDiff.js +58 -15
- package/dist/cli/analyzeDiff/ciSummary.d.ts +6 -3
- package/dist/cli/analyzeDiff/ciSummary.d.ts.map +1 -1
- package/dist/cli/analyzeDiff/ciSummary.js +10 -6
- package/dist/cli/analyzeDiff/ignoreRules.d.ts +0 -22
- package/dist/cli/analyzeDiff/ignoreRules.d.ts.map +1 -1
- package/dist/cli/analyzeDiff/ignoreRules.js +3 -25
- package/dist/cli/analyzeDiff/miracles.d.ts +0 -54
- package/dist/cli/analyzeDiff/miracles.d.ts.map +1 -1
- package/dist/cli/analyzeDiff/miracles.js +1 -219
- package/dist/cli/analyzeDiff/specParser.d.ts +0 -13
- package/dist/cli/analyzeDiff/specParser.d.ts.map +1 -1
- package/dist/cli/analyzeDiff/specParser.js +2 -23
- package/dist/cli/analyzeDiff/types.d.ts +0 -42
- package/dist/cli/analyzeDiff/types.d.ts.map +1 -1
- package/dist/cli/analyzeUsage/analyzeUsage.d.ts +4 -0
- package/dist/cli/analyzeUsage/analyzeUsage.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/analyzeUsage.js +60 -0
- package/dist/cli/analyzeUsage/core/Analyzer.d.ts +9 -0
- package/dist/cli/analyzeUsage/core/Analyzer.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/core/Analyzer.js +29 -0
- package/dist/cli/analyzeUsage/core/ProjectContext.d.ts +10 -0
- package/dist/cli/analyzeUsage/core/ProjectContext.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/core/ProjectContext.js +58 -0
- package/dist/cli/analyzeUsage/core/Scanner.d.ts +23 -0
- package/dist/cli/analyzeUsage/core/Scanner.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/core/Scanner.js +125 -0
- package/dist/cli/analyzeUsage/rules/ClientRule.d.ts +14 -0
- package/dist/cli/analyzeUsage/rules/ClientRule.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/rules/ClientRule.js +86 -0
- package/dist/cli/analyzeUsage/rules/CoverageRule.d.ts +7 -0
- package/dist/cli/analyzeUsage/rules/CoverageRule.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/rules/CoverageRule.js +55 -0
- package/dist/cli/analyzeUsage/rules/DiagnosticsRule.d.ts +6 -0
- package/dist/cli/analyzeUsage/rules/DiagnosticsRule.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/rules/DiagnosticsRule.js +63 -0
- package/dist/cli/analyzeUsage/rules/ImportRule.d.ts +6 -0
- package/dist/cli/analyzeUsage/rules/ImportRule.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/rules/ImportRule.js +50 -0
- package/dist/cli/analyzeUsage/rules/ModelRule.d.ts +6 -0
- package/dist/cli/analyzeUsage/rules/ModelRule.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/rules/ModelRule.js +34 -0
- package/dist/cli/analyzeUsage/rules/SchemaRule.d.ts +6 -0
- package/dist/cli/analyzeUsage/rules/SchemaRule.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/rules/SchemaRule.js +46 -0
- package/dist/cli/analyzeUsage/rules/ServiceRule.d.ts +15 -0
- package/dist/cli/analyzeUsage/rules/ServiceRule.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/rules/ServiceRule.js +96 -0
- package/dist/cli/analyzeUsage/types.d.ts +52 -0
- package/dist/cli/analyzeUsage/types.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/types.js +2 -0
- package/dist/cli/analyzeUsage/utils/fuzzy.d.ts +5 -0
- package/dist/cli/analyzeUsage/utils/fuzzy.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/utils/fuzzy.js +38 -0
- package/dist/cli/analyzeUsage/utils/report.d.ts +16 -0
- package/dist/cli/analyzeUsage/utils/report.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/utils/report.js +85 -0
- package/dist/cli/checkAndUpdateConfig/__tests__/checkConfig.test.d.ts +2 -0
- package/dist/cli/checkAndUpdateConfig/__tests__/checkConfig.test.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/__tests__/checkConfig.test.js +53 -0
- package/dist/cli/checkAndUpdateConfig/__tests__/updateConfig.test.d.ts +2 -0
- package/dist/cli/checkAndUpdateConfig/__tests__/updateConfig.test.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/__tests__/updateConfig.test.js +52 -0
- 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 +15 -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 +8 -5
- package/dist/cli/checkAndUpdateConfig/utils/__tests__/prepareConfigData.test.d.ts +2 -0
- package/dist/cli/checkAndUpdateConfig/utils/__tests__/prepareConfigData.test.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/__tests__/prepareConfigData.test.js +20 -0
- package/dist/cli/checkAndUpdateConfig/utils/__tests__/removeDefaultConfigValues.test.d.ts +2 -0
- package/dist/cli/checkAndUpdateConfig/utils/__tests__/removeDefaultConfigValues.test.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/__tests__/removeDefaultConfigValues.test.js +35 -0
- package/dist/cli/checkAndUpdateConfig/utils/__tests__/validateAndMigrateConfigData.test.d.ts +2 -0
- package/dist/cli/checkAndUpdateConfig/utils/__tests__/validateAndMigrateConfigData.test.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/__tests__/validateAndMigrateConfigData.test.js +59 -0
- package/dist/cli/checkAndUpdateConfig/utils/removeDefaultConfigValues.d.ts.map +1 -1
- package/dist/cli/checkAndUpdateConfig/utils/validateAndMigrateConfigData.d.ts.map +1 -1
- package/dist/cli/checkAndUpdateConfig/utils/validateAndMigrateConfigData.js +19 -1
- package/dist/cli/checkAndUpdateConfig/utils/validateExecutorSetup.d.ts +6 -0
- package/dist/cli/checkAndUpdateConfig/utils/validateExecutorSetup.d.ts.map +1 -0
- package/dist/cli/checkAndUpdateConfig/utils/validateExecutorSetup.js +55 -0
- package/dist/cli/checkAndUpdateConfig/utils/writeConfigFile.d.ts +1 -1
- package/dist/cli/checkAndUpdateConfig/utils/writeConfigFile.d.ts.map +1 -1
- package/dist/cli/checkAndUpdateConfig/utils/writeConfigFile.js +1 -1
- package/dist/cli/generateOpenApiClient/__tests__/generateOpenApiClient.strict.test.js +18 -9
- package/dist/cli/generateOpenApiClient/generateOpenApiClient.d.ts +2 -5
- package/dist/cli/generateOpenApiClient/generateOpenApiClient.d.ts.map +1 -1
- package/dist/cli/generateOpenApiClient/generateOpenApiClient.js +24 -20
- package/dist/cli/index.js +45 -9
- package/dist/cli/initOpenApiConfig/Types.d.ts +2 -0
- package/dist/cli/initOpenApiConfig/Types.d.ts.map +1 -1
- package/dist/cli/initOpenApiConfig/__tests__/init.test.d.ts +2 -0
- package/dist/cli/initOpenApiConfig/__tests__/init.test.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/__tests__/init.test.js +20 -0
- package/dist/cli/initOpenApiConfig/__tests__/initConfig.test.d.ts +2 -0
- package/dist/cli/initOpenApiConfig/__tests__/initConfig.test.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/__tests__/initConfig.test.js +49 -0
- package/dist/cli/initOpenApiConfig/init.d.ts +2 -1
- package/dist/cli/initOpenApiConfig/init.d.ts.map +1 -1
- package/dist/cli/initOpenApiConfig/init.js +52 -20
- package/dist/cli/initOpenApiConfig/initConfig.d.ts +5 -0
- package/dist/cli/initOpenApiConfig/initConfig.d.ts.map +1 -1
- package/dist/cli/initOpenApiConfig/initConfig.js +8 -4
- package/dist/cli/initOpenApiConfig/initCustomRequest.d.ts +3 -2
- package/dist/cli/initOpenApiConfig/initCustomRequest.d.ts.map +1 -1
- package/dist/cli/initOpenApiConfig/initCustomRequest.js +36 -10
- package/dist/cli/initOpenApiConfig/utils/__tests__/buildConfig.test.d.ts +2 -0
- package/dist/cli/initOpenApiConfig/utils/__tests__/buildConfig.test.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/utils/__tests__/buildConfig.test.js +93 -0
- package/dist/cli/initOpenApiConfig/utils/__tests__/findSpecFiles.test.d.ts +2 -0
- package/dist/cli/initOpenApiConfig/utils/__tests__/findSpecFiles.test.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/utils/__tests__/findSpecFiles.test.js +45 -0
- package/dist/cli/initOpenApiConfig/utils/__tests__/validateSpecFiles.test.d.ts +2 -0
- package/dist/cli/initOpenApiConfig/utils/__tests__/validateSpecFiles.test.d.ts.map +1 -0
- package/dist/cli/initOpenApiConfig/utils/__tests__/validateSpecFiles.test.js +61 -0
- package/dist/cli/initOpenApiConfig/utils/buildConfig.d.ts +6 -12
- package/dist/cli/initOpenApiConfig/utils/buildConfig.d.ts.map +1 -1
- package/dist/cli/initOpenApiConfig/utils/buildConfig.js +24 -19
- package/dist/cli/initOpenApiConfig/utils/registerHandlebarTemplates.d.ts.map +1 -1
- package/dist/cli/initOpenApiConfig/utils/registerHandlebarTemplates.js +2 -0
- package/dist/cli/interactive/constants.d.ts +0 -4
- package/dist/cli/interactive/constants.d.ts.map +1 -1
- package/dist/cli/interactive/constants.js +1 -5
- package/dist/cli/previewChanges/previewChanges.d.ts +2 -1
- package/dist/cli/previewChanges/previewChanges.d.ts.map +1 -1
- package/dist/cli/previewChanges/previewChanges.js +8 -8
- package/dist/cli/previewChanges/utils/__tests__/compareFiles.test.d.ts +2 -0
- package/dist/cli/previewChanges/utils/__tests__/compareFiles.test.d.ts.map +1 -0
- package/dist/cli/previewChanges/utils/__tests__/compareFiles.test.js +52 -0
- package/dist/cli/previewChanges/utils/__tests__/isDirectoryEmpty.test.d.ts +2 -0
- package/dist/cli/previewChanges/utils/__tests__/isDirectoryEmpty.test.d.ts.map +1 -0
- package/dist/cli/previewChanges/utils/__tests__/isDirectoryEmpty.test.js +43 -0
- package/dist/cli/previewChanges/utils/__tests__/readDirectoryRecursive.test.d.ts +2 -0
- package/dist/cli/previewChanges/utils/__tests__/readDirectoryRecursive.test.d.ts.map +1 -0
- package/dist/cli/previewChanges/utils/__tests__/readDirectoryRecursive.test.js +32 -0
- package/dist/cli/previewChanges/utils/__tests__/updateOutputPaths.test.d.ts +2 -0
- package/dist/cli/previewChanges/utils/__tests__/updateOutputPaths.test.d.ts.map +1 -0
- package/dist/cli/previewChanges/utils/__tests__/updateOutputPaths.test.js +68 -0
- package/dist/cli/previewChanges/utils/formatDiff.d.ts.map +1 -1
- package/dist/cli/previewChanges/utils/updateOutputPaths.d.ts.map +1 -1
- package/dist/cli/previewChanges/utils/updateOutputPaths.js +5 -12
- package/dist/cli/schemas/__tests__/checkConfigAndUpdate.test.d.ts +2 -0
- package/dist/cli/schemas/__tests__/checkConfigAndUpdate.test.d.ts.map +1 -0
- package/dist/cli/schemas/__tests__/checkConfigAndUpdate.test.js +36 -0
- package/dist/cli/schemas/__tests__/generateOptionsSchema.test.d.ts +2 -0
- package/dist/cli/schemas/__tests__/generateOptionsSchema.test.d.ts.map +1 -0
- package/dist/cli/schemas/__tests__/generateOptionsSchema.test.js +59 -0
- package/dist/cli/schemas/__tests__/initOptionsSchema.test.d.ts +2 -0
- package/dist/cli/schemas/__tests__/initOptionsSchema.test.d.ts.map +1 -0
- package/dist/cli/schemas/__tests__/initOptionsSchema.test.js +43 -0
- package/dist/cli/schemas/__tests__/previewChangesSchema.test.d.ts +2 -0
- package/dist/cli/schemas/__tests__/previewChangesSchema.test.d.ts.map +1 -0
- package/dist/cli/schemas/__tests__/previewChangesSchema.test.js +31 -0
- package/dist/cli/schemas/analyzeUsage.d.ts +13 -0
- package/dist/cli/schemas/analyzeUsage.d.ts.map +1 -0
- package/dist/cli/schemas/analyzeUsage.js +41 -0
- package/dist/cli/schemas/generate.d.ts +10 -2
- package/dist/cli/schemas/generate.d.ts.map +1 -1
- package/dist/cli/schemas/generate.js +7 -2
- package/dist/cli/schemas/index.d.ts +2 -2
- package/dist/cli/schemas/index.d.ts.map +1 -1
- package/dist/cli/schemas/index.js +1 -1
- package/dist/cli/schemas/init.d.ts +10 -0
- package/dist/cli/schemas/init.d.ts.map +1 -1
- package/dist/cli/schemas/init.js +3 -1
- package/dist/cli/types.d.ts +6 -0
- package/dist/cli/types.d.ts.map +1 -0
- package/dist/cli/types.js +2 -0
- package/dist/common/Consts.d.ts +1 -0
- package/dist/common/Consts.d.ts.map +1 -1
- package/dist/common/Consts.js +7 -3
- package/dist/common/Logger.d.ts.map +1 -1
- package/dist/common/Logger.js +3 -3
- package/dist/common/LoggerMessages.d.ts +71 -12
- package/dist/common/LoggerMessages.d.ts.map +1 -1
- package/dist/common/LoggerMessages.js +76 -18
- package/dist/common/TEslintFixOptions.d.ts +20 -0
- package/dist/common/TEslintFixOptions.d.ts.map +1 -0
- package/dist/common/TEslintFixOptions.js +15 -0
- package/dist/common/TRawOptions.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans.js +2 -4
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.js +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedBase.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedBase.js +1 -2
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV1.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV1.js +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV2.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV2.js +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV4.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV5.d.ts +10 -2
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV5.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV5.js +15 -5
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.d.ts +18 -4
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.js +7 -1
- package/dist/common/VersionedSchema/CommonSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/CommonSchemas.js +4 -2
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV2.js +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV3.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV3.js +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV4.js +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV5.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsMigrationPlans.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV1.d.ts +2 -2
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV1.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV2.d.ts +2 -2
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV3.js +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV4.d.ts +1 -1
- package/dist/common/VersionedSchema/Utils/__mocks__/compatibilityCases.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/__mocks__/compatibilityCases.js +7 -1
- package/dist/common/VersionedSchema/Utils/__tests__/allUtils.test.js +4 -16
- package/dist/common/VersionedSchema/Utils/buildVersionedSchema.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/createDefaultFieldsMigration.d.ts +1 -1
- package/dist/common/VersionedSchema/Utils/createDefaultFieldsMigration.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/createDefaultFieldsMigration.js +1 -1
- package/dist/common/VersionedSchema/Utils/createTrivialMigration.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/createTrivialMigration.js +1 -1
- package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.js +4 -6
- package/dist/common/VersionedSchema/Utils/getLatestVersionFromMigrationPlans.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.js +6 -8
- package/dist/common/VersionedSchema/Utils/replaceInvalidKeysWithMappedNames.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/replaceInvalidKeysWithMappedNames.js +1 -1
- package/dist/common/VersionedSchema/Utils/validateAndSuggestKeyCorrections.d.ts.map +1 -1
- package/dist/common/VersionedSchema/refinements/dependentOptionsRefinement.d.ts +1 -1
- package/dist/common/VersionedSchema/refinements/dependentOptionsRefinement.d.ts.map +1 -1
- package/dist/common/utils/__tests__/eslintFix.test.js +25 -67
- package/dist/common/utils/__tests__/extractEslintFixOptions.test.d.ts +2 -0
- package/dist/common/utils/__tests__/extractEslintFixOptions.test.d.ts.map +1 -0
- package/dist/common/utils/__tests__/extractEslintFixOptions.test.js +28 -0
- package/dist/common/utils/__tests__/format.test.js +26 -17
- package/dist/common/utils/__tests__/prepareTempTsConfig.test.d.ts +2 -0
- package/dist/common/utils/__tests__/prepareTempTsConfig.test.d.ts.map +1 -0
- package/dist/common/utils/__tests__/prepareTempTsConfig.test.js +78 -0
- package/dist/common/utils/codegenTempDir.d.ts +20 -0
- package/dist/common/utils/codegenTempDir.d.ts.map +1 -0
- package/dist/common/utils/codegenTempDir.js +42 -0
- package/dist/common/utils/convertArrayToObject.d.ts.map +1 -1
- package/dist/common/utils/convertArrayToObject.js +3 -8
- package/dist/common/utils/eslintFix.d.ts +48 -4
- package/dist/common/utils/eslintFix.d.ts.map +1 -1
- package/dist/common/utils/eslintFix.js +121 -15
- package/dist/common/utils/format.d.ts +1 -1
- package/dist/common/utils/format.d.ts.map +1 -1
- package/dist/common/utils/format.js +23 -11
- package/dist/common/utils/jsonPath.d.ts.map +1 -1
- package/dist/common/utils/prepareTempEslintConfig.d.ts +18 -0
- package/dist/common/utils/prepareTempEslintConfig.d.ts.map +1 -0
- package/dist/common/utils/prepareTempEslintConfig.js +55 -0
- package/dist/common/utils/prepareTempTsConfig.d.ts +23 -0
- package/dist/common/utils/prepareTempTsConfig.d.ts.map +1 -0
- package/dist/common/utils/prepareTempTsConfig.js +105 -0
- package/dist/core/Context.d.ts.map +1 -1
- package/dist/core/Context.js +2 -6
- package/dist/core/OpenApiClient.d.ts +27 -1
- package/dist/core/OpenApiClient.d.ts.map +1 -1
- package/dist/core/OpenApiClient.js +259 -19
- package/dist/core/WriteClient.d.ts +84 -17
- package/dist/core/WriteClient.d.ts.map +1 -1
- package/dist/core/WriteClient.js +96 -22
- package/dist/core/__tests__/WriteClient.test.js +2 -1
- package/dist/core/api/v2/parser/getOperationResponses.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getOperationResponses.js +1 -3
- package/dist/core/api/v2/parser/getServiceName.d.ts +1 -1
- package/dist/core/api/v3/parser/getOperation.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getOperationParameters.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getOperationResponses.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getOperationResponses.js +1 -3
- package/dist/core/api/v3/parser/getServiceName.d.ts +1 -1
- package/dist/core/governance/evaluateGovernanceRules.d.ts.map +1 -1
- package/dist/core/governance/evaluateGovernanceRules.js +1 -3
- package/dist/core/governance/loadGovernanceConfig.d.ts.map +1 -1
- package/dist/core/governance/loadGovernanceConfig.js +2 -4
- package/dist/core/plugins/GeneratorPlugin.model.d.ts.map +1 -1
- package/dist/core/plugins/applySemanticDiffPluginHooks.d.ts.map +1 -1
- package/dist/core/plugins/getBuiltinPlugins.d.ts.map +1 -1
- package/dist/core/plugins/loadGeneratorPlugins.d.ts.map +1 -1
- package/dist/core/plugins/loadGeneratorPlugins.js +1 -1
- package/dist/core/semanticDiff/__tests__/analyzeOpenApiDiff.test.js +79 -21
- package/dist/core/semanticDiff/__tests__/semanticDiffReportSchema.test.js +20 -1
- package/dist/core/semanticDiff/analyzeOpenApiDiff.d.ts +58 -6
- package/dist/core/semanticDiff/analyzeOpenApiDiff.d.ts.map +1 -1
- package/dist/core/semanticDiff/analyzeOpenApiDiff.js +47 -19
- package/dist/core/semanticDiff/semanticDiffReportSchema.d.ts +8 -3
- package/dist/core/semanticDiff/semanticDiffReportSchema.d.ts.map +1 -1
- package/dist/core/semanticDiff/semanticDiffReportSchema.js +139 -56
- package/dist/core/strict/validateOpenApiStrict.d.ts.map +1 -1
- package/dist/core/types/Consts.js +1 -1
- package/dist/core/types/DiffReport.model.d.ts +101 -0
- package/dist/core/types/DiffReport.model.d.ts.map +1 -0
- package/dist/core/types/DiffReport.model.js +5 -0
- package/dist/core/types/base/ClientArtifacts.model.d.ts +3 -3
- package/dist/core/types/base/ClientArtifacts.model.d.ts.map +1 -1
- package/dist/core/types/base/ExportedModel.model.d.ts +1 -1
- package/dist/core/types/base/ExportedModel.model.d.ts.map +1 -1
- package/dist/core/types/base/ExportedService.model.d.ts.map +1 -1
- package/dist/core/types/base/OutputPaths.model.d.ts.map +1 -1
- package/dist/core/types/base/PrefixArtifacts.model.d.ts.map +1 -1
- package/dist/core/types/base/PropertyGroup.model.d.ts +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 +1 -0
- package/dist/core/types/base/Templates.model.d.ts.map +1 -1
- package/dist/core/types/shared/Client.model.d.ts +1 -1
- package/dist/core/types/shared/Client.model.d.ts.map +1 -1
- package/dist/core/types/shared/Model.model.d.ts +37 -1
- package/dist/core/types/shared/Model.model.d.ts.map +1 -1
- package/dist/core/utils/GenerationCache.d.ts +18 -0
- package/dist/core/utils/GenerationCache.d.ts.map +1 -0
- package/dist/core/utils/GenerationCache.js +41 -0
- package/dist/core/utils/__mocks__/templates.d.ts.map +1 -1
- package/dist/core/utils/__mocks__/templates.js +1 -0
- package/dist/core/utils/__tests__/GenerationCache.test.d.ts +2 -0
- package/dist/core/utils/__tests__/GenerationCache.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/GenerationCache.test.js +37 -0
- package/dist/core/utils/__tests__/applyDiffReportToClient.test.js +182 -0
- package/dist/core/utils/__tests__/buildMiraclesFromSemanticChanges.test.d.ts +2 -0
- package/dist/core/utils/__tests__/buildMiraclesFromSemanticChanges.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/buildMiraclesFromSemanticChanges.test.js +77 -0
- package/dist/core/utils/__tests__/expandOpenApiRefsForSemanticDiff.test.d.ts +2 -0
- package/dist/core/utils/__tests__/expandOpenApiRefsForSemanticDiff.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/expandOpenApiRefsForSemanticDiff.test.js +159 -0
- package/dist/core/utils/__tests__/loadDiffReport.test.d.ts +2 -0
- package/dist/core/utils/__tests__/loadDiffReport.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/loadDiffReport.test.js +246 -0
- package/dist/core/utils/__tests__/modelHelpers.test.js +27 -9
- package/dist/core/utils/__tests__/postProcessModelImports.test.js +1 -4
- package/dist/core/utils/__tests__/postProcessServiceImports.test.js +1 -4
- package/dist/core/utils/__tests__/prepareDtoModels.test.js +168 -1
- package/dist/core/utils/__tests__/registerHandlebarHelpers.test.js +27 -0
- package/dist/core/utils/__tests__/resolveClassesModeTypes.test.d.ts +2 -0
- package/dist/core/utils/__tests__/resolveClassesModeTypes.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/resolveClassesModeTypes.test.js +111 -0
- package/dist/core/utils/__tests__/semanticChangesToDiffEntries.test.d.ts +2 -0
- package/dist/core/utils/__tests__/semanticChangesToDiffEntries.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/semanticChangesToDiffEntries.test.js +68 -0
- package/dist/core/utils/__tests__/serviceHelpers.test.js +10 -11
- package/dist/core/utils/__tests__/sortByRequiredExtended.test.js +10 -27
- package/dist/core/utils/__tests__/templateRendering.test.d.ts +2 -0
- package/dist/core/utils/__tests__/templateRendering.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/templateRendering.test.js +190 -0
- package/dist/core/utils/__tests__/writeFileIfChanged.test.d.ts +2 -0
- package/dist/core/utils/__tests__/writeFileIfChanged.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/writeFileIfChanged.test.js +30 -0
- package/dist/core/utils/adapters/__tests__/semanticToStructural.test.d.ts +2 -0
- package/dist/core/utils/adapters/__tests__/semanticToStructural.test.d.ts.map +1 -0
- package/dist/core/utils/adapters/__tests__/semanticToStructural.test.js +63 -0
- package/dist/core/utils/adapters/extractMiraclesFromSemantic.d.ts +10 -0
- package/dist/core/utils/adapters/extractMiraclesFromSemantic.d.ts.map +1 -0
- package/dist/core/utils/adapters/extractMiraclesFromSemantic.js +13 -0
- package/dist/core/utils/adapters/index.d.ts +3 -0
- package/dist/core/utils/adapters/index.d.ts.map +1 -0
- package/dist/core/utils/adapters/index.js +6 -0
- package/dist/core/utils/adapters/semanticToStructural.d.ts +12 -0
- package/dist/core/utils/adapters/semanticToStructural.d.ts.map +1 -0
- package/dist/core/utils/adapters/semanticToStructural.js +36 -0
- package/dist/core/utils/applyDiffReportToClient.d.ts +13 -1
- package/dist/core/utils/applyDiffReportToClient.d.ts.map +1 -1
- package/dist/core/utils/applyDiffReportToClient.js +189 -109
- package/dist/core/utils/areEqual.d.ts +1 -1
- package/dist/core/utils/buildMiraclesFromSemanticChanges.d.ts +25 -0
- package/dist/core/utils/buildMiraclesFromSemanticChanges.d.ts.map +1 -0
- package/dist/core/utils/buildMiraclesFromSemanticChanges.js +146 -0
- package/dist/core/utils/expandOpenApiRefsForSemanticDiff.d.ts +23 -0
- package/dist/core/utils/expandOpenApiRefsForSemanticDiff.d.ts.map +1 -0
- package/dist/core/utils/expandOpenApiRefsForSemanticDiff.js +163 -0
- package/dist/core/utils/getOpenApiSpec.d.ts +6 -0
- package/dist/core/utils/getOpenApiSpec.d.ts.map +1 -1
- package/dist/core/utils/getOpenApiSpec.js +6 -0
- package/dist/core/utils/getOperationErrors.d.ts +2 -2
- package/dist/core/utils/getOperationErrors.d.ts.map +1 -1
- package/dist/core/utils/getOperationResults.d.ts +1 -1
- package/dist/core/utils/getPropertyGroupSimple.d.ts.map +1 -1
- package/dist/core/utils/getPropertyGroupSimple.js +1 -3
- package/dist/core/utils/isSubdirectory.d.ts.map +1 -1
- package/dist/core/utils/loadDiffReport.d.ts +11 -30
- package/dist/core/utils/loadDiffReport.d.ts.map +1 -1
- package/dist/core/utils/loadDiffReport.js +75 -9
- package/dist/core/utils/loadSemanticOpenApiSpec.d.ts +15 -0
- package/dist/core/utils/loadSemanticOpenApiSpec.d.ts.map +1 -0
- package/dist/core/utils/loadSemanticOpenApiSpec.js +61 -0
- package/dist/core/utils/modelHelpers.d.ts +13 -5
- package/dist/core/utils/modelHelpers.d.ts.map +1 -1
- package/dist/core/utils/modelHelpers.js +28 -23
- package/dist/core/utils/normalizeString.d.ts.map +1 -1
- package/dist/core/utils/normalizeString.js +1 -5
- package/dist/core/utils/postProcessServiceImports.d.ts.map +1 -1
- package/dist/core/utils/postProcessServiceImports.js +1 -3
- package/dist/core/utils/precompileTemplates.js +4 -2
- package/dist/core/utils/prepareAlias.d.ts +1 -1
- package/dist/core/utils/prepareDtoModels.d.ts +5 -0
- package/dist/core/utils/prepareDtoModels.d.ts.map +1 -1
- package/dist/core/utils/prepareDtoModels.js +57 -20
- package/dist/core/utils/registerHandlebarHelpers.d.ts +1 -0
- package/dist/core/utils/registerHandlebarHelpers.d.ts.map +1 -1
- package/dist/core/utils/registerHandlebarHelpers.js +3 -0
- package/dist/core/utils/registerHandlebarTemplates.d.ts +1 -0
- package/dist/core/utils/registerHandlebarTemplates.d.ts.map +1 -1
- package/dist/core/utils/registerHandlebarTemplates.js +2 -0
- package/dist/core/utils/resolveClassesModeTypes.d.ts +8 -0
- package/dist/core/utils/resolveClassesModeTypes.d.ts.map +1 -0
- package/dist/core/utils/resolveClassesModeTypes.js +77 -0
- package/dist/core/utils/semanticChangesToDiffEntries.d.ts +28 -0
- package/dist/core/utils/semanticChangesToDiffEntries.d.ts.map +1 -0
- package/dist/core/utils/semanticChangesToDiffEntries.js +98 -0
- package/dist/core/utils/semanticPointerToJsonPath.d.ts +7 -0
- package/dist/core/utils/semanticPointerToJsonPath.d.ts.map +1 -0
- package/dist/core/utils/semanticPointerToJsonPath.js +67 -0
- package/dist/core/utils/serviceHelpers.d.ts +6 -7
- package/dist/core/utils/serviceHelpers.d.ts.map +1 -1
- package/dist/core/utils/serviceHelpers.js +8 -25
- package/dist/core/utils/sortModelByName.d.ts +1 -1
- package/dist/core/utils/validateRawOptions.js +2 -2
- package/dist/core/utils/writeClientCore.d.ts +2 -0
- package/dist/core/utils/writeClientCore.d.ts.map +1 -1
- package/dist/core/utils/writeClientCore.js +43 -21
- package/dist/core/utils/writeClientCoreIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientCoreIndex.js +14 -4
- package/dist/core/utils/writeClientExecutor.d.ts +1 -3
- package/dist/core/utils/writeClientExecutor.d.ts.map +1 -1
- package/dist/core/utils/writeClientExecutor.js +6 -11
- package/dist/core/utils/writeClientFullIndex.js +4 -4
- package/dist/core/utils/writeClientModels.d.ts +1 -2
- package/dist/core/utils/writeClientModels.d.ts.map +1 -1
- package/dist/core/utils/writeClientModels.js +14 -16
- package/dist/core/utils/writeClientModelsIndex.d.ts +1 -1
- package/dist/core/utils/writeClientModelsIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientModelsIndex.js +14 -4
- package/dist/core/utils/writeClientSchemas.d.ts +1 -3
- package/dist/core/utils/writeClientSchemas.d.ts.map +1 -1
- package/dist/core/utils/writeClientSchemas.js +9 -14
- package/dist/core/utils/writeClientSchemasIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientSchemasIndex.js +14 -4
- package/dist/core/utils/writeClientServices.d.ts +15 -16
- package/dist/core/utils/writeClientServices.d.ts.map +1 -1
- package/dist/core/utils/writeClientServices.js +12 -19
- package/dist/core/utils/writeClientServicesIndex.d.ts.map +1 -1
- package/dist/core/utils/writeClientServicesIndex.js +14 -4
- package/dist/core/utils/writeClientSimpleIndex.js +4 -4
- package/dist/core/utils/writeFileIfChanged.d.ts +3 -0
- package/dist/core/utils/writeFileIfChanged.d.ts.map +1 -0
- package/dist/core/utils/writeFileIfChanged.js +22 -0
- package/dist/templatesCompiled/cli/customCreateExecutorAdapter.d.ts +8 -0
- package/dist/templatesCompiled/cli/customCreateExecutorAdapter.d.ts.map +1 -0
- package/dist/templatesCompiled/cli/customCreateExecutorAdapter.js +18 -0
- package/dist/templatesCompiled/cli/customRequest.js +7 -7
- package/dist/templatesCompiled/cli/customRequestExecutor.js +7 -7
- package/dist/templatesCompiled/client/core/ApiError.js +1 -1
- package/dist/templatesCompiled/client/core/executor/createExecutorAdapter.d.ts +0 -6
- package/dist/templatesCompiled/client/core/executor/createExecutorAdapter.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/executor/createExecutorAdapter.js +3 -22
- package/dist/templatesCompiled/client/core/executor/legacyRequestAdapter.d.ts +11 -0
- package/dist/templatesCompiled/client/core/executor/legacyRequestAdapter.d.ts.map +1 -0
- package/dist/templatesCompiled/client/core/executor/legacyRequestAdapter.js +28 -0
- package/dist/templatesCompiled/client/core/executor/requestExecutor.d.ts +2 -0
- package/dist/templatesCompiled/client/core/executor/requestExecutor.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/executor/requestExecutor.js +8 -2
- package/dist/templatesCompiled/client/core/functions/catchErrors.js +1 -1
- package/dist/templatesCompiled/client/core/interceptors/apiErrorInterceptor.js +1 -1
- package/dist/templatesCompiled/client/core/interceptors/interceptors.js +1 -1
- package/dist/templatesCompiled/client/core/interceptors/withInterceptors.js +1 -1
- package/dist/templatesCompiled/client/exportClient.d.ts +0 -4
- package/dist/templatesCompiled/client/exportClient.d.ts.map +1 -1
- package/dist/templatesCompiled/client/exportClient.js +9 -45
- package/dist/templatesCompiled/client/exportModels.d.ts +17 -11
- package/dist/templatesCompiled/client/exportModels.d.ts.map +1 -1
- package/dist/templatesCompiled/client/exportModels.js +96 -49
- package/dist/templatesCompiled/client/exportService.d.ts +13 -10
- package/dist/templatesCompiled/client/exportService.d.ts.map +1 -1
- package/dist/templatesCompiled/client/exportService.js +95 -67
- package/dist/templatesCompiled/client/indexCore.js +4 -4
- package/dist/templatesCompiled/client/indexFull.js +8 -8
- package/dist/templatesCompiled/client/indexSimple.js +2 -2
- package/dist/templatesCompiled/client/partials/header.d.ts +1 -0
- package/dist/templatesCompiled/client/partials/header.d.ts.map +1 -1
- package/dist/templatesCompiled/client/partials/header.js +11 -2
- package/dist/test/helpers/silenceLoggers.d.ts +11 -0
- package/dist/test/helpers/silenceLoggers.d.ts.map +1 -0
- package/dist/test/helpers/silenceLoggers.js +88 -0
- package/package.json +132 -136
- package/dist/cli/analyzeDiff/buildLegacyReport.d.ts +0 -17
- package/dist/cli/analyzeDiff/buildLegacyReport.d.ts.map +0 -1
- package/dist/cli/analyzeDiff/buildLegacyReport.js +0 -54
- package/dist/cli/analyzeDiff/diffEngine.d.ts +0 -54
- package/dist/cli/analyzeDiff/diffEngine.d.ts.map +0 -1
- package/dist/cli/analyzeDiff/diffEngine.js +0 -209
- package/dist/cli/analyzeDiff/logLegacyReport.d.ts +0 -6
- package/dist/cli/analyzeDiff/logLegacyReport.d.ts.map +0 -1
- package/dist/cli/analyzeDiff/logLegacyReport.js +0 -29
- package/dist/cli/analyzeDiff/report.d.ts +0 -3
- package/dist/cli/analyzeDiff/report.d.ts.map +0 -1
- package/dist/cli/analyzeDiff/report.js +0 -7
- package/dist/cli/analyzeDiff/writeLegacyReport.d.ts +0 -6
- package/dist/cli/analyzeDiff/writeLegacyReport.d.ts.map +0 -1
- package/dist/cli/analyzeDiff/writeLegacyReport.js +0 -21
- package/dist/common/VersionedSchema/refinements/singleOrMultiRefinement.d.ts +0 -4
- package/dist/common/VersionedSchema/refinements/singleOrMultiRefinement.d.ts.map +0 -1
- package/dist/common/VersionedSchema/refinements/singleOrMultiRefinement.js +0 -21
- package/dist/common/utils/normalizeObject.d.ts +0 -2
- package/dist/common/utils/normalizeObject.d.ts.map +0 -1
- package/dist/common/utils/normalizeObject.js +0 -63
- package/dist/core/utils/appendUniqueLinesToFile.d.ts +0 -2
- package/dist/core/utils/appendUniqueLinesToFile.d.ts.map +0 -1
- package/dist/core/utils/appendUniqueLinesToFile.js +0 -24
|
@@ -1,7 +1,51 @@
|
|
|
1
|
+
/** Single ESLint diagnostic stored in {@link EslintFixReport} (no source/output). */
|
|
2
|
+
export interface EslintFixReportMessage {
|
|
3
|
+
filePath: string;
|
|
4
|
+
ruleId: string | null;
|
|
5
|
+
line: number;
|
|
6
|
+
column: number;
|
|
7
|
+
message: string;
|
|
8
|
+
severity: number;
|
|
9
|
+
}
|
|
10
|
+
/** Per-file lint messages in {@link EslintFixReport}. */
|
|
11
|
+
export interface EslintFixReportFile {
|
|
12
|
+
filePath: string;
|
|
13
|
+
messages: EslintFixReportMessage[];
|
|
14
|
+
}
|
|
15
|
+
/** Aggregated batch ESLint results written to eslint-fix-report.json. */
|
|
16
|
+
export interface EslintFixReport {
|
|
17
|
+
summary: {
|
|
18
|
+
totalFiles: number;
|
|
19
|
+
errorCount: number;
|
|
20
|
+
warningCount: number;
|
|
21
|
+
fixableErrorCount: number;
|
|
22
|
+
fixableWarningCount: number;
|
|
23
|
+
};
|
|
24
|
+
files: EslintFixReportFile[];
|
|
25
|
+
}
|
|
26
|
+
/** Options for {@link eslintFixBatch}. */
|
|
27
|
+
export interface EslintFixBatchOptions {
|
|
28
|
+
/** Absolute or cwd-relative paths to generated TypeScript files. */
|
|
29
|
+
files: string[];
|
|
30
|
+
/** Narrow include globs for the temporary tsconfig (models/services output). */
|
|
31
|
+
includeGlobs: string[];
|
|
32
|
+
/** Path to the host project's base tsconfig.json. */
|
|
33
|
+
tsconfigPath: string;
|
|
34
|
+
/** Path to the host project's ESLint config. */
|
|
35
|
+
eslintConfigPath: string;
|
|
36
|
+
/** Project root (defaults to process.cwd()). */
|
|
37
|
+
cwd?: string;
|
|
38
|
+
/** Number of files per lintFiles call (default 50, or ESLINT_FIX_BATCH_SIZE env). */
|
|
39
|
+
batchSize?: number;
|
|
40
|
+
}
|
|
1
41
|
/**
|
|
2
|
-
* Runs ESLint --fix
|
|
3
|
-
*
|
|
4
|
-
*
|
|
42
|
+
* Runs ESLint --fix in memory-safe batches on an explicit file list.
|
|
43
|
+
*
|
|
44
|
+
* Creates temporary configs under .openapi-codegen/, lints in chunks, applies fixes,
|
|
45
|
+
* writes eslint-fix-report.json, then removes temp files. Does not use projectService.
|
|
46
|
+
*
|
|
47
|
+
* @param options - File paths, globs, and host project config paths.
|
|
48
|
+
* @returns Lint report, or null when there are no files or ESLint is not installed.
|
|
5
49
|
*/
|
|
6
|
-
export declare function
|
|
50
|
+
export declare function eslintFixBatch(options: EslintFixBatchOptions): Promise<EslintFixReport | null>;
|
|
7
51
|
//# sourceMappingURL=eslintFix.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eslintFix.d.ts","sourceRoot":"","sources":["../../../src/common/utils/eslintFix.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"eslintFix.d.ts","sourceRoot":"","sources":["../../../src/common/utils/eslintFix.ts"],"names":[],"mappings":"AAYA,qFAAqF;AACrF,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,yDAAyD;AACzD,MAAM,WAAW,mBAAmB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,sBAAsB,EAAE,CAAC;CACtC;AAED,yEAAyE;AACzE,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE;QACL,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,mBAAmB,EAAE,MAAM,CAAC;KAC/B,CAAC;IACF,KAAK,EAAE,mBAAmB,EAAE,CAAC;CAChC;AAED,0CAA0C;AAC1C,MAAM,WAAW,qBAAqB;IAClC,oEAAoE;IACpE,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,gFAAgF;IAChF,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAC;IACrB,gDAAgD;IAChD,gBAAgB,EAAE,MAAM,CAAC;IACzB,gDAAgD;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAyGD;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAiEpG"}
|
|
@@ -33,13 +33,70 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.
|
|
36
|
+
exports.eslintFixBatch = eslintFixBatch;
|
|
37
37
|
const Consts_1 = require("../Consts");
|
|
38
38
|
const LoggerMessages_1 = require("../LoggerMessages");
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
39
|
+
const codegenTempDir_1 = require("./codegenTempDir");
|
|
40
|
+
const fileSystemHelpers_1 = require("./fileSystemHelpers");
|
|
41
|
+
const pathHelpers_1 = require("./pathHelpers");
|
|
42
|
+
const prepareTempEslintConfig_1 = require("./prepareTempEslintConfig");
|
|
43
|
+
const prepareTempTsConfig_1 = require("./prepareTempTsConfig");
|
|
44
|
+
const DEFAULT_BATCH_SIZE = 50;
|
|
45
|
+
/** JSON report filename (eslint-fix-report.json) written to the project root after batch ESLint fix. */
|
|
46
|
+
const ESLINT_FIX_REPORT_FILE = 'eslint-fix-report.json';
|
|
47
|
+
function getBatchSize(batchSize) {
|
|
48
|
+
if (batchSize !== undefined && batchSize > 0) {
|
|
49
|
+
return batchSize;
|
|
50
|
+
}
|
|
51
|
+
const fromEnv = Number(process.env.ESLINT_FIX_BATCH_SIZE);
|
|
52
|
+
if (Number.isFinite(fromEnv) && fromEnv > 0) {
|
|
53
|
+
return fromEnv;
|
|
54
|
+
}
|
|
55
|
+
return DEFAULT_BATCH_SIZE;
|
|
56
|
+
}
|
|
57
|
+
function* chunkArray(items, size) {
|
|
58
|
+
for (let index = 0; index < items.length; index += size) {
|
|
59
|
+
yield items.slice(index, index + size);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
function createEmptyReport() {
|
|
63
|
+
return {
|
|
64
|
+
summary: {
|
|
65
|
+
totalFiles: 0,
|
|
66
|
+
errorCount: 0,
|
|
67
|
+
warningCount: 0,
|
|
68
|
+
fixableErrorCount: 0,
|
|
69
|
+
fixableWarningCount: 0,
|
|
70
|
+
},
|
|
71
|
+
files: [],
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
function mergeLintResults(report, results) {
|
|
75
|
+
for (const result of results) {
|
|
76
|
+
const messages = [];
|
|
77
|
+
for (const message of result.messages) {
|
|
78
|
+
messages.push({
|
|
79
|
+
filePath: result.filePath,
|
|
80
|
+
ruleId: message.ruleId ?? null,
|
|
81
|
+
line: message.line ?? 0,
|
|
82
|
+
column: message.column ?? 0,
|
|
83
|
+
message: message.message ?? '',
|
|
84
|
+
severity: message.severity ?? 1,
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
if (messages.length > 0) {
|
|
88
|
+
report.files.push({
|
|
89
|
+
filePath: result.filePath,
|
|
90
|
+
messages,
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
report.summary.totalFiles += 1;
|
|
94
|
+
report.summary.errorCount += result.errorCount ?? 0;
|
|
95
|
+
report.summary.warningCount += result.warningCount ?? 0;
|
|
96
|
+
report.summary.fixableErrorCount += result.fixableErrorCount ?? 0;
|
|
97
|
+
report.summary.fixableWarningCount += result.fixableWarningCount ?? 0;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
43
100
|
async function tryImportESLint() {
|
|
44
101
|
try {
|
|
45
102
|
const mod = await Promise.resolve().then(() => __importStar(require('eslint')));
|
|
@@ -49,30 +106,79 @@ async function tryImportESLint() {
|
|
|
49
106
|
return null;
|
|
50
107
|
}
|
|
51
108
|
}
|
|
109
|
+
async function writeEslintFixReport(report, cwd) {
|
|
110
|
+
const reportPath = (0, pathHelpers_1.resolveHelper)(cwd, ESLINT_FIX_REPORT_FILE);
|
|
111
|
+
await fileSystemHelpers_1.fileSystemHelpers.writeFile(reportPath, `${JSON.stringify(report, null, 2)}\n`);
|
|
112
|
+
return reportPath;
|
|
113
|
+
}
|
|
52
114
|
/**
|
|
53
|
-
* Runs ESLint --fix
|
|
54
|
-
*
|
|
55
|
-
*
|
|
115
|
+
* Runs ESLint --fix in memory-safe batches on an explicit file list.
|
|
116
|
+
*
|
|
117
|
+
* Creates temporary configs under .openapi-codegen/, lints in chunks, applies fixes,
|
|
118
|
+
* writes eslint-fix-report.json, then removes temp files. Does not use projectService.
|
|
119
|
+
*
|
|
120
|
+
* @param options - File paths, globs, and host project config paths.
|
|
121
|
+
* @returns Lint report, or null when there are no files or ESLint is not installed.
|
|
56
122
|
*/
|
|
57
|
-
async function
|
|
123
|
+
async function eslintFixBatch(options) {
|
|
124
|
+
const cwd = options.cwd ?? process.cwd();
|
|
125
|
+
const uniqueFiles = [...new Set(options.files.map(file => (0, pathHelpers_1.resolveHelper)(cwd, file)))].sort();
|
|
126
|
+
if (uniqueFiles.length === 0) {
|
|
127
|
+
return null;
|
|
128
|
+
}
|
|
58
129
|
const eslintModule = await tryImportESLint();
|
|
59
130
|
if (!eslintModule) {
|
|
60
131
|
Consts_1.APP_LOGGER.warn(LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.ESLINT_NOT_INSTALLED);
|
|
61
|
-
return;
|
|
132
|
+
return null;
|
|
62
133
|
}
|
|
134
|
+
const report = createEmptyReport();
|
|
135
|
+
const batchSize = getBatchSize(options.batchSize);
|
|
63
136
|
try {
|
|
64
|
-
const
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
137
|
+
const tempTsconfigPath = await (0, prepareTempTsConfig_1.prepareTempTsConfig)({
|
|
138
|
+
baseTsconfigPath: options.tsconfigPath,
|
|
139
|
+
includeGlobs: options.includeGlobs,
|
|
140
|
+
cwd,
|
|
141
|
+
});
|
|
142
|
+
const tempEslintPath = await (0, prepareTempEslintConfig_1.prepareTempEslintConfig)({
|
|
143
|
+
eslintConfigPath: options.eslintConfigPath,
|
|
144
|
+
tempTsconfigPath,
|
|
145
|
+
cwd,
|
|
146
|
+
});
|
|
147
|
+
const eslint = new eslintModule.ESLint({
|
|
148
|
+
cwd,
|
|
149
|
+
fix: true,
|
|
150
|
+
overrideConfigFile: tempEslintPath,
|
|
151
|
+
});
|
|
152
|
+
for (const chunk of chunkArray(uniqueFiles, batchSize)) {
|
|
153
|
+
try {
|
|
154
|
+
const results = await eslint.lintFiles(chunk);
|
|
155
|
+
await eslintModule.ESLint.outputFixes(results);
|
|
156
|
+
mergeLintResults(report, results);
|
|
157
|
+
}
|
|
158
|
+
catch (error) {
|
|
159
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
160
|
+
Consts_1.APP_LOGGER.warn(LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.ESLINT_BATCH_CHUNK_FAILED(message));
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
const reportPath = await writeEslintFixReport(report, cwd);
|
|
164
|
+
if (report.summary.errorCount > 0 || report.summary.warningCount > 0) {
|
|
165
|
+
Consts_1.APP_LOGGER.warn(LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.ESLINT_BATCH_COMPLETED_WITH_ISSUES(report.summary.errorCount, report.summary.warningCount, reportPath));
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
Consts_1.APP_LOGGER.info(LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.ESLINT_BATCH_COMPLETED(reportPath));
|
|
169
|
+
}
|
|
170
|
+
return report;
|
|
68
171
|
}
|
|
69
172
|
catch (error) {
|
|
70
173
|
const message = error instanceof Error ? error.message : String(error);
|
|
71
174
|
Consts_1.APP_LOGGER.errorWithHint({
|
|
72
175
|
code: LoggerMessages_1.LOGGER_ERROR_CODES.ESLINT_FIX_FAILED,
|
|
73
|
-
message: LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.
|
|
176
|
+
message: LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.ESLINT_BATCH_FAILED(message),
|
|
74
177
|
error,
|
|
75
178
|
});
|
|
76
179
|
throw error;
|
|
77
180
|
}
|
|
181
|
+
finally {
|
|
182
|
+
await (0, codegenTempDir_1.cleanupCodegenTempDir)(cwd);
|
|
183
|
+
}
|
|
78
184
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { BuiltInParserName, LiteralUnion } from 'prettier';
|
|
2
|
-
export declare function format(input: string, parser?: LiteralUnion<BuiltInParserName>,
|
|
2
|
+
export declare function format(input: string, parser?: LiteralUnion<BuiltInParserName>, prettierConfigPath?: string): Promise<string>;
|
|
3
3
|
//# sourceMappingURL=format.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/common/utils/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAA4B,YAAY,EAA6C,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/common/utils/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAA4B,YAAY,EAA6C,MAAM,UAAU,CAAC;AAmBhI,wBAAsB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC,EAAE,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsClI"}
|
|
@@ -4,6 +4,8 @@ exports.format = format;
|
|
|
4
4
|
const prettier_1 = require("prettier");
|
|
5
5
|
const Consts_1 = require("../Consts");
|
|
6
6
|
const LoggerMessages_1 = require("../LoggerMessages");
|
|
7
|
+
const fileSystemHelpers_1 = require("./fileSystemHelpers");
|
|
8
|
+
const pathHelpers_1 = require("./pathHelpers");
|
|
7
9
|
const BUILTIN_PRETTIER_OPTIONS = {
|
|
8
10
|
tabWidth: 4,
|
|
9
11
|
printWidth: 120,
|
|
@@ -15,21 +17,31 @@ const BUILTIN_PRETTIER_OPTIONS = {
|
|
|
15
17
|
arrowParens: 'avoid',
|
|
16
18
|
endOfLine: 'auto',
|
|
17
19
|
};
|
|
18
|
-
async function format(input, parser,
|
|
20
|
+
async function format(input, parser, prettierConfigPath) {
|
|
19
21
|
let options = { ...BUILTIN_PRETTIER_OPTIONS, parser: parser ?? 'typescript' };
|
|
20
|
-
if (
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
if (prettierConfigPath) {
|
|
23
|
+
const absoluteConfigPath = (0, pathHelpers_1.resolveHelper)(process.cwd(), prettierConfigPath);
|
|
24
|
+
const configExists = await fileSystemHelpers_1.fileSystemHelpers.exists(absoluteConfigPath);
|
|
25
|
+
if (configExists) {
|
|
26
|
+
try {
|
|
27
|
+
const resolved = await (0, prettier_1.resolveConfig)(absoluteConfigPath, { config: absoluteConfigPath, useCache: false });
|
|
28
|
+
if (resolved) {
|
|
29
|
+
Consts_1.APP_LOGGER.info(LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.PRETTIER_CONFIG_RESOLVED(absoluteConfigPath));
|
|
30
|
+
options = {
|
|
31
|
+
...resolved,
|
|
32
|
+
parser: parser ?? resolved.parser ?? 'typescript',
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
Consts_1.APP_LOGGER.warn(LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.PRETTIER_CONFIG_NOT_FOUND(prettierConfigPath));
|
|
37
|
+
}
|
|
26
38
|
}
|
|
27
|
-
|
|
28
|
-
Consts_1.APP_LOGGER.warn(LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.
|
|
39
|
+
catch {
|
|
40
|
+
Consts_1.APP_LOGGER.warn(LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.PRETTIER_CONFIG_NOT_FOUND(prettierConfigPath));
|
|
29
41
|
}
|
|
30
42
|
}
|
|
31
|
-
|
|
32
|
-
Consts_1.APP_LOGGER.warn(LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.
|
|
43
|
+
else {
|
|
44
|
+
Consts_1.APP_LOGGER.warn(LoggerMessages_1.LOGGER_MESSAGES.FORMATTING.PRETTIER_CONFIG_NOT_FOUND(prettierConfigPath));
|
|
33
45
|
}
|
|
34
46
|
}
|
|
35
47
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsonPath.d.ts","sourceRoot":"","sources":["../../../src/common/utils/jsonPath.ts"],"names":[],"mappings":"AAAA,KAAK,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvC,eAAO,MAAM,UAAU,GAAI,UAAU,eAAe,EAAE,KAAG,
|
|
1
|
+
{"version":3,"file":"jsonPath.d.ts","sourceRoot":"","sources":["../../../src/common/utils/jsonPath.ts"],"names":[],"mappings":"AAAA,KAAK,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvC,eAAO,MAAM,UAAU,GAAI,UAAU,eAAe,EAAE,KAAG,MAaxD,CAAC;AAIF,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,MAAM,EAQlD,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** Options for {@link prepareTempEslintConfig}. */
|
|
2
|
+
export interface PrepareTempEslintConfigOptions {
|
|
3
|
+
/** Path to the host project's ESLint config file. */
|
|
4
|
+
eslintConfigPath: string;
|
|
5
|
+
/** Absolute path to the temporary tsconfig from {@link prepareTempTsConfig}. */
|
|
6
|
+
tempTsconfigPath: string;
|
|
7
|
+
/** Project root (defaults to process.cwd()). */
|
|
8
|
+
cwd?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Writes an ESLint flat-config wrapper that imports the host config and points type-aware rules
|
|
12
|
+
* at the temporary tsconfig.
|
|
13
|
+
*
|
|
14
|
+
* @param options - Host ESLint config path and temporary tsconfig path.
|
|
15
|
+
* @returns Absolute path to .openapi-codegen/eslint.config.codegen.mjs.
|
|
16
|
+
*/
|
|
17
|
+
export declare function prepareTempEslintConfig(options: PrepareTempEslintConfigOptions): Promise<string>;
|
|
18
|
+
//# sourceMappingURL=prepareTempEslintConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareTempEslintConfig.d.ts","sourceRoot":"","sources":["../../../src/common/utils/prepareTempEslintConfig.ts"],"names":[],"mappings":"AAOA,mDAAmD;AACnD,MAAM,WAAW,8BAA8B;IAC3C,qDAAqD;IACrD,gBAAgB,EAAE,MAAM,CAAC;IACzB,gFAAgF;IAChF,gBAAgB,EAAE,MAAM,CAAC;IACzB,gDAAgD;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,MAAM,CAAC,CAsCtG"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.prepareTempEslintConfig = prepareTempEslintConfig;
|
|
7
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
8
|
+
const node_url_1 = require("node:url");
|
|
9
|
+
const codegenTempDir_1 = require("./codegenTempDir");
|
|
10
|
+
const fileSystemHelpers_1 = require("./fileSystemHelpers");
|
|
11
|
+
const pathHelpers_1 = require("./pathHelpers");
|
|
12
|
+
/**
|
|
13
|
+
* Writes an ESLint flat-config wrapper that imports the host config and points type-aware rules
|
|
14
|
+
* at the temporary tsconfig.
|
|
15
|
+
*
|
|
16
|
+
* @param options - Host ESLint config path and temporary tsconfig path.
|
|
17
|
+
* @returns Absolute path to .openapi-codegen/eslint.config.codegen.mjs.
|
|
18
|
+
*/
|
|
19
|
+
async function prepareTempEslintConfig(options) {
|
|
20
|
+
const cwd = options.cwd ?? process.cwd();
|
|
21
|
+
await (0, codegenTempDir_1.ensureCodegenTempDir)(cwd);
|
|
22
|
+
const absoluteUserConfig = (0, pathHelpers_1.resolveHelper)(cwd, options.eslintConfigPath);
|
|
23
|
+
const userConfigUrl = (0, node_url_1.pathToFileURL)(absoluteUserConfig).href;
|
|
24
|
+
const tsconfigFileName = node_path_1.default.basename(options.tempTsconfigPath);
|
|
25
|
+
const wrapperPath = node_path_1.default.join((0, codegenTempDir_1.getCodegenTempDir)(cwd), 'eslint.config.codegen.mjs');
|
|
26
|
+
const content = `import userConfig from ${JSON.stringify(userConfigUrl)};
|
|
27
|
+
import path from 'node:path';
|
|
28
|
+
import { fileURLToPath } from 'node:url';
|
|
29
|
+
|
|
30
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
31
|
+
const tempTsconfigPath = path.join(__dirname, ${JSON.stringify(tsconfigFileName)});
|
|
32
|
+
|
|
33
|
+
function normalizeConfigs(config) {
|
|
34
|
+
if (!config) {
|
|
35
|
+
return [];
|
|
36
|
+
}
|
|
37
|
+
return Array.isArray(config) ? config : [config];
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export default [
|
|
41
|
+
...normalizeConfigs(userConfig),
|
|
42
|
+
{
|
|
43
|
+
files: ['**/*.{ts,tsx}'],
|
|
44
|
+
languageOptions: {
|
|
45
|
+
parserOptions: {
|
|
46
|
+
project: tempTsconfigPath,
|
|
47
|
+
tsconfigRootDir: ${JSON.stringify(cwd)},
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
];
|
|
52
|
+
`;
|
|
53
|
+
await fileSystemHelpers_1.fileSystemHelpers.writeFile(wrapperPath, content);
|
|
54
|
+
return wrapperPath;
|
|
55
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** Options for {@link prepareTempTsConfig}. */
|
|
2
|
+
export interface PrepareTempTsConfigOptions {
|
|
3
|
+
/** Path to the host project's base tsconfig.json. */
|
|
4
|
+
baseTsconfigPath: string;
|
|
5
|
+
/**
|
|
6
|
+
* Narrow include globs for generated output only (e.g. ./generated/models/.../*.ts).
|
|
7
|
+
* Replaces the base tsconfig include; the base include is not merged.
|
|
8
|
+
*/
|
|
9
|
+
includeGlobs: string[];
|
|
10
|
+
/** Project root (defaults to process.cwd()). */
|
|
11
|
+
cwd?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Builds a temporary tsconfig for type-aware ESLint without loading the whole repository.
|
|
15
|
+
*
|
|
16
|
+
* Reads compilerOptions from the base tsconfig, then writes .openapi-codegen/tsconfig.eslint.json
|
|
17
|
+
* with a replaced include, noEmit, skipLibCheck, and incremental: false.
|
|
18
|
+
*
|
|
19
|
+
* @param options - Base tsconfig path and narrow include globs.
|
|
20
|
+
* @returns Absolute path to the written temporary tsconfig file.
|
|
21
|
+
*/
|
|
22
|
+
export declare function prepareTempTsConfig(options: PrepareTempTsConfigOptions): Promise<string>;
|
|
23
|
+
//# sourceMappingURL=prepareTempTsConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareTempTsConfig.d.ts","sourceRoot":"","sources":["../../../src/common/utils/prepareTempTsConfig.ts"],"names":[],"mappings":"AAyEA,+CAA+C;AAC/C,MAAM,WAAW,0BAA0B;IACvC,qDAAqD;IACrD,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,gDAAgD;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CAoC9F"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.prepareTempTsConfig = prepareTempTsConfig;
|
|
7
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
8
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
9
|
+
const codegenTempDir_1 = require("./codegenTempDir");
|
|
10
|
+
const fileSystemHelpers_1 = require("./fileSystemHelpers");
|
|
11
|
+
const pathHelpers_1 = require("./pathHelpers");
|
|
12
|
+
/** Parsed CompilerOptions may include fields that are not valid in tsconfig.json. */
|
|
13
|
+
const INTERNAL_COMPILER_OPTION_KEYS = new Set(['configFilePath']);
|
|
14
|
+
function isWritableCompilerOptionKey(key) {
|
|
15
|
+
return !INTERNAL_COMPILER_OPTION_KEYS.has(key);
|
|
16
|
+
}
|
|
17
|
+
/** Maps parsed numeric enum values back to tsconfig.json string literals. */
|
|
18
|
+
function serializeEnumCompilerOption(key, value) {
|
|
19
|
+
switch (key) {
|
|
20
|
+
case 'target':
|
|
21
|
+
return typescript_1.default.ScriptTarget[value] ?? value;
|
|
22
|
+
case 'module':
|
|
23
|
+
return typescript_1.default.ModuleKind[value] ?? value;
|
|
24
|
+
case 'moduleResolution':
|
|
25
|
+
return typescript_1.default.ModuleResolutionKind[value] ?? value;
|
|
26
|
+
case 'jsx':
|
|
27
|
+
return typescript_1.default.JsxEmit[value] ?? value;
|
|
28
|
+
case 'newLine':
|
|
29
|
+
return typescript_1.default.NewLineKind[value] ?? value;
|
|
30
|
+
default:
|
|
31
|
+
return value;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
/** Maps parsed CompilerOptions to a JSON-serializable tsconfig fragment. */
|
|
35
|
+
function compilerOptionsToJson(options) {
|
|
36
|
+
const json = {};
|
|
37
|
+
const source = options;
|
|
38
|
+
for (const [key, value] of Object.entries(source)) {
|
|
39
|
+
if (value === undefined || !isWritableCompilerOptionKey(key)) {
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
if (typeof value === 'number') {
|
|
43
|
+
json[key] = serializeEnumCompilerOption(key, value);
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
json[key] = value;
|
|
47
|
+
}
|
|
48
|
+
return json;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Builds JSON-safe compilerOptions: parsed values (extends resolved) plus raw literals
|
|
52
|
+
* from the base file (preserves lib/types paths as written in tsconfig.json).
|
|
53
|
+
*/
|
|
54
|
+
function mergeCompilerOptionsForJson(rawCompilerOptions, parsedOptions) {
|
|
55
|
+
const json = compilerOptionsToJson(parsedOptions);
|
|
56
|
+
const rawSource = rawCompilerOptions;
|
|
57
|
+
if (rawSource) {
|
|
58
|
+
for (const [key, value] of Object.entries(rawSource)) {
|
|
59
|
+
if (value !== undefined && isWritableCompilerOptionKey(key)) {
|
|
60
|
+
json[key] = value;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return json;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Builds a temporary tsconfig for type-aware ESLint without loading the whole repository.
|
|
68
|
+
*
|
|
69
|
+
* Reads compilerOptions from the base tsconfig, then writes .openapi-codegen/tsconfig.eslint.json
|
|
70
|
+
* with a replaced include, noEmit, skipLibCheck, and incremental: false.
|
|
71
|
+
*
|
|
72
|
+
* @param options - Base tsconfig path and narrow include globs.
|
|
73
|
+
* @returns Absolute path to the written temporary tsconfig file.
|
|
74
|
+
*/
|
|
75
|
+
async function prepareTempTsConfig(options) {
|
|
76
|
+
const cwd = options.cwd ?? process.cwd();
|
|
77
|
+
const absoluteBase = (0, pathHelpers_1.resolveHelper)(cwd, options.baseTsconfigPath);
|
|
78
|
+
const baseDir = node_path_1.default.dirname(absoluteBase);
|
|
79
|
+
const configFile = typescript_1.default.readConfigFile(absoluteBase, typescript_1.default.sys.readFile);
|
|
80
|
+
if (configFile.error) {
|
|
81
|
+
const message = typescript_1.default.formatDiagnostic(configFile.error, {
|
|
82
|
+
getCanonicalFileName: f => f,
|
|
83
|
+
getCurrentDirectory: () => cwd,
|
|
84
|
+
getNewLine: () => '\n',
|
|
85
|
+
});
|
|
86
|
+
throw new Error(`Failed to read tsconfig at "${absoluteBase}": ${message}`);
|
|
87
|
+
}
|
|
88
|
+
const parsedBase = typescript_1.default.parseJsonConfigFileContent(configFile.config, typescript_1.default.sys, baseDir, undefined, absoluteBase);
|
|
89
|
+
const include = options.includeGlobs.length > 0 ? options.includeGlobs.map(glob => (node_path_1.default.isAbsolute(glob) ? glob : node_path_1.default.join(cwd, glob))) : ['**/*.ts'];
|
|
90
|
+
const rawCompilerOptions = configFile.config.compilerOptions;
|
|
91
|
+
const tempConfig = {
|
|
92
|
+
compilerOptions: {
|
|
93
|
+
...mergeCompilerOptionsForJson(rawCompilerOptions, parsedBase.options),
|
|
94
|
+
noEmit: true,
|
|
95
|
+
skipLibCheck: true,
|
|
96
|
+
incremental: false,
|
|
97
|
+
},
|
|
98
|
+
include,
|
|
99
|
+
exclude: ['node_modules', '**/node_modules/**'],
|
|
100
|
+
};
|
|
101
|
+
await (0, codegenTempDir_1.ensureCodegenTempDir)(cwd);
|
|
102
|
+
const tempPath = node_path_1.default.join((0, codegenTempDir_1.getCodegenTempDir)(cwd), 'tsconfig.eslint.json');
|
|
103
|
+
await fileSystemHelpers_1.fileSystemHelpers.writeFile(tempPath, `${JSON.stringify(tempConfig, null, 2)}\n`);
|
|
104
|
+
return tempPath;
|
|
105
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../src/core/Context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAIhF,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAMhD,KAAK,aAAa,GAAG;IACjB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpC,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,sBAAsB,EAAE,CAAC;CACtC,CAAC;AAEF,KAAK,QAAQ,GAAG;IACZ,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChD,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,eAAe,GAAG,eAAe,GAAG,eAAe,CAAC;IAC7E,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,EAAE,CAAC;IACpC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC;CACvC,CAAC;AAEF,UAAU,WAAW;IACjB,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAC;IAEnB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IAEnB,wDAAwD;IACxD,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC1B;AAED,KAAK,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAE/C;;GAEG;AACH,qBAAa,OAAO;IAChB,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,OAAO,CAAc;IACtB,MAAM,EAAE,eAAe,CAI5B;IAEF,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAgC;IAEhD,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,YAAY,CAA6B;gBAErC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,aAAa;IAqBtE,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO;IAKhC,MAAM,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAO/C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,eAAe;IAQjG,KAAK,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAOnC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO;IAQxD,QAAQ,IAAI,MAAM;IAOzB,IAAW,MAAM,gBAKhB;IAED,IAAW,cAAc,YAExB;IAED,IAAW,IAAI,IAAI,KAAK,GAAG,SAAS,CAEnC;IAED;;OAEG;IACI,yBAAyB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,yBAAyB,GAAG,MAAM,GAAG,SAAS;IAUrH,OAAO,CAAC,eAAe;IAqBvB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,sBAAsB;IA+BvB,wBAAwB,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM;IA2C/D,eAAe,IAAI,cAAc;IAIjC,mBAAmB,IAAI,MAAM,EAAE;IAgB/B,mBAAmB,
|
|
1
|
+
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../src/core/Context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAIhF,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAMhD,KAAK,aAAa,GAAG;IACjB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpC,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,sBAAsB,EAAE,CAAC;CACtC,CAAC;AAEF,KAAK,QAAQ,GAAG;IACZ,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChD,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,eAAe,GAAG,eAAe,GAAG,eAAe,CAAC;IAC7E,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,EAAE,CAAC;IACpC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC;CACvC,CAAC;AAEF,UAAU,WAAW;IACjB,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAC;IAEnB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IAEnB,wDAAwD;IACxD,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC1B;AAED,KAAK,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAE/C;;GAEG;AACH,qBAAa,OAAO;IAChB,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,OAAO,CAAc;IACtB,MAAM,EAAE,eAAe,CAI5B;IAEF,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAgC;IAEhD,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,YAAY,CAA6B;gBAErC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,aAAa;IAqBtE,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO;IAKhC,MAAM,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAO/C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,eAAe;IAQjG,KAAK,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAOnC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO;IAQxD,QAAQ,IAAI,MAAM;IAOzB,IAAW,MAAM,gBAKhB;IAED,IAAW,cAAc,YAExB;IAED,IAAW,IAAI,IAAI,KAAK,GAAG,SAAS,CAEnC;IAED;;OAEG;IACI,yBAAyB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,yBAAyB,GAAG,MAAM,GAAG,SAAS;IAUrH,OAAO,CAAC,eAAe;IAqBvB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,sBAAsB;IA+BvB,wBAAwB,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM;IA2C/D,eAAe,IAAI,cAAc;IAIjC,mBAAmB,IAAI,MAAM,EAAE;IAgB/B,mBAAmB,CACtB,YAAY,EAAE,MAAM,EACpB,gBAAgB,CAAC,EAAE,MAAM,GAEvB;QACI,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACrB,GACD,SAAS;IAef,OAAO,CAAC,qBAAqB;CAmBhC"}
|
package/dist/core/Context.js
CHANGED
|
@@ -223,17 +223,13 @@ class Context {
|
|
|
223
223
|
return ref;
|
|
224
224
|
// Prefer explicit parent if provided
|
|
225
225
|
if (parentSourceFile) {
|
|
226
|
-
const normalizedParent = (0, path_1.isAbsolute)(parentSourceFile)
|
|
227
|
-
? parentSourceFile
|
|
228
|
-
: (0, pathHelpers_1.resolveHelper)(this.specRoot, parentSourceFile);
|
|
226
|
+
const normalizedParent = (0, path_1.isAbsolute)(parentSourceFile) ? parentSourceFile : (0, pathHelpers_1.resolveHelper)(this.specRoot, parentSourceFile);
|
|
229
227
|
return (0, normalizeRef_1.normalizeRef)(ref, normalizedParent);
|
|
230
228
|
}
|
|
231
229
|
// If we can fall back to entry file, normalize relative refs against it
|
|
232
230
|
if (this.entryFile) {
|
|
233
231
|
const parsed = (0, parseRef_1.parseRef)(ref);
|
|
234
|
-
if (parsed.type === parseRef_1.RefType.LOCAL_FRAGMENT ||
|
|
235
|
-
parsed.type === parseRef_1.RefType.EXTERNAL_FILE ||
|
|
236
|
-
parsed.type === parseRef_1.RefType.EXTERNAL_FILE_FRAGMENT) {
|
|
232
|
+
if (parsed.type === parseRef_1.RefType.LOCAL_FRAGMENT || parsed.type === parseRef_1.RefType.EXTERNAL_FILE || parsed.type === parseRef_1.RefType.EXTERNAL_FILE_FRAGMENT) {
|
|
237
233
|
return (0, normalizeRef_1.normalizeRef)(ref, this.entryFile);
|
|
238
234
|
}
|
|
239
235
|
}
|
|
@@ -1,15 +1,41 @@
|
|
|
1
1
|
import { TRawOptions } from '../common/TRawOptions';
|
|
2
2
|
import { WriteClient } from './WriteClient';
|
|
3
|
+
/**
|
|
4
|
+
* Оркестратор генерации OpenAPI-клиента: парсинг спецификации, применение diff-отчёта и запись артефактов.
|
|
5
|
+
*/
|
|
3
6
|
export declare class OpenApiClient {
|
|
7
|
+
private static readonly CACHE_FINGERPRINT_VERSION;
|
|
8
|
+
private static readonly DEFAULT_CACHE_FILENAME;
|
|
4
9
|
private _writeClient;
|
|
10
|
+
/** ESLint paths from top-level rawOptions (not per items[] entry). */
|
|
11
|
+
private eslintFixOptions;
|
|
12
|
+
/** Экземпляр WriteClient для записи сгенерированных файлов. */
|
|
5
13
|
get writeClient(): WriteClient;
|
|
6
14
|
private normalizeOptions;
|
|
7
15
|
private addDefaultValues;
|
|
8
|
-
private
|
|
16
|
+
private getOutputRoots;
|
|
17
|
+
private cleanupStaleOutputs;
|
|
18
|
+
private removeStaleFilesInDirectory;
|
|
9
19
|
private generateCodeForItems;
|
|
20
|
+
private getUniqueResolvedOutputs;
|
|
21
|
+
private resolveOutputRoot;
|
|
22
|
+
private resolveCachePathForOutput;
|
|
23
|
+
private warnOnSharedOutputsWithoutCache;
|
|
10
24
|
private generateSingle;
|
|
25
|
+
private getCacheKey;
|
|
26
|
+
private getCacheFingerprint;
|
|
27
|
+
private filesExist;
|
|
28
|
+
/**
|
|
29
|
+
* Runs batch ESLint fix after combineAndWrite / combineAndWrightSimple when both paths are set.
|
|
30
|
+
* Warns and skips when only one path is provided; always clears the WriteClient lint registry.
|
|
31
|
+
*/
|
|
32
|
+
private runBatchEslintFixIfEnabled;
|
|
11
33
|
private loadDiffReportIfNeeded;
|
|
12
34
|
private applyDiffReportIfNeeded;
|
|
35
|
+
/**
|
|
36
|
+
* Запускает генерацию клиента по опциям CLI или конфигурации.
|
|
37
|
+
* @param rawOptions сырые опции генерации
|
|
38
|
+
*/
|
|
13
39
|
generate(rawOptions: TRawOptions): Promise<void>;
|
|
14
40
|
}
|
|
15
41
|
//# sourceMappingURL=OpenApiClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenApiClient.d.ts","sourceRoot":"","sources":["../../src/core/OpenApiClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OpenApiClient.d.ts","sourceRoot":"","sources":["../../src/core/OpenApiClient.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,WAAW,EAAsB,MAAM,uBAAuB,CAAC;AA2BtF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;GAEG;AACH,qBAAa,aAAa;IACtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAK;IACtD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAiC;IAC/E,OAAO,CAAC,YAAY,CAA4B;IAChD,sEAAsE;IACtE,OAAO,CAAC,gBAAgB,CAAyB;IAEjD,+DAA+D;IAC/D,IAAW,WAAW,gBAKrB;IAED,OAAO,CAAC,gBAAgB;IAkFxB,OAAO,CAAC,gBAAgB;IA2CxB,OAAO,CAAC,cAAc;YAaR,mBAAmB;YASnB,2BAA2B;YA+B3B,oBAAoB;IA8DlC,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,+BAA+B;YAiBzB,cAAc;IA0L5B,OAAO,CAAC,WAAW;YAaL,mBAAmB;YAiCnB,UAAU;IAUxB;;;OAGG;YACW,0BAA0B;YAwC1B,sBAAsB;IASpC,OAAO,CAAC,uBAAuB;IAe/B;;;OAGG;IACG,QAAQ,CAAC,UAAU,EAAE,WAAW;CAYzC"}
|