ts-openapi-codegen 2.1.0-beta.6 → 2.1.0-beta.7
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/dist/cli/analyzeDiff/__tests__/analyzeDiff.cli.test.js +9 -0
- package/dist/cli/analyzeDiff/__tests__/analyzeDiffRenameAndInvalidRegex.test.js +9 -0
- package/dist/cli/analyzeDiff/__tests__/analyzeDiffTypeCoercion.test.js +9 -0
- 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 +62 -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 +63 -0
- package/dist/cli/analyzeUsage/core/Scanner.d.ts +15 -0
- package/dist/cli/analyzeUsage/core/Scanner.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/core/Scanner.js +115 -0
- package/dist/cli/analyzeUsage/rules/ClientRule.d.ts +6 -0
- package/dist/cli/analyzeUsage/rules/ClientRule.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/rules/ClientRule.js +78 -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 +63 -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 +60 -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 +52 -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 +38 -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 +48 -0
- package/dist/cli/analyzeUsage/rules/ServiceRule.d.ts +7 -0
- package/dist/cli/analyzeUsage/rules/ServiceRule.d.ts.map +1 -0
- package/dist/cli/analyzeUsage/rules/ServiceRule.js +92 -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.js +10 -20
- package/dist/cli/checkAndUpdateConfig/__tests__/updateConfig.test.js +10 -20
- 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 +8 -4
- 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 +6 -3
- package/dist/cli/checkAndUpdateConfig/utils/validateAndMigrateConfigData.d.ts.map +1 -1
- package/dist/cli/checkAndUpdateConfig/utils/validateAndMigrateConfigData.js +19 -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 +12 -16
- package/dist/cli/index.js +41 -9
- package/dist/cli/initOpenApiConfig/__tests__/init.test.js +4 -14
- package/dist/cli/initOpenApiConfig/__tests__/initConfig.test.js +3 -1
- 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 +3 -3
- package/dist/cli/initOpenApiConfig/initCustomRequest.d.ts +0 -1
- package/dist/cli/initOpenApiConfig/initCustomRequest.d.ts.map +1 -1
- package/dist/cli/initOpenApiConfig/initCustomRequest.js +1 -2
- package/dist/cli/initOpenApiConfig/utils/__tests__/validateSpecFiles.test.js +9 -0
- package/dist/cli/initOpenApiConfig/utils/buildConfig.d.ts.map +1 -1
- package/dist/cli/initOpenApiConfig/utils/buildConfig.js +0 -4
- 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 +6 -6
- 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 +38 -0
- package/dist/cli/schemas/generate.d.ts +7 -0
- package/dist/cli/schemas/generate.d.ts.map +1 -1
- package/dist/cli/schemas/generate.js +4 -0
- 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 +0 -1
- package/dist/cli/schemas/init.d.ts.map +1 -1
- package/dist/cli/schemas/init.js +0 -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 +6 -2
- package/dist/common/Logger.js +2 -2
- package/dist/common/LoggerMessages.d.ts +59 -12
- package/dist/common/LoggerMessages.d.ts.map +1 -1
- package/dist/common/LoggerMessages.js +62 -15
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedBase.d.ts +0 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedBase.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV1.d.ts +0 -2
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV1.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV2.d.ts +0 -2
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV2.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV3.d.ts +0 -2
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV3.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV4.d.ts +0 -2
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV4.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV5.d.ts +7 -2
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV5.d.ts.map +1 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV5.js +5 -1
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.d.ts +14 -11
- package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/CommonSchemas.d.ts +0 -2
- package/dist/common/VersionedSchema/CommonSchemas.d.ts.map +1 -1
- package/dist/common/VersionedSchema/CommonSchemas.js +0 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsMigrationPlan.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsMigrationPlan.js +0 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV3.d.ts +0 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV3.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV4.d.ts +0 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV4.d.ts.map +1 -1
- package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV5.d.ts +0 -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/OptionsMigrationPlans.js +0 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV3.d.ts +0 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV3.d.ts.map +1 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV4.d.ts +0 -1
- package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV4.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/__mocks__/compatibilityCases.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/__mocks__/compatibilityCases.js +8 -9
- package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.d.ts.map +1 -1
- package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.js +1 -1
- package/dist/common/utils/__tests__/convertArrayToObject.test.js +0 -3
- package/dist/common/utils/convertArrayToObject.d.ts.map +1 -1
- package/dist/common/utils/convertArrayToObject.js +0 -2
- package/dist/core/OpenApiClient.d.ts +12 -1
- package/dist/core/OpenApiClient.d.ts.map +1 -1
- package/dist/core/OpenApiClient.js +193 -16
- package/dist/core/WriteClient.d.ts +12 -3
- package/dist/core/WriteClient.d.ts.map +1 -1
- package/dist/core/WriteClient.js +25 -5
- 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/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 +1 -1
- package/dist/core/types/shared/Model.model.d.ts.map +1 -1
- package/dist/core/utils/__tests__/prepareDtoModels.test.js +95 -0
- package/dist/core/utils/__tests__/writeClientServices.test.js +0 -1
- package/dist/core/utils/loadDiffReport.d.ts.map +1 -1
- package/dist/core/utils/loadDiffReport.js +5 -4
- package/dist/core/utils/precompileTemplates.js +3 -2
- package/dist/core/utils/prepareDtoModels.d.ts.map +1 -1
- package/dist/core/utils/prepareDtoModels.js +1 -7
- package/dist/core/utils/writeClientCore.d.ts +0 -2
- package/dist/core/utils/writeClientCore.d.ts.map +1 -1
- package/dist/core/utils/writeClientCore.js +19 -18
- 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.map +1 -1
- package/dist/core/utils/writeClientExecutor.js +4 -4
- package/dist/core/utils/writeClientFullIndex.js +4 -4
- package/dist/core/utils/writeClientModels.d.ts.map +1 -1
- package/dist/core/utils/writeClientModels.js +10 -10
- 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.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 +14 -4
- package/dist/core/utils/writeClientServices.d.ts +0 -2
- package/dist/core/utils/writeClientServices.d.ts.map +1 -1
- package/dist/core/utils/writeClientServices.js +7 -8
- 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/templatesCompiled/cli/customRequest.d.ts +2 -6
- package/dist/templatesCompiled/cli/customRequest.d.ts.map +1 -1
- package/dist/templatesCompiled/cli/customRequest.js +8 -28
- package/dist/templatesCompiled/cli/customRequestExecutor.d.ts +0 -3
- package/dist/templatesCompiled/cli/customRequestExecutor.d.ts.map +1 -1
- package/dist/templatesCompiled/cli/customRequestExecutor.js +5 -28
- package/dist/templatesCompiled/client/core/axios/request.d.ts +2 -6
- package/dist/templatesCompiled/client/core/axios/request.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/axios/request.js +2 -22
- package/dist/templatesCompiled/client/core/executor/createExecutorAdapter.d.ts +2 -5
- package/dist/templatesCompiled/client/core/executor/createExecutorAdapter.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/executor/createExecutorAdapter.js +12 -42
- package/dist/templatesCompiled/client/core/executor/requestExecutor.d.ts +0 -2
- package/dist/templatesCompiled/client/core/executor/requestExecutor.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/executor/requestExecutor.js +3 -11
- package/dist/templatesCompiled/client/core/fetch/request.d.ts +2 -6
- package/dist/templatesCompiled/client/core/fetch/request.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/fetch/request.js +2 -22
- package/dist/templatesCompiled/client/core/interceptors/withInterceptors.d.ts +0 -2
- package/dist/templatesCompiled/client/core/interceptors/withInterceptors.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/interceptors/withInterceptors.js +3 -11
- package/dist/templatesCompiled/client/core/node/request.d.ts +2 -6
- package/dist/templatesCompiled/client/core/node/request.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/node/request.js +2 -22
- package/dist/templatesCompiled/client/core/xhr/request.d.ts +2 -6
- package/dist/templatesCompiled/client/core/xhr/request.d.ts.map +1 -1
- package/dist/templatesCompiled/client/core/xhr/request.js +2 -22
- package/dist/templatesCompiled/client/exportService.d.ts +9 -11
- package/dist/templatesCompiled/client/exportService.d.ts.map +1 -1
- package/dist/templatesCompiled/client/exportService.js +64 -82
- 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 +4 -3
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.loadDiffReport = void 0;
|
|
7
7
|
const fs_1 = __importDefault(require("fs"));
|
|
8
8
|
const Consts_1 = require("../../common/Consts");
|
|
9
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
9
10
|
const isFreshEnough = (reportPath, inputPath) => {
|
|
10
11
|
if (!inputPath)
|
|
11
12
|
return true;
|
|
@@ -24,11 +25,11 @@ const loadDiffReport = ({ useHistory, diffReport, inputPath, logger }) => {
|
|
|
24
25
|
return null;
|
|
25
26
|
const reportPath = diffReport || Consts_1.DEFAULT_ANALYZE_DIFF_REPORT_PATH;
|
|
26
27
|
if (!fs_1.default.existsSync(reportPath)) {
|
|
27
|
-
logger.info(
|
|
28
|
+
logger.info(LoggerMessages_1.LOGGER_MESSAGES.DIFF_REPORT.NOT_FOUND(reportPath));
|
|
28
29
|
return null;
|
|
29
30
|
}
|
|
30
31
|
if (!isFreshEnough(reportPath, inputPath)) {
|
|
31
|
-
logger.warn(
|
|
32
|
+
logger.warn(LoggerMessages_1.LOGGER_MESSAGES.DIFF_REPORT.STALE(reportPath));
|
|
32
33
|
return null;
|
|
33
34
|
}
|
|
34
35
|
try {
|
|
@@ -37,14 +38,14 @@ const loadDiffReport = ({ useHistory, diffReport, inputPath, logger }) => {
|
|
|
37
38
|
const hasDiffEntries = !!parsed?.diff?.all?.length;
|
|
38
39
|
const hasMiracles = !!parsed?.miracles?.length;
|
|
39
40
|
if (!hasDiffEntries && !hasMiracles) {
|
|
40
|
-
logger.info(
|
|
41
|
+
logger.info(LoggerMessages_1.LOGGER_MESSAGES.DIFF_REPORT.EMPTY(reportPath));
|
|
41
42
|
return null;
|
|
42
43
|
}
|
|
43
44
|
return parsed;
|
|
44
45
|
}
|
|
45
46
|
catch (error) {
|
|
46
47
|
const message = error instanceof Error ? error.message : String(error);
|
|
47
|
-
logger.warn(
|
|
48
|
+
logger.warn(LoggerMessages_1.LOGGER_MESSAGES.DIFF_REPORT.READ_FAILED(reportPath, message));
|
|
48
49
|
return null;
|
|
49
50
|
}
|
|
50
51
|
};
|
|
@@ -8,6 +8,7 @@ const handlebars_1 = __importDefault(require("handlebars"));
|
|
|
8
8
|
const path_1 = require("path");
|
|
9
9
|
const Enums_1 = require("../../common/Enums");
|
|
10
10
|
const Logger_1 = require("../../common/Logger");
|
|
11
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
11
12
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
12
13
|
const Consts_1 = require("../../core/types/Consts");
|
|
13
14
|
const templatesDir = (0, pathHelpers_1.resolveHelper)(__dirname, '../../templates');
|
|
@@ -83,10 +84,10 @@ const precompileTemplates = () => {
|
|
|
83
84
|
});
|
|
84
85
|
};
|
|
85
86
|
walk(templatesDir);
|
|
86
|
-
logger.info(
|
|
87
|
+
logger.info(LoggerMessages_1.LOGGER_MESSAGES.TEMPLATES.PRECOMPILE_SUCCESS);
|
|
87
88
|
}
|
|
88
89
|
catch (error) {
|
|
89
|
-
logger.error(
|
|
90
|
+
logger.error(LoggerMessages_1.LOGGER_MESSAGES.TEMPLATES.PRECOMPILE_ERROR(error.message));
|
|
90
91
|
}
|
|
91
92
|
};
|
|
92
93
|
precompileTemplates();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareDtoModels.d.ts","sourceRoot":"","sources":["../../../src/core/utils/prepareDtoModels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"prepareDtoModels.d.ts","sourceRoot":"","sources":["../../../src/core/utils/prepareDtoModels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAkL3D,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,KAAG,MAqCjD,CAAC"}
|
|
@@ -1,14 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.prepareDtoModels = void 0;
|
|
4
|
-
const unique_1 = require("./unique");
|
|
5
4
|
const escapeName_1 = require("./escapeName");
|
|
6
|
-
const
|
|
7
|
-
if (name.startsWith("'") && name.endsWith("'")) {
|
|
8
|
-
return name.slice(1, -1);
|
|
9
|
-
}
|
|
10
|
-
return name;
|
|
11
|
-
};
|
|
5
|
+
const unique_1 = require("./unique");
|
|
12
6
|
const buildPropertyTarget = (name, prefix) => {
|
|
13
7
|
if (name.startsWith("'") && name.endsWith("'")) {
|
|
14
8
|
return `${prefix}[${name}]`;
|
|
@@ -10,7 +10,6 @@ import { WriteClient } from '../WriteClient';
|
|
|
10
10
|
* @param httpClient The selected httpClient (fetch, xhr or node)
|
|
11
11
|
* @param request: Path to custom request file
|
|
12
12
|
* @param useCancelableRequest Use cancelable request type
|
|
13
|
-
* @param useRequestRaw Generate requestRaw and raw service methods
|
|
14
13
|
*/
|
|
15
14
|
interface IWriteClientCore {
|
|
16
15
|
client: Client;
|
|
@@ -19,7 +18,6 @@ interface IWriteClientCore {
|
|
|
19
18
|
httpClient: HttpClient;
|
|
20
19
|
request?: string;
|
|
21
20
|
useCancelableRequest?: boolean;
|
|
22
|
-
useRequestRaw?: boolean;
|
|
23
21
|
useSeparatedIndexes?: boolean;
|
|
24
22
|
modelsMode?: ModelsMode;
|
|
25
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeClientCore.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientCore.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writeClientCore.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientCore.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;;;;;;GAOG;AACH,UAAU,gBAAgB;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,UAAU,CAAC;CAC3B;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CjG"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.writeClientCore = writeClientCore;
|
|
4
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
4
5
|
const fileSystemHelpers_1 = require("../../common/utils/fileSystemHelpers");
|
|
5
6
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
6
7
|
const ModelsMode_enum_1 = require("../types/enums/ModelsMode.enum");
|
|
@@ -14,35 +15,34 @@ const ModelsMode_enum_1 = require("../types/enums/ModelsMode.enum");
|
|
|
14
15
|
* @param useCancelableRequest Use cancelable request type
|
|
15
16
|
*/
|
|
16
17
|
async function writeClientCore(options) {
|
|
17
|
-
const { client, templates, outputCorePath, httpClient, request, useCancelableRequest,
|
|
18
|
+
const { client, templates, outputCorePath, httpClient, request, useCancelableRequest, useSeparatedIndexes, modelsMode } = options;
|
|
18
19
|
const context = {
|
|
19
20
|
httpClient,
|
|
20
21
|
server: client.server,
|
|
21
22
|
version: client.version,
|
|
22
23
|
useCancelableRequest,
|
|
23
|
-
useRequestRaw,
|
|
24
24
|
useSeparatedIndexes,
|
|
25
25
|
};
|
|
26
|
-
this.logger.info(
|
|
26
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.CORE_START);
|
|
27
27
|
const hasCustomRequest = !!request;
|
|
28
|
-
await
|
|
29
|
-
await
|
|
30
|
-
await
|
|
31
|
-
await
|
|
28
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'OpenAPI.ts'), templates.core.settings(context));
|
|
29
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'ApiError.ts'), templates.core.apiError({}));
|
|
30
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'ApiRequestOptions.ts'), templates.core.apiRequestOptions({}));
|
|
31
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'ApiResult.ts'), templates.core.apiResult({}));
|
|
32
32
|
if (modelsMode === ModelsMode_enum_1.ModelsMode.CLASSES) {
|
|
33
|
-
await
|
|
34
|
-
await
|
|
33
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'BaseDto.ts'), templates.core.baseDto({}));
|
|
34
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'dtoUtils.ts'), templates.core.dtoUtils({}));
|
|
35
35
|
}
|
|
36
36
|
if (useCancelableRequest) {
|
|
37
|
-
await
|
|
37
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'CancelablePromise.ts'), templates.core.cancelablePromise({}));
|
|
38
38
|
}
|
|
39
|
-
await
|
|
40
|
-
await
|
|
41
|
-
await
|
|
42
|
-
await
|
|
43
|
-
await
|
|
44
|
-
await
|
|
45
|
-
await
|
|
39
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'HttpStatusCode.ts'), templates.core.httpStatusCode({}));
|
|
40
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'request.ts'), templates.core.request(context));
|
|
41
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'executor/requestExecutor.ts'), templates.core.requestExecutor({}));
|
|
42
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'executor/createExecutorAdapter.ts'), templates.core.createExecutorAdapter({ useCustomRequest: hasCustomRequest }));
|
|
43
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'interceptors/interceptors.ts'), templates.core.interceptors({}));
|
|
44
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'interceptors/apiErrorInterceptor.ts'), templates.core.apiErrorInterceptor({}));
|
|
45
|
+
await this.writeOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'interceptors/withInterceptors.ts'), templates.core.withInterceptors({}));
|
|
46
46
|
if (hasCustomRequest) {
|
|
47
47
|
const requestFile = (0, pathHelpers_1.resolveHelper)(process.cwd(), request);
|
|
48
48
|
const requestFileExists = await fileSystemHelpers_1.fileSystemHelpers.exists(requestFile);
|
|
@@ -50,6 +50,7 @@ async function writeClientCore(options) {
|
|
|
50
50
|
throw new Error(`Custom request file "${requestFile}" does not exists`);
|
|
51
51
|
}
|
|
52
52
|
await fileSystemHelpers_1.fileSystemHelpers.copyFile(requestFile, (0, pathHelpers_1.resolveHelper)(outputCorePath, 'request.ts'));
|
|
53
|
+
this.registerOutputFile((0, pathHelpers_1.resolveHelper)(outputCorePath, 'request.ts'));
|
|
53
54
|
}
|
|
54
|
-
this.logger.info(
|
|
55
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.CORE_FINISH);
|
|
55
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeClientCoreIndex.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientCoreIndex.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writeClientCoreIndex.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientCoreIndex.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,UAAU,aAAa;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,gCAAgC,EAAE,UAAU,CAAC;CACpE;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,iBAuBnF"}
|
|
@@ -1,16 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.writeClientCoreIndex = writeClientCoreIndex;
|
|
4
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
5
|
+
const fileSystemHelpers_1 = require("../../common/utils/fileSystemHelpers");
|
|
4
6
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
5
|
-
const appendUniqueLinesToFile_1 = require("./appendUniqueLinesToFile");
|
|
6
7
|
async function writeClientCoreIndex(options) {
|
|
7
8
|
const { templates, outputCorePath, useCancelableRequest, useSeparatedIndexes, modelsMode } = options;
|
|
8
9
|
if (!useSeparatedIndexes) {
|
|
9
10
|
return;
|
|
10
11
|
}
|
|
11
12
|
const filePath = (0, pathHelpers_1.resolveHelper)(outputCorePath, 'index.ts');
|
|
12
|
-
this.logger.info(
|
|
13
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.INDEX_DATA_WRITTEN(filePath));
|
|
13
14
|
const content = templates.indexes.core({ useCancelableRequest, modelsMode });
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
let existingContent = '';
|
|
16
|
+
const fileExists = await fileSystemHelpers_1.fileSystemHelpers.exists(filePath);
|
|
17
|
+
if (fileExists) {
|
|
18
|
+
existingContent = await fileSystemHelpers_1.fileSystemHelpers.readFile(filePath, 'utf8');
|
|
19
|
+
}
|
|
20
|
+
const existingLines = existingContent.split(/\r?\n/).filter(Boolean);
|
|
21
|
+
const dataLines = content.split(/\r?\n/).filter(Boolean);
|
|
22
|
+
const linesToAdd = dataLines.filter(line => !existingLines.includes(line.trim()));
|
|
23
|
+
const updatedContent = linesToAdd.length > 0 ? existingContent + linesToAdd.join('\n') + '\n' : existingContent;
|
|
24
|
+
await this.writeOutputFile(filePath, updatedContent);
|
|
25
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.INDEX_WRITE_COMPLETED(filePath));
|
|
16
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeClientExecutor.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientExecutor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writeClientExecutor.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientExecutor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,UAAU,mBAAmB;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,iBAAS,yBAAyB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CASjE;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBxG;AAED,OAAO,EAAE,yBAAyB,EAAE,CAAC"}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.writeClientExecutor = writeClientExecutor;
|
|
4
4
|
exports.deduplicateServicesByName = deduplicateServicesByName;
|
|
5
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
5
6
|
const eslintFix_1 = require("../../common/utils/eslintFix");
|
|
6
|
-
const fileSystemHelpers_1 = require("../../common/utils/fileSystemHelpers");
|
|
7
7
|
const format_1 = require("../../common/utils/format");
|
|
8
8
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
9
9
|
function deduplicateServicesByName(services) {
|
|
@@ -21,7 +21,7 @@ async function writeClientExecutor(options) {
|
|
|
21
21
|
const file = (0, pathHelpers_1.resolveHelper)(outputPath, 'createClient.ts');
|
|
22
22
|
const uniqueServices = deduplicateServicesByName(services);
|
|
23
23
|
const hasCustomRequest = !!request;
|
|
24
|
-
this.logger.info(
|
|
24
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.EXECUTOR_START(file));
|
|
25
25
|
const templateResult = templates.exports.client({
|
|
26
26
|
outputCore: outputCorePath,
|
|
27
27
|
useCustomRequest: hasCustomRequest,
|
|
@@ -29,9 +29,9 @@ async function writeClientExecutor(options) {
|
|
|
29
29
|
services: uniqueServices,
|
|
30
30
|
});
|
|
31
31
|
const formattedValue = await (0, format_1.format)(templateResult, undefined, useProjectPrettier);
|
|
32
|
-
await
|
|
32
|
+
await this.writeOutputFile(file, formattedValue);
|
|
33
33
|
if (useEslintFix) {
|
|
34
34
|
await (0, eslintFix_1.eslintFix)(file);
|
|
35
35
|
}
|
|
36
|
-
this.logger.info(
|
|
36
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.FILE_RECORDED(file));
|
|
37
37
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.writeClientFullIndex = writeClientFullIndex;
|
|
4
|
-
const
|
|
4
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
5
5
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
6
6
|
/**
|
|
7
7
|
* Generate the OpenAPI client index file using the Handlebar template and write it to disk.
|
|
@@ -11,8 +11,8 @@ const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
|
11
11
|
async function writeClientFullIndex(options) {
|
|
12
12
|
const { templates, outputPath, core, models, schemas, services, modelsMode, modelsPackage } = options;
|
|
13
13
|
const resolvePathIndex = (0, pathHelpers_1.resolveHelper)(outputPath, 'index.ts');
|
|
14
|
-
this.logger.info(
|
|
15
|
-
await
|
|
14
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.INDEX_DATA_WRITTEN(resolvePathIndex));
|
|
15
|
+
await this.writeOutputFile(resolvePathIndex, templates.indexes.full({
|
|
16
16
|
core,
|
|
17
17
|
models,
|
|
18
18
|
schemas,
|
|
@@ -20,5 +20,5 @@ async function writeClientFullIndex(options) {
|
|
|
20
20
|
modelsMode,
|
|
21
21
|
modelsPackage,
|
|
22
22
|
}));
|
|
23
|
-
this.logger.info(
|
|
23
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.INDEX_WRITE_COMPLETED(resolvePathIndex));
|
|
24
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeClientModels.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientModels.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writeClientModels.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientModels.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;;;;;GAMG;AACH,UAAU,kBAAkB;IACxB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwDrG"}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.writeClientModels = writeClientModels;
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
5
6
|
const eslintFix_1 = require("../../common/utils/eslintFix");
|
|
6
|
-
const fileSystemHelpers_1 = require("../../common/utils/fileSystemHelpers");
|
|
7
7
|
const format_1 = require("../../common/utils/format");
|
|
8
8
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
9
9
|
const ModelsMode_enum_1 = require("../types/enums/ModelsMode.enum");
|
|
@@ -17,7 +17,7 @@ const ModelsMode_enum_1 = require("../types/enums/ModelsMode.enum");
|
|
|
17
17
|
*/
|
|
18
18
|
async function writeClientModels(options) {
|
|
19
19
|
const { models, templates, outputModelsPath, httpClient, useUnionTypes, modelsMode, outputCorePath, useOptions, useProjectPrettier, useEslintFix } = options;
|
|
20
|
-
this.logger.info(
|
|
20
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.MODELS_START);
|
|
21
21
|
if (modelsMode === ModelsMode_enum_1.ModelsMode.CLASSES) {
|
|
22
22
|
const file = (0, pathHelpers_1.resolveHelper)(outputModelsPath, 'models.ts');
|
|
23
23
|
const templateResult = templates.exports.models({
|
|
@@ -29,9 +29,9 @@ async function writeClientModels(options) {
|
|
|
29
29
|
modelsMode,
|
|
30
30
|
});
|
|
31
31
|
const formattedValue = await (0, format_1.format)(templateResult);
|
|
32
|
-
await
|
|
33
|
-
this.logger.info(
|
|
34
|
-
this.logger.info(
|
|
32
|
+
await this.writeOutputFile(file, formattedValue);
|
|
33
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.FILE_RECORDED(file));
|
|
34
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.MODELS_FINISH);
|
|
35
35
|
return;
|
|
36
36
|
}
|
|
37
37
|
for (const model of models) {
|
|
@@ -42,22 +42,22 @@ async function writeClientModels(options) {
|
|
|
42
42
|
const dir = (0, pathHelpers_1.dirNameHelper)(modelFolderPath);
|
|
43
43
|
if (dir) {
|
|
44
44
|
const directory = (0, pathHelpers_1.resolveHelper)(outputModelsPath, dir);
|
|
45
|
-
this.logger.info(
|
|
45
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.DIRECTORY_CREATING(directory));
|
|
46
46
|
(0, fs_1.mkdirSync)(directory, { recursive: true });
|
|
47
47
|
}
|
|
48
48
|
const file = (0, pathHelpers_1.resolveHelper)(outputModelsPath, `${modelFolderPath}.ts`);
|
|
49
|
-
this.logger.info(
|
|
49
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.DATA_WRITE_START(file));
|
|
50
50
|
const templateResult = templates.exports.model({
|
|
51
51
|
...model,
|
|
52
52
|
httpClient,
|
|
53
53
|
useUnionTypes,
|
|
54
54
|
});
|
|
55
55
|
const formattedValue = await (0, format_1.format)(templateResult, undefined, useProjectPrettier);
|
|
56
|
-
await
|
|
56
|
+
await this.writeOutputFile(file, formattedValue);
|
|
57
57
|
if (useEslintFix) {
|
|
58
58
|
await (0, eslintFix_1.eslintFix)(file);
|
|
59
59
|
}
|
|
60
|
-
this.logger.info(
|
|
60
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.FILE_RECORDED(file));
|
|
61
61
|
}
|
|
62
|
-
this.logger.info(
|
|
62
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.MODELS_FINISH);
|
|
63
63
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Templates } from '../types/base/Templates.model';
|
|
2
|
+
import { ModelsMode } from '../types/enums/ModelsMode.enum';
|
|
2
3
|
import { Model } from '../types/shared/Model.model';
|
|
3
4
|
import { WriteClient } from '../WriteClient';
|
|
4
|
-
import { ModelsMode } from '../types/enums/ModelsMode.enum';
|
|
5
5
|
interface IOptionsProps {
|
|
6
6
|
models: Model[];
|
|
7
7
|
templates: Templates;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeClientModelsIndex.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientModelsIndex.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writeClientModelsIndex.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientModelsIndex.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,UAAU,aAAa;IACnB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,UAAU,CAAC;CAC3B;AAED,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,iBAuBrF"}
|
|
@@ -1,16 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.writeClientModelsIndex = writeClientModelsIndex;
|
|
4
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
5
|
+
const fileSystemHelpers_1 = require("../../common/utils/fileSystemHelpers");
|
|
4
6
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
5
|
-
const appendUniqueLinesToFile_1 = require("./appendUniqueLinesToFile");
|
|
6
7
|
async function writeClientModelsIndex(options) {
|
|
7
8
|
const { models, templates, outputModelsPath, useSeparatedIndexes, modelsMode } = options;
|
|
8
9
|
if (!useSeparatedIndexes) {
|
|
9
10
|
return;
|
|
10
11
|
}
|
|
11
12
|
const filePath = (0, pathHelpers_1.resolveHelper)(outputModelsPath, 'index.ts');
|
|
12
|
-
this.logger.info(
|
|
13
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.INDEX_DATA_WRITTEN(filePath));
|
|
13
14
|
const content = templates.indexes.models({ models, modelsMode });
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
let existingContent = '';
|
|
16
|
+
const fileExists = await fileSystemHelpers_1.fileSystemHelpers.exists(filePath);
|
|
17
|
+
if (fileExists) {
|
|
18
|
+
existingContent = await fileSystemHelpers_1.fileSystemHelpers.readFile(filePath, 'utf8');
|
|
19
|
+
}
|
|
20
|
+
const existingLines = existingContent.split(/\r?\n/).filter(Boolean);
|
|
21
|
+
const dataLines = content.split(/\r?\n/).filter(Boolean);
|
|
22
|
+
const linesToAdd = dataLines.filter(line => !existingLines.includes(line.trim()));
|
|
23
|
+
const updatedContent = linesToAdd.length > 0 ? existingContent + linesToAdd.join('\n') + '\n' : existingContent;
|
|
24
|
+
await this.writeOutputFile(filePath, updatedContent);
|
|
25
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.INDEX_WRITE_COMPLETED(filePath));
|
|
16
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeClientSchemas.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientSchemas.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writeClientSchemas.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientSchemas.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;;;;;GAMG;AACH,UAAU,mBAAmB;IACzB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAExD;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CA2C1G"}
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.isEmptySchemaModel = isEmptySchemaModel;
|
|
4
4
|
exports.writeClientSchemas = writeClientSchemas;
|
|
5
5
|
const fs_1 = require("fs");
|
|
6
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
6
7
|
const eslintFix_1 = require("../../common/utils/eslintFix");
|
|
7
|
-
const fileSystemHelpers_1 = require("../../common/utils/fileSystemHelpers");
|
|
8
8
|
const format_1 = require("../../common/utils/format");
|
|
9
9
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
10
10
|
const EmptySchemaStrategy_enum_1 = require("../types/enums/EmptySchemaStrategy.enum");
|
|
@@ -22,18 +22,18 @@ function isEmptySchemaModel(model) {
|
|
|
22
22
|
async function writeClientSchemas(options) {
|
|
23
23
|
const { models, templates, outputSchemasPath, httpClient, useUnionTypes, validationLibrary, emptySchemaStrategy, useProjectPrettier, useEslintFix } = options;
|
|
24
24
|
if (templates.exports.schema) {
|
|
25
|
-
this.logger.info(
|
|
25
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.SCHEMAS_START);
|
|
26
26
|
const modelsToWrite = emptySchemaStrategy === EmptySchemaStrategy_enum_1.EmptySchemaStrategy.SKIP ? models.filter(model => !isEmptySchemaModel(model)) : models;
|
|
27
27
|
for (const model of modelsToWrite) {
|
|
28
28
|
const modelFolderPath = model?.path;
|
|
29
29
|
const dir = (0, pathHelpers_1.dirNameHelper)(modelFolderPath);
|
|
30
30
|
if (dir) {
|
|
31
31
|
const directory = (0, pathHelpers_1.resolveHelper)(outputSchemasPath, dir);
|
|
32
|
-
this.logger.info(
|
|
32
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.DIRECTORY_CREATING(directory));
|
|
33
33
|
(0, fs_1.mkdirSync)(directory, { recursive: true });
|
|
34
34
|
}
|
|
35
35
|
const file = (0, pathHelpers_1.resolveHelper)(outputSchemasPath, `${modelFolderPath}Schema.ts`);
|
|
36
|
-
this.logger.info(
|
|
36
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.DATA_WRITE_START(file));
|
|
37
37
|
const templateResult = templates.exports.schema({
|
|
38
38
|
...model,
|
|
39
39
|
httpClient,
|
|
@@ -42,13 +42,13 @@ async function writeClientSchemas(options) {
|
|
|
42
42
|
emptySchemaStrategy,
|
|
43
43
|
});
|
|
44
44
|
const formattedValue = await (0, format_1.format)(templateResult, undefined, useProjectPrettier);
|
|
45
|
-
await
|
|
45
|
+
await this.writeOutputFile(file, formattedValue);
|
|
46
46
|
if (useEslintFix) {
|
|
47
47
|
await (0, eslintFix_1.eslintFix)(file);
|
|
48
48
|
}
|
|
49
|
-
this.logger.info(
|
|
49
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.FILE_RECORDED(file));
|
|
50
50
|
}
|
|
51
|
-
this.logger.info(
|
|
51
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.SCHEMAS_FINISH);
|
|
52
52
|
return modelsToWrite;
|
|
53
53
|
}
|
|
54
54
|
return [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeClientSchemasIndex.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientSchemasIndex.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writeClientSchemasIndex.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientSchemasIndex.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,UAAU,aAAa;IACnB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,iBAuBtF"}
|
|
@@ -1,16 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.writeClientSchemasIndex = writeClientSchemasIndex;
|
|
4
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
5
|
+
const fileSystemHelpers_1 = require("../../common/utils/fileSystemHelpers");
|
|
4
6
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
5
|
-
const appendUniqueLinesToFile_1 = require("./appendUniqueLinesToFile");
|
|
6
7
|
async function writeClientSchemasIndex(options) {
|
|
7
8
|
const { models, templates, outputSchemasPath, useSeparatedIndexes } = options;
|
|
8
9
|
if (!useSeparatedIndexes) {
|
|
9
10
|
return;
|
|
10
11
|
}
|
|
11
12
|
const filePath = (0, pathHelpers_1.resolveHelper)(outputSchemasPath, 'index.ts');
|
|
12
|
-
this.logger.info(
|
|
13
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.INDEX_DATA_WRITTEN(filePath));
|
|
13
14
|
const content = templates.indexes.schemas({ schemas: models });
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
let existingContent = '';
|
|
16
|
+
const fileExists = await fileSystemHelpers_1.fileSystemHelpers.exists(filePath);
|
|
17
|
+
if (fileExists) {
|
|
18
|
+
existingContent = await fileSystemHelpers_1.fileSystemHelpers.readFile(filePath, 'utf8');
|
|
19
|
+
}
|
|
20
|
+
const existingLines = existingContent.split(/\r?\n/).filter(Boolean);
|
|
21
|
+
const dataLines = content.split(/\r?\n/).filter(Boolean);
|
|
22
|
+
const linesToAdd = dataLines.filter(line => !existingLines.includes(line.trim()));
|
|
23
|
+
const updatedContent = linesToAdd.length > 0 ? existingContent + linesToAdd.join('\n') + '\n' : existingContent;
|
|
24
|
+
await this.writeOutputFile(filePath, updatedContent);
|
|
25
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.INDEX_WRITE_COMPLETED(filePath));
|
|
16
26
|
}
|
|
@@ -12,7 +12,6 @@ type TServeceOutputsPath = Omit<OutputPaths, 'output' | 'outputSchemas'>;
|
|
|
12
12
|
* @param useUnionTypes Use union types instead of enums
|
|
13
13
|
* @param useOptions Use options or arguments functions
|
|
14
14
|
* @param useCancelableRequest Use cancelable request type
|
|
15
|
-
* @param useRequestRaw Generate *Raw service methods
|
|
16
15
|
*/
|
|
17
16
|
interface IWriteClientServices {
|
|
18
17
|
services: Service[];
|
|
@@ -22,7 +21,6 @@ interface IWriteClientServices {
|
|
|
22
21
|
useUnionTypes: boolean;
|
|
23
22
|
useOptions: boolean;
|
|
24
23
|
useCancelableRequest: boolean;
|
|
25
|
-
useRequestRaw: boolean;
|
|
26
24
|
useProjectPrettier?: boolean;
|
|
27
25
|
useEslintFix?: boolean;
|
|
28
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeClientServices.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientServices.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writeClientServices.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientServices.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,KAAK,mBAAmB,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,eAAe,CAAC,CAAC;AAEzE;;;;;;;;GAQG;AACH,UAAU,oBAAoB;IAC1B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,mBAAmB,CAAC;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6BzG"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.writeClientServices = writeClientServices;
|
|
4
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
4
5
|
const eslintFix_1 = require("../../common/utils/eslintFix");
|
|
5
|
-
const fileSystemHelpers_1 = require("../../common/utils/fileSystemHelpers");
|
|
6
6
|
const format_1 = require("../../common/utils/format");
|
|
7
7
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
8
8
|
/**
|
|
@@ -15,11 +15,11 @@ const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
|
15
15
|
* @param useOptions Use options or arguments functions
|
|
16
16
|
*/
|
|
17
17
|
async function writeClientServices(options) {
|
|
18
|
-
const { services, templates, outputPaths, httpClient, useUnionTypes, useOptions, useCancelableRequest,
|
|
19
|
-
this.logger.info(
|
|
18
|
+
const { services, templates, outputPaths, httpClient, useUnionTypes, useOptions, useCancelableRequest, useProjectPrettier, useEslintFix } = options;
|
|
19
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.SERVICES_START);
|
|
20
20
|
for (const service of services) {
|
|
21
21
|
const file = (0, pathHelpers_1.resolveHelper)(outputPaths.outputServices, `${service.name}.ts`);
|
|
22
|
-
this.logger.info(
|
|
22
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.DATA_WRITE_START(file));
|
|
23
23
|
const templateResult = templates.exports.service({
|
|
24
24
|
...service,
|
|
25
25
|
httpClient,
|
|
@@ -28,14 +28,13 @@ async function writeClientServices(options) {
|
|
|
28
28
|
outputCore: outputPaths.outputCore,
|
|
29
29
|
outputModels: outputPaths.outputModels,
|
|
30
30
|
useCancelableRequest,
|
|
31
|
-
useRequestRaw,
|
|
32
31
|
});
|
|
33
32
|
const formattedValue = await (0, format_1.format)(templateResult, undefined, useProjectPrettier);
|
|
34
|
-
await
|
|
33
|
+
await this.writeOutputFile(file, formattedValue);
|
|
35
34
|
if (useEslintFix) {
|
|
36
35
|
await (0, eslintFix_1.eslintFix)(file);
|
|
37
36
|
}
|
|
38
|
-
this.logger.info(
|
|
37
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.FILE_RECORDED(file));
|
|
39
38
|
}
|
|
40
|
-
this.logger.info(
|
|
39
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.SERVICES_FINISH);
|
|
41
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeClientServicesIndex.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientServicesIndex.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writeClientServicesIndex.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClientServicesIndex.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,UAAU,aAAa;IACnB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,iBAuBvF"}
|
|
@@ -1,16 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.writeClientServicesIndex = writeClientServicesIndex;
|
|
4
|
+
const LoggerMessages_1 = require("../../common/LoggerMessages");
|
|
5
|
+
const fileSystemHelpers_1 = require("../../common/utils/fileSystemHelpers");
|
|
4
6
|
const pathHelpers_1 = require("../../common/utils/pathHelpers");
|
|
5
|
-
const appendUniqueLinesToFile_1 = require("./appendUniqueLinesToFile");
|
|
6
7
|
async function writeClientServicesIndex(options) {
|
|
7
8
|
const { services, templates, outputServices, useSeparatedIndexes } = options;
|
|
8
9
|
if (!useSeparatedIndexes) {
|
|
9
10
|
return;
|
|
10
11
|
}
|
|
11
12
|
const filePath = (0, pathHelpers_1.resolveHelper)(outputServices, 'index.ts');
|
|
12
|
-
this.logger.info(
|
|
13
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.INDEX_DATA_WRITTEN(filePath));
|
|
13
14
|
const content = templates.indexes.services({ services });
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
let existingContent = '';
|
|
16
|
+
const fileExists = await fileSystemHelpers_1.fileSystemHelpers.exists(filePath);
|
|
17
|
+
if (fileExists) {
|
|
18
|
+
existingContent = await fileSystemHelpers_1.fileSystemHelpers.readFile(filePath, 'utf8');
|
|
19
|
+
}
|
|
20
|
+
const existingLines = existingContent.split(/\r?\n/).filter(Boolean);
|
|
21
|
+
const dataLines = content.split(/\r?\n/).filter(Boolean);
|
|
22
|
+
const linesToAdd = dataLines.filter(line => !existingLines.includes(line.trim()));
|
|
23
|
+
const updatedContent = linesToAdd.length > 0 ? existingContent + linesToAdd.join('\n') + '\n' : existingContent;
|
|
24
|
+
await this.writeOutputFile(filePath, updatedContent);
|
|
25
|
+
this.logger.info(LoggerMessages_1.LOGGER_MESSAGES.WRITE_CLIENT.INDEX_WRITE_COMPLETED(filePath));
|
|
16
26
|
}
|