@apimatic/cli 1.1.0-beta.5 → 1.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/README.md +6 -5
- package/lib/actions/sdk/generate.d.ts +1 -1
- package/lib/actions/sdk/generate.js +21 -10
- package/lib/actions/sdk/generate.js.map +1 -1
- package/lib/actions/sdk/quickstart.d.ts +3 -0
- package/lib/actions/sdk/quickstart.js +27 -22
- package/lib/actions/sdk/quickstart.js.map +1 -1
- package/lib/commands/sdk/generate.d.ts +1 -2
- package/lib/commands/sdk/generate.js +8 -10
- package/lib/commands/sdk/generate.js.map +1 -1
- package/lib/infrastructure/file-service.d.ts +1 -0
- package/lib/infrastructure/file-service.js +11 -0
- package/lib/infrastructure/file-service.js.map +1 -1
- package/lib/infrastructure/services/api-service.d.ts +2 -1
- package/lib/infrastructure/services/api-service.js +24 -0
- package/lib/infrastructure/services/api-service.js.map +1 -1
- package/lib/infrastructure/services/portal-service.d.ts +2 -4
- package/lib/infrastructure/services/portal-service.js +75 -57
- package/lib/infrastructure/services/portal-service.js.map +1 -1
- package/lib/prompts/sdk/generate.d.ts +7 -3
- package/lib/prompts/sdk/generate.js +13 -3
- package/lib/prompts/sdk/generate.js.map +1 -1
- package/lib/prompts/sdk/quickstart.d.ts +2 -2
- package/lib/prompts/sdk/quickstart.js +5 -5
- package/lib/prompts/sdk/quickstart.js.map +1 -1
- package/lib/types/versioned-build-context.d.ts +9 -0
- package/lib/types/versioned-build-context.js +21 -0
- package/lib/types/versioned-build-context.js.map +1 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -24,7 +24,7 @@ $ npm install -g @apimatic/cli
|
|
|
24
24
|
$ apimatic COMMAND
|
|
25
25
|
running command...
|
|
26
26
|
$ apimatic (--version)
|
|
27
|
-
@apimatic/cli/1.1.0-beta.
|
|
27
|
+
@apimatic/cli/1.1.0-beta.7 win32-x64 node-v23.4.0
|
|
28
28
|
$ apimatic --help [COMMAND]
|
|
29
29
|
USAGE
|
|
30
30
|
$ apimatic COMMAND
|
|
@@ -411,16 +411,17 @@ Generate an SDK for your API
|
|
|
411
411
|
|
|
412
412
|
```
|
|
413
413
|
USAGE
|
|
414
|
-
$ apimatic sdk generate -l csharp|java|php|python|ruby|typescript|go [
|
|
415
|
-
|
|
414
|
+
$ apimatic sdk generate -l csharp|java|php|python|ruby|typescript|go [-i <value>] [-d <value>] [-f] [--zip] [-k
|
|
415
|
+
<value>]
|
|
416
416
|
|
|
417
417
|
FLAGS
|
|
418
418
|
-d, --destination=<value> directory where the SDK will be generated
|
|
419
419
|
-f, --force overwrite changes without asking for user consent.
|
|
420
|
+
-i, --input=<value> [default: ./] path to the parent directory containing the 'src' directory, which includes
|
|
421
|
+
API specifications and configuration files.
|
|
420
422
|
-k, --auth-key=<value> override current authentication state with an authentication key.
|
|
421
423
|
-l, --language=<option> (required) programming language for SDK generation
|
|
422
424
|
<options: csharp|java|php|python|ruby|typescript|go>
|
|
423
|
-
--spec=<value> [default: ./src/spec] path to the folder containing the API specification file
|
|
424
425
|
--zip download the generated SDK as a .zip archive
|
|
425
426
|
|
|
426
427
|
DESCRIPTION
|
|
@@ -432,7 +433,7 @@ DESCRIPTION
|
|
|
432
433
|
EXAMPLES
|
|
433
434
|
apimatic sdk generate --language=java
|
|
434
435
|
|
|
435
|
-
apimatic sdk generate --language=csharp --
|
|
436
|
+
apimatic sdk generate --language=csharp --input=./
|
|
436
437
|
|
|
437
438
|
apimatic sdk generate --language=python --destination=./sdk --zip
|
|
438
439
|
```
|
|
@@ -9,5 +9,5 @@ export declare class GenerateAction {
|
|
|
9
9
|
private readonly commandMetadata;
|
|
10
10
|
private readonly authKey;
|
|
11
11
|
constructor(configDir: DirectoryPath, commandMetadata: CommandMetadata, authKey?: string | null);
|
|
12
|
-
readonly execute: (
|
|
12
|
+
readonly execute: (buildDirectory: DirectoryPath, sdkDirectory: DirectoryPath, language: Language, force: boolean, zipSdk: boolean) => Promise<ActionResult>;
|
|
13
13
|
}
|
|
@@ -2,21 +2,32 @@ import { PortalService } from "../../infrastructure/services/portal-service.js";
|
|
|
2
2
|
import { ActionResult } from "../action-result.js";
|
|
3
3
|
import { withDirPath } from "../../infrastructure/tmp-extensions.js";
|
|
4
4
|
import { SdkContext } from "../../types/sdk-context.js";
|
|
5
|
-
import {
|
|
5
|
+
import { VersionedBuildContext } from "../../types/versioned-build-context.js";
|
|
6
6
|
import { SdkGeneratePrompts } from "../../prompts/sdk/generate.js";
|
|
7
7
|
import { TempContext } from "../../types/temp-context.js";
|
|
8
|
+
import { BuildContext } from "../../types/build-context.js";
|
|
8
9
|
export class GenerateAction {
|
|
9
10
|
constructor(configDir, commandMetadata, authKey = null) {
|
|
10
11
|
this.prompts = new SdkGeneratePrompts();
|
|
11
12
|
this.portalService = new PortalService();
|
|
12
|
-
this.execute = async (
|
|
13
|
-
if (
|
|
14
|
-
this.prompts.
|
|
13
|
+
this.execute = async (buildDirectory, sdkDirectory, language, force, zipSdk) => {
|
|
14
|
+
if (buildDirectory.isEqual(sdkDirectory)) {
|
|
15
|
+
this.prompts.sameBuildAndSdkDir(buildDirectory);
|
|
15
16
|
return ActionResult.failed();
|
|
16
17
|
}
|
|
17
|
-
const
|
|
18
|
-
if (
|
|
19
|
-
|
|
18
|
+
const versionedBuildContext = new VersionedBuildContext(buildDirectory);
|
|
19
|
+
if (await versionedBuildContext.exists()) {
|
|
20
|
+
const resolvedDirectory = await versionedBuildContext.getResolvedBuildDirectory();
|
|
21
|
+
if (!resolvedDirectory) {
|
|
22
|
+
this.prompts.versionedBuildEmpty();
|
|
23
|
+
return ActionResult.failed();
|
|
24
|
+
}
|
|
25
|
+
buildDirectory = resolvedDirectory;
|
|
26
|
+
this.prompts.versionedBuild(versionedBuildContext.getRelativePath(resolvedDirectory));
|
|
27
|
+
}
|
|
28
|
+
const buildContext = new BuildContext(buildDirectory);
|
|
29
|
+
if (!(await buildContext.validate())) {
|
|
30
|
+
this.prompts.srcDirectoryEmpty(buildDirectory);
|
|
20
31
|
return ActionResult.failed();
|
|
21
32
|
}
|
|
22
33
|
const sdkContext = new SdkContext(sdkDirectory, language);
|
|
@@ -26,11 +37,11 @@ export class GenerateAction {
|
|
|
26
37
|
}
|
|
27
38
|
return await withDirPath(async (tempDirectory) => {
|
|
28
39
|
const tempContext = new TempContext(tempDirectory);
|
|
29
|
-
const
|
|
30
|
-
const response = await this.prompts.generateSDK(this.portalService.generateSdk(
|
|
40
|
+
const buildZipPath = await tempContext.zip(buildDirectory);
|
|
41
|
+
const response = await this.prompts.generateSDK(this.portalService.generateSdk(buildZipPath, language, this.configDir, this.commandMetadata, this.authKey));
|
|
31
42
|
// TODO: this should be service error
|
|
32
43
|
if (response.isErr()) {
|
|
33
|
-
this.prompts.
|
|
44
|
+
this.prompts.sdkGenerationServiceError(response.error);
|
|
34
45
|
return ActionResult.failed();
|
|
35
46
|
}
|
|
36
47
|
const tempSdkFilePath = await tempContext.save(response.value);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/actions/sdk/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/actions/sdk/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,MAAM,OAAO,cAAc;IAOzB,YAAY,SAAwB,EAAE,eAAgC,EAAE,UAAyB,IAAI;QANpF,YAAO,GAAuB,IAAI,kBAAkB,EAAE,CAAC;QACvD,kBAAa,GAAkB,IAAI,aAAa,EAAE,CAAC;QAWpD,YAAO,GAAG,KAAK,EAC7B,cAA6B,EAC7B,YAA2B,EAC3B,QAAkB,EAClB,KAAc,EACd,MAAe,EACQ,EAAE;YACzB,IAAI,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gBACzC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;gBAChD,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC;YAC/B,CAAC;YAED,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,CAAC,cAAc,CAAC,CAAC;YACxE,IAAI,MAAM,qBAAqB,CAAC,MAAM,EAAE,EAAE,CAAC;gBACzC,MAAM,iBAAiB,GAAG,MAAM,qBAAqB,CAAC,yBAAyB,EAAE,CAAC;gBAClF,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;oBACnC,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC;gBAC/B,CAAC;gBACD,cAAc,GAAG,iBAAiB,CAAC;gBACnC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,qBAAqB,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACxF,CAAC;YAED,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,cAAc,CAAC,CAAC;YACtD,IAAI,CAAC,CAAC,MAAM,YAAY,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;gBACrC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;gBAC/C,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC;YAC/B,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAC1D,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC;gBACjH,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC;gBACtC,OAAO,YAAY,CAAC,SAAS,EAAE,CAAC;YAClC,CAAC;YAED,OAAO,MAAM,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE;gBAC/C,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,aAAa,CAAC,CAAC;gBACnD,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAE3D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAC7C,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,CAC3G,CAAC;gBAEF,qCAAqC;gBACrC,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;oBACrB,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACvD,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC;gBAC/B,CAAC;gBAED,MAAM,eAAe,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC/D,MAAM,oBAAoB,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;gBAE5E,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;gBAEhD,OAAO,YAAY,CAAC,OAAO,EAAE,CAAC;YAChC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QA7DA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CA2DF"}
|
|
@@ -10,6 +10,9 @@ export declare class SdkQuickstartAction {
|
|
|
10
10
|
private readonly launcherService;
|
|
11
11
|
private readonly zipService;
|
|
12
12
|
private readonly validationService;
|
|
13
|
+
private readonly buildFileUrl;
|
|
14
|
+
private readonly defaultSpecUrl;
|
|
15
|
+
private readonly repositoryFolderName;
|
|
13
16
|
constructor(configDir: DirectoryPath, commandMetadata: CommandMetadata);
|
|
14
17
|
readonly execute: () => Promise<ActionResult>;
|
|
15
18
|
}
|
|
@@ -14,8 +14,9 @@ import { LauncherService } from '../../infrastructure/launcher-service.js';
|
|
|
14
14
|
import { ZipService } from '../../infrastructure/zip-service.js';
|
|
15
15
|
import { FileName } from '../../types/file/fileName.js';
|
|
16
16
|
import { ValidationService } from '../../infrastructure/services/validation-service.js';
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
import { BuildContext } from '../../types/build-context.js';
|
|
18
|
+
import { TempContext } from '../../types/temp-context.js';
|
|
19
|
+
import { getLanguagesConfig } from '../../types/build/build.js';
|
|
19
20
|
export class SdkQuickstartAction {
|
|
20
21
|
constructor(configDir, commandMetadata) {
|
|
21
22
|
this.configDir = configDir;
|
|
@@ -26,6 +27,9 @@ export class SdkQuickstartAction {
|
|
|
26
27
|
this.launcherService = new LauncherService();
|
|
27
28
|
this.zipService = new ZipService();
|
|
28
29
|
this.validationService = new ValidationService(this.configDir);
|
|
30
|
+
this.buildFileUrl = new UrlPath(`https://github.com/apimatic/sample-docs-as-code-portal/archive/refs/heads/master.zip`);
|
|
31
|
+
this.defaultSpecUrl = new UrlPath(`https://raw.githubusercontent.com/apimatic/sample-docs-as-code-portal/refs/heads/master/src/spec/openapi.json`);
|
|
32
|
+
this.repositoryFolderName = 'sample-docs-as-code-portal-master/src';
|
|
29
33
|
this.execute = async () => {
|
|
30
34
|
const storedAuth = await getAuthInfo(this.configDir.toString());
|
|
31
35
|
if (!(storedAuth === null || storedAuth === void 0 ? void 0 : storedAuth.authKey)) {
|
|
@@ -40,7 +44,7 @@ export class SdkQuickstartAction {
|
|
|
40
44
|
this.prompts.importSpecStep();
|
|
41
45
|
let specPath;
|
|
42
46
|
while (!specPath) {
|
|
43
|
-
const inputPath = await this.prompts.specPathPrompt(defaultSpecUrl);
|
|
47
|
+
const inputPath = await this.prompts.specPathPrompt(this.defaultSpecUrl);
|
|
44
48
|
if (!inputPath) {
|
|
45
49
|
this.prompts.noSpecSpecified();
|
|
46
50
|
return ActionResult.cancelled();
|
|
@@ -75,7 +79,7 @@ export class SdkQuickstartAction {
|
|
|
75
79
|
this.prompts.fixYourSpec();
|
|
76
80
|
return ActionResult.cancelled();
|
|
77
81
|
}
|
|
78
|
-
const downloadFileResult = await this.prompts.downloadSpecFile(this.fileDownloadService.downloadFile(defaultSpecUrl));
|
|
82
|
+
const downloadFileResult = await this.prompts.downloadSpecFile(this.fileDownloadService.downloadFile(this.defaultSpecUrl));
|
|
79
83
|
if (downloadFileResult.isErr()) {
|
|
80
84
|
this.prompts.serviceError(downloadFileResult.error);
|
|
81
85
|
}
|
|
@@ -130,30 +134,31 @@ export class SdkQuickstartAction {
|
|
|
130
134
|
}
|
|
131
135
|
break;
|
|
132
136
|
}
|
|
133
|
-
// Setup source directory with the
|
|
134
|
-
const
|
|
135
|
-
if (
|
|
136
|
-
this.prompts.serviceError(
|
|
137
|
+
// Setup source directory with the build structure
|
|
138
|
+
const masterBuildFile = await this.prompts.downloadBuildDirectory(this.fileDownloadService.downloadFile(this.buildFileUrl));
|
|
139
|
+
if (masterBuildFile.isErr()) {
|
|
140
|
+
this.prompts.serviceError(masterBuildFile.error);
|
|
137
141
|
return ActionResult.failed();
|
|
138
142
|
}
|
|
139
|
-
const
|
|
140
|
-
await
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
}
|
|
143
|
+
const tempContext = new TempContext(tempDirectory);
|
|
144
|
+
const masterBuildFilePath = await tempContext.save(masterBuildFile.value.stream);
|
|
145
|
+
await this.zipService.unArchive(masterBuildFilePath, tempDirectory);
|
|
146
|
+
const extractedFolder = tempDirectory.join(this.repositoryFolderName);
|
|
147
|
+
const tempBuildContext = new BuildContext(extractedFolder);
|
|
148
|
+
await tempBuildContext.deleteWorkflowDir();
|
|
149
|
+
const buildFile = await tempBuildContext.getBuildFileContents();
|
|
150
|
+
buildFile.generatePortal.languageConfig = getLanguagesConfig([language]);
|
|
151
|
+
await tempBuildContext.updateBuildFileContents(buildFile);
|
|
149
152
|
const sourceDirectory = inputDirectory.join('src');
|
|
153
|
+
await this.fileService.copyDirectoryContents(extractedFolder, sourceDirectory);
|
|
150
154
|
const specDirectory = sourceDirectory.join('spec');
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
this.
|
|
155
|
+
const specContext = new SpecContext(specDirectory);
|
|
156
|
+
await specContext.replaceDefaultSpec(specPath);
|
|
157
|
+
const buildDirectoryStructure = await this.fileService.getDirectory(sourceDirectory);
|
|
158
|
+
this.prompts.printDirectoryStructure(inputDirectory, buildDirectoryStructure);
|
|
154
159
|
const sdkDirectory = inputDirectory.join('sdk');
|
|
155
160
|
const sdkGenerateAction = new GenerateAction(this.configDir, this.commandMetadata);
|
|
156
|
-
const result = await sdkGenerateAction.execute(
|
|
161
|
+
const result = await sdkGenerateAction.execute(sourceDirectory, sdkDirectory, language, true, false);
|
|
157
162
|
if (result.isFailed()) {
|
|
158
163
|
return ActionResult.failed();
|
|
159
164
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../../src/actions/sdk/quickstart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wDAAwD,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAoB,iBAAiB,EAAE,MAAM,qDAAqD,CAAC;
|
|
1
|
+
{"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../../src/actions/sdk/quickstart.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,9 +7,8 @@ export default class SdkGenerate extends Command {
|
|
|
7
7
|
"auth-key": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
zip: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
9
9
|
force: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
|
-
language: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
-
spec: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
10
|
destination: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
language: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
12
|
};
|
|
14
13
|
static examples: string[];
|
|
15
14
|
run(): Promise<void>;
|
|
@@ -12,8 +12,9 @@ class SdkGenerate extends Command {
|
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
14
|
async run() {
|
|
15
|
-
const { flags: { language,
|
|
16
|
-
const
|
|
15
|
+
const { flags: { language, input, destination, force, zip: zipSdk, "auth-key": authKey } } = await this.parse(SdkGenerate);
|
|
16
|
+
const workingDirectory = DirectoryPath.createInput(input);
|
|
17
|
+
const buildDirectory = input ? new DirectoryPath(input, "src") : workingDirectory.join("src");
|
|
17
18
|
const sdkDirectory = destination ? new DirectoryPath(destination) : DirectoryPath.default.join("sdk");
|
|
18
19
|
const commandMetadata = {
|
|
19
20
|
commandName: SdkGenerate.id,
|
|
@@ -21,7 +22,7 @@ class SdkGenerate extends Command {
|
|
|
21
22
|
};
|
|
22
23
|
intro("Generate SDK");
|
|
23
24
|
const action = new GenerateAction(this.getConfigDir(), commandMetadata, authKey);
|
|
24
|
-
const result = await action.execute(
|
|
25
|
+
const result = await action.execute(buildDirectory, sdkDirectory, language, force, zipSdk);
|
|
25
26
|
outro(result);
|
|
26
27
|
}
|
|
27
28
|
}
|
|
@@ -29,24 +30,21 @@ SdkGenerate.summary = "Generate an SDK for your API";
|
|
|
29
30
|
SdkGenerate.description = `Generate Software Development Kits (SDKs) from API specifications.
|
|
30
31
|
Supports multiple programming languages including Java, C#, Python, JavaScript, and more.`;
|
|
31
32
|
SdkGenerate.cmdTxt = format.cmd("apimatic", "sdk", "generate");
|
|
32
|
-
SdkGenerate.flags = Object.assign(Object.assign(Object.assign({ language: Flags.string({
|
|
33
|
+
SdkGenerate.flags = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ language: Flags.string({
|
|
33
34
|
char: "l",
|
|
34
35
|
required: true,
|
|
35
36
|
description: "Programming language for SDK generation",
|
|
36
37
|
options: Object.values(Language).map((p) => p.valueOf()),
|
|
37
|
-
}),
|
|
38
|
-
description: "Path to the folder containing the API specification file",
|
|
39
|
-
default: "./src/spec"
|
|
40
|
-
}), destination: Flags.string({
|
|
38
|
+
}) }, FlagsProvider.input), { destination: Flags.string({
|
|
41
39
|
char: "d",
|
|
42
40
|
description: "Directory where the SDK will be generated"
|
|
43
|
-
}) }, FlagsProvider.force), { zip: Flags.boolean({
|
|
41
|
+
}) }), FlagsProvider.force), { zip: Flags.boolean({
|
|
44
42
|
default: false,
|
|
45
43
|
description: "Download the generated SDK as a .zip archive"
|
|
46
44
|
}) }), FlagsProvider.authKey);
|
|
47
45
|
SdkGenerate.examples = [
|
|
48
46
|
`${SdkGenerate.cmdTxt} ${format.flag("language", "java")}`,
|
|
49
|
-
`${SdkGenerate.cmdTxt} ${format.flag("language", "csharp")} ${format.flag("
|
|
47
|
+
`${SdkGenerate.cmdTxt} ${format.flag("language", "csharp")} ${format.flag("input", "./")}`,
|
|
50
48
|
`${SdkGenerate.cmdTxt} ${format.flag("language", "python")} ${format.flag("destination", "./sdk")} ${format.flag("zip")}`
|
|
51
49
|
];
|
|
52
50
|
export default SdkGenerate;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/commands/sdk/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEvD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAqB,WAAY,SAAQ,OAAO;IAAhD;;
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/commands/sdk/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ export declare class FileService {
|
|
|
9
9
|
cleanDirectory(dir: DirectoryPath): Promise<void>;
|
|
10
10
|
createDirectoryIfNotExists(dir: DirectoryPath): Promise<void>;
|
|
11
11
|
getDirectory(directoryPath: DirectoryPath): Promise<Directory>;
|
|
12
|
+
getSubDirectoriesPaths(dir: DirectoryPath): Promise<DirectoryPath[]>;
|
|
12
13
|
copyDirectoryContents(source: DirectoryPath, destination: DirectoryPath): Promise<void>;
|
|
13
14
|
deleteFile(filePath: FilePath): Promise<void>;
|
|
14
15
|
deleteDirectory(dirPath: DirectoryPath): Promise<void>;
|
|
@@ -50,6 +50,17 @@ export class FileService {
|
|
|
50
50
|
}));
|
|
51
51
|
return new Directory(directoryPath, results);
|
|
52
52
|
}
|
|
53
|
+
async getSubDirectoriesPaths(dir) {
|
|
54
|
+
try {
|
|
55
|
+
const entries = await fsExtra.readdir(dir.toString(), { withFileTypes: true });
|
|
56
|
+
return entries
|
|
57
|
+
.filter((entry) => entry.isDirectory())
|
|
58
|
+
.map((entry) => dir.join(entry.name));
|
|
59
|
+
}
|
|
60
|
+
catch (_a) {
|
|
61
|
+
return [];
|
|
62
|
+
}
|
|
63
|
+
}
|
|
53
64
|
async copyDirectoryContents(source, destination) {
|
|
54
65
|
const entries = await fsExtra.readdir(source.toString());
|
|
55
66
|
await Promise.all(entries.map(async (entry) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-service.js","sourceRoot":"","sources":["../../src/infrastructure/file-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"file-service.js","sourceRoot":"","sources":["../../src/infrastructure/file-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,11 +2,12 @@ import { DirectoryPath } from "../../types/file/directoryPath.js";
|
|
|
2
2
|
import { SubscriptionInfo } from "../../types/api/account.js";
|
|
3
3
|
import { Result } from "neverthrow";
|
|
4
4
|
import { ServiceError } from "../service-error.js";
|
|
5
|
-
import { PortalGenerationStatusResponse } from "@apimatic/sdk";
|
|
5
|
+
import { PortalGenerationStatusResponse, SdkGenerationStatusResponse } from "@apimatic/sdk";
|
|
6
6
|
export declare class ApiService {
|
|
7
7
|
private readonly apiBaseUrl;
|
|
8
8
|
getAccountInfo(configDir: DirectoryPath, shell: string, authKey: string | null): Promise<Result<SubscriptionInfo, ServiceError>>;
|
|
9
9
|
getPortalGenerationStatus(requestId: string, configDir: DirectoryPath, shell: string, authKey: string | null): Promise<Result<PortalGenerationStatusResponse, ServiceError>>;
|
|
10
|
+
getSdkGenerationStatus(requestId: string, configDir: DirectoryPath, shell: string, authKey: string | null): Promise<Result<SdkGenerationStatusResponse, ServiceError>>;
|
|
10
11
|
sendTelemetry(payload: string, authKey: string, shell: string): Promise<Result<string, string | ServiceError>>;
|
|
11
12
|
private axiosInstance;
|
|
12
13
|
}
|
|
@@ -48,6 +48,30 @@ export class ApiService {
|
|
|
48
48
|
return err(handleServiceError(error));
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
|
+
async getSdkGenerationStatus(requestId, configDir, shell, authKey) {
|
|
52
|
+
const authInfo = await getAuthInfo(configDir.toString());
|
|
53
|
+
if (authInfo === null && !authKey) {
|
|
54
|
+
return err(ServiceError.UnAuthorized);
|
|
55
|
+
}
|
|
56
|
+
try {
|
|
57
|
+
const token = authKey || (authInfo === null || authInfo === void 0 ? void 0 : authInfo.authKey);
|
|
58
|
+
const response = await this.axiosInstance(shell, token).get(`/sdk/${requestId}/status`, {
|
|
59
|
+
headers: { Accept: "application/json" },
|
|
60
|
+
maxRedirects: 0,
|
|
61
|
+
validateStatus: () => true
|
|
62
|
+
});
|
|
63
|
+
if (response.status === 200) {
|
|
64
|
+
return ok(response.data);
|
|
65
|
+
}
|
|
66
|
+
if (response.status === 302) {
|
|
67
|
+
return ok({ status: "Completed" });
|
|
68
|
+
}
|
|
69
|
+
return err(ServiceError.InvalidResponse);
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
return err(handleServiceError(error));
|
|
73
|
+
}
|
|
74
|
+
}
|
|
51
75
|
async sendTelemetry(payload, authKey, shell) {
|
|
52
76
|
try {
|
|
53
77
|
const response = await this.axiosInstance(shell, authKey).post("/telemetry/track", payload, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-service.js","sourceRoot":"","sources":["../../../src/infrastructure/services/api-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAY,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAG3E,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,EAAE,EAAU,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGvE,MAAM,OAAO,UAAU;IAAvB;QACmB,eAAU,GAAG,yBAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"api-service.js","sourceRoot":"","sources":["../../../src/infrastructure/services/api-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,11 +11,9 @@ export declare class PortalService {
|
|
|
11
11
|
private readonly fileService;
|
|
12
12
|
private readonly apiService;
|
|
13
13
|
generatePortal(buildPath: FilePath, configDir: DirectoryPath, commandMetadata: CommandMetadata, authKey: string | null): Promise<Result<NodeJS.ReadableStream, ServiceError | NodeJS.ReadableStream>>;
|
|
14
|
-
generateSdk(
|
|
14
|
+
generateSdk(buildPath: FilePath, language: Language, configDir: DirectoryPath, commandMetadata: CommandMetadata, authKey: string | null): Promise<Result<NodeJS.ReadableStream, ServiceError>>;
|
|
15
15
|
generateSdl(specFileStream: ReadStream, configDir: DirectoryPath, commandMetadata: CommandMetadata): Promise<Result<Sdl, ServiceError>>;
|
|
16
16
|
private createAuthorizationHeader;
|
|
17
17
|
private createOriginQueryParameter;
|
|
18
|
-
private
|
|
19
|
-
private parseBadRequestResponse;
|
|
20
|
-
private readonly languagePlatform;
|
|
18
|
+
private readonly languageSdk;
|
|
21
19
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ApiError, SdkGenerationAsyncController, ContentType, DocsPortalGenerationAsyncController, ProblemDetailsError, FileWrapper, TransformationController, ExportFormats, SdkLanguages, Status, } from "@apimatic/sdk";
|
|
2
2
|
import { getAuthInfo } from "../../client-utils/auth-manager.js";
|
|
3
3
|
import { parseStreamBodyToJson } from "../../utils/utils.js";
|
|
4
4
|
import { FileService } from "../file-service.js";
|
|
@@ -21,36 +21,19 @@ export class PortalService {
|
|
|
21
21
|
origin: `APIMATIC CLI ${commandName}`
|
|
22
22
|
};
|
|
23
23
|
};
|
|
24
|
-
this.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
return (_c = (_b = error.result) === null || _b === void 0 ? void 0 : _b.message) !== null && _c !== void 0 ? _c : "Authorization has been denied for this request.";
|
|
33
|
-
}
|
|
34
|
-
if (error instanceof ProblemDetailsError) {
|
|
35
|
-
// 403
|
|
36
|
-
const message = (_e = (_d = error.result.errors) === null || _d === void 0 ? void 0 : _d[""]) === null || _e === void 0 ? void 0 : _e[0];
|
|
37
|
-
return error.result.title + "\n- " + message;
|
|
38
|
-
}
|
|
39
|
-
return "An unexpected error occurred while generating the SDK, please try again later. If the problem persists, please reach out to our team at support@apimatic.io";
|
|
40
|
-
};
|
|
41
|
-
this.languagePlatform = {
|
|
42
|
-
[Language.CSHARP]: Platforms.CsNetStandardLib,
|
|
43
|
-
[Language.JAVA]: Platforms.JavaEclipseJreLib,
|
|
44
|
-
[Language.PHP]: Platforms.PhpGenericLibV2,
|
|
45
|
-
[Language.PYTHON]: Platforms.PythonGenericLib,
|
|
46
|
-
[Language.RUBY]: Platforms.RubyGenericLib,
|
|
47
|
-
[Language.TYPESCRIPT]: Platforms.TsGenericLib,
|
|
48
|
-
[Language.GO]: Platforms.GoGenericLib
|
|
24
|
+
this.languageSdk = {
|
|
25
|
+
[Language.CSHARP]: SdkLanguages.Csharp,
|
|
26
|
+
[Language.JAVA]: SdkLanguages.Java,
|
|
27
|
+
[Language.PHP]: SdkLanguages.Php,
|
|
28
|
+
[Language.PYTHON]: SdkLanguages.Python,
|
|
29
|
+
[Language.RUBY]: SdkLanguages.Ruby,
|
|
30
|
+
[Language.TYPESCRIPT]: SdkLanguages.Typescript,
|
|
31
|
+
[Language.GO]: SdkLanguages.Go
|
|
49
32
|
};
|
|
50
33
|
}
|
|
51
34
|
// TODO: Pass stream as parameter instead of file path.
|
|
52
35
|
async generatePortal(buildPath, configDir, commandMetadata, authKey) {
|
|
53
|
-
var _a, _b;
|
|
36
|
+
var _a, _b, _c, _d, _e, _f;
|
|
54
37
|
const buildFileStream = await this.fileService.getStream(buildPath);
|
|
55
38
|
const file = new FileWrapper(buildFileStream);
|
|
56
39
|
const authInfo = await getAuthInfo(configDir.toString());
|
|
@@ -64,6 +47,7 @@ export class PortalService {
|
|
|
64
47
|
}
|
|
65
48
|
catch (error) {
|
|
66
49
|
if (error instanceof ProblemDetailsError) {
|
|
50
|
+
// TODO: This only picks the first error message, improve it to show all errors.
|
|
67
51
|
const message = (_b = (_a = Object.values(error.result.errors)[0]) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : null;
|
|
68
52
|
const errorMessage = error.result.title + "\n- " + message;
|
|
69
53
|
if (error.statusCode === 400) {
|
|
@@ -86,10 +70,22 @@ export class PortalService {
|
|
|
86
70
|
if (statusResult.isErr()) {
|
|
87
71
|
return err(statusResult.error);
|
|
88
72
|
}
|
|
89
|
-
if (statusResult.value.status ===
|
|
73
|
+
if (statusResult.value.status === Status.Failed) {
|
|
90
74
|
return err(ServiceError.ServerError);
|
|
91
75
|
}
|
|
92
|
-
|
|
76
|
+
if (statusResult.value.errors && statusResult.value.status === Status.ValidationError) {
|
|
77
|
+
// TODO: This only picks the first error message, improve it to show all errors.
|
|
78
|
+
const message = (_d = (_c = Object.values(statusResult.value.errors)[0]) === null || _c === void 0 ? void 0 : _c[0]) !== null && _d !== void 0 ? _d : null;
|
|
79
|
+
const errorMessage = "One or more validation errors occurred." + "\n- " + message;
|
|
80
|
+
return err(ServiceError.badRequest(errorMessage));
|
|
81
|
+
}
|
|
82
|
+
if (statusResult.value.errors && statusResult.value.status === Status.SubscriptionError) {
|
|
83
|
+
// TODO: This only picks the first error message, improve it to show all errors.
|
|
84
|
+
const message = (_f = (_e = Object.values(statusResult.value.errors)[0]) === null || _e === void 0 ? void 0 : _e[0]) !== null && _f !== void 0 ? _f : null;
|
|
85
|
+
const errorMessage = "Access denied to resource." + "\n- " + message;
|
|
86
|
+
return err(ServiceError.forbidden(errorMessage));
|
|
87
|
+
}
|
|
88
|
+
} while (statusResult.value.status !== Status.Completed);
|
|
93
89
|
try {
|
|
94
90
|
const portalDownloadResponse = await docsPortalAsyncController.downloadGeneratedPortal(generationId);
|
|
95
91
|
return ok(portalDownloadResponse.result);
|
|
@@ -102,23 +98,64 @@ export class PortalService {
|
|
|
102
98
|
}
|
|
103
99
|
}
|
|
104
100
|
// TODO: Pass stream as parameter instead of file path.
|
|
105
|
-
async generateSdk(
|
|
106
|
-
|
|
107
|
-
const
|
|
101
|
+
async generateSdk(buildPath, language, configDir, commandMetadata, authKey) {
|
|
102
|
+
var _a, _b, _c, _d;
|
|
103
|
+
const buildFileStream = await this.fileService.getStream(buildPath);
|
|
104
|
+
const file = new FileWrapper(buildFileStream);
|
|
108
105
|
const authInfo = await getAuthInfo(configDir.toString());
|
|
109
106
|
const authorizationHeader = this.createAuthorizationHeader(authInfo, authKey);
|
|
110
107
|
const client = apiClientFactory.createApiClient(authorizationHeader, commandMetadata.shell);
|
|
111
|
-
const sdkGenerationController = new
|
|
108
|
+
const sdkGenerationController = new SdkGenerationAsyncController(client);
|
|
109
|
+
let generationId;
|
|
112
110
|
try {
|
|
113
|
-
const response = await sdkGenerationController.
|
|
114
|
-
|
|
115
|
-
return ok(sdkResponse.result);
|
|
111
|
+
const response = await sdkGenerationController.generateSdkViaBuildInputAsync(this.CONTENT_TYPE, file, this.languageSdk[language]);
|
|
112
|
+
generationId = response.result.id;
|
|
116
113
|
}
|
|
117
114
|
catch (error) {
|
|
118
|
-
|
|
115
|
+
if (error instanceof ProblemDetailsError) {
|
|
116
|
+
// TODO: This only picks the first error message, improve it to show all errors.
|
|
117
|
+
const message = (_b = (_a = Object.values(error.result.errors)[0]) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : null;
|
|
118
|
+
const errorMessage = error.result.title + "\n- " + message;
|
|
119
|
+
if (error.statusCode === 400) {
|
|
120
|
+
return err(ServiceError.badRequest(errorMessage));
|
|
121
|
+
}
|
|
122
|
+
if (error.statusCode === 403) {
|
|
123
|
+
return err(ServiceError.forbidden(errorMessage));
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
const serviceError = handleServiceError(error);
|
|
127
|
+
return err(serviceError);
|
|
119
128
|
}
|
|
120
129
|
finally {
|
|
121
|
-
|
|
130
|
+
buildFileStream.close();
|
|
131
|
+
}
|
|
132
|
+
let statusResult;
|
|
133
|
+
do {
|
|
134
|
+
await new Promise((resolve) => setTimeout(resolve, 3000));
|
|
135
|
+
statusResult = await this.apiService.getSdkGenerationStatus(generationId, configDir, commandMetadata.shell, authKey);
|
|
136
|
+
if (statusResult.isErr()) {
|
|
137
|
+
return err(statusResult.error);
|
|
138
|
+
}
|
|
139
|
+
if (statusResult.value.status === Status.Failed) {
|
|
140
|
+
return err(ServiceError.ServerError);
|
|
141
|
+
}
|
|
142
|
+
if (statusResult.value.errors && statusResult.value.status === Status.ValidationError) {
|
|
143
|
+
const message = (_c = Object.values(statusResult.value.errors).flat()[0]) !== null && _c !== void 0 ? _c : null;
|
|
144
|
+
const errorMessage = "One or more validation errors occurred." + "\n- " + message;
|
|
145
|
+
return err(ServiceError.badRequest(errorMessage));
|
|
146
|
+
}
|
|
147
|
+
if (statusResult.value.errors && statusResult.value.status === Status.SubscriptionError) {
|
|
148
|
+
const message = (_d = Object.values(statusResult.value.errors).flat()[0]) !== null && _d !== void 0 ? _d : null;
|
|
149
|
+
const errorMessage = "Access denied to resource." + "\n- " + message;
|
|
150
|
+
return err(ServiceError.forbidden(errorMessage));
|
|
151
|
+
}
|
|
152
|
+
} while (statusResult.value.status !== Status.Completed);
|
|
153
|
+
try {
|
|
154
|
+
const sdkResponse = await sdkGenerationController.downloadGeneratedSdk(generationId);
|
|
155
|
+
return ok(sdkResponse.result);
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
return err(handleServiceError(error));
|
|
122
159
|
}
|
|
123
160
|
}
|
|
124
161
|
async generateSdl(specFileStream, configDir, commandMetadata) {
|
|
@@ -145,24 +182,5 @@ export class PortalService {
|
|
|
145
182
|
return err(handleServiceError(error));
|
|
146
183
|
}
|
|
147
184
|
}
|
|
148
|
-
parseBadRequestResponse(errorMessage) {
|
|
149
|
-
// #TODO: Fix server-side error message and simplify this function
|
|
150
|
-
if (!errorMessage) {
|
|
151
|
-
return "Bad request.";
|
|
152
|
-
}
|
|
153
|
-
// Parse the JSON string
|
|
154
|
-
const parsedResult = JSON.parse(errorMessage);
|
|
155
|
-
// Check if it has the expected structure with Errors
|
|
156
|
-
if (parsedResult.Errors && Array.isArray(parsedResult.Errors) && parsedResult.Errors.length > 0) {
|
|
157
|
-
// Get the first error and clean it up
|
|
158
|
-
return parsedResult.Errors[0].split(".")[0] + ".";
|
|
159
|
-
// Split on <br/> and take the first part, then strip remaining HTML tags
|
|
160
|
-
// return firstError.split("<br/>")[0].replace(/<[^<>]*?>/g, "");
|
|
161
|
-
}
|
|
162
|
-
else if (parsedResult.Success === false) {
|
|
163
|
-
return "API definition file validation failed.";
|
|
164
|
-
}
|
|
165
|
-
return errorMessage;
|
|
166
|
-
}
|
|
167
185
|
}
|
|
168
186
|
//# sourceMappingURL=portal-service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portal-service.js","sourceRoot":"","sources":["../../../src/infrastructure/services/portal-service.ts"],"names":[],"mappings":"AACA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"portal-service.js","sourceRoot":"","sources":["../../../src/infrastructure/services/portal-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import { DirectoryPath } from "../../types/file/directoryPath.js";
|
|
2
2
|
import { Result } from "neverthrow";
|
|
3
|
+
import { ServiceError } from "../../infrastructure/service-error.js";
|
|
3
4
|
export declare class SdkGeneratePrompts {
|
|
4
5
|
overwriteSdk(directory: DirectoryPath): Promise<boolean>;
|
|
5
|
-
|
|
6
|
-
|
|
6
|
+
sameBuildAndSdkDir(directory: DirectoryPath): void;
|
|
7
|
+
srcDirectoryEmpty(directory: DirectoryPath): void;
|
|
7
8
|
destinationDirNotEmpty(): void;
|
|
8
|
-
generateSDK(fn: Promise<Result<NodeJS.ReadableStream,
|
|
9
|
+
generateSDK(fn: Promise<Result<NodeJS.ReadableStream, ServiceError>>): Promise<Result<NodeJS.ReadableStream, ServiceError>>;
|
|
9
10
|
logGenerationError(error: string): void;
|
|
11
|
+
sdkGenerationServiceError(serviceError: ServiceError): void;
|
|
12
|
+
versionedBuildEmpty(): void;
|
|
13
|
+
versionedBuild(relativePath: string): void;
|
|
10
14
|
sdkGenerated(sdk: DirectoryPath): void;
|
|
11
15
|
}
|
|
@@ -12,11 +12,11 @@ export class SdkGeneratePrompts {
|
|
|
12
12
|
}
|
|
13
13
|
return overwrite;
|
|
14
14
|
}
|
|
15
|
-
|
|
16
|
-
const message = `The ${f.var("src")} and ${f.var("
|
|
15
|
+
sameBuildAndSdkDir(directory) {
|
|
16
|
+
const message = `The ${f.var("src")} and ${f.var("sdk")} directories must be different. Current value: ${f.path(directory)}`;
|
|
17
17
|
this.logGenerationError(message);
|
|
18
18
|
}
|
|
19
|
-
|
|
19
|
+
srcDirectoryEmpty(directory) {
|
|
20
20
|
const message = `The ${f.var("src")} directory is either empty or invalid: ${f.path(directory)}`;
|
|
21
21
|
this.logGenerationError(message);
|
|
22
22
|
}
|
|
@@ -30,6 +30,16 @@ export class SdkGeneratePrompts {
|
|
|
30
30
|
logGenerationError(error) {
|
|
31
31
|
log.error(error);
|
|
32
32
|
}
|
|
33
|
+
sdkGenerationServiceError(serviceError) {
|
|
34
|
+
log.error(serviceError.errorMessage);
|
|
35
|
+
}
|
|
36
|
+
versionedBuildEmpty() {
|
|
37
|
+
const message = `The ${f.var("versioned_docs")} directory is empty or contains no valid versions.`;
|
|
38
|
+
this.logGenerationError(message);
|
|
39
|
+
}
|
|
40
|
+
versionedBuild(relativePath) {
|
|
41
|
+
log.warning(`SDK Generation for multi-versioned builds is not supported. Generating SDK for ${f.var(relativePath)} instead.`);
|
|
42
|
+
}
|
|
33
43
|
sdkGenerated(sdk) {
|
|
34
44
|
log.info(`Generated SDK can be found at ${f.path(sdk)}.`);
|
|
35
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/prompts/sdk/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/prompts/sdk/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,MAAM,OAAO,kBAAkB;IACtB,KAAK,CAAC,YAAY,CAAC,SAAwB;QAChD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,0CAA0C;YACvF,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,kBAAkB,CAAC,SAAwB;QACjD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC,IAAI,CAC5G,SAAS,CACV,EAAE,CAAC;QAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAEM,iBAAiB,CAAC,SAAwB;QAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACjG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAEM,sBAAsB;QAC3B,MAAM,OAAO,GAAG,yFAAyF,CAAC;QAC1G,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAEM,WAAW,CAAC,EAAwD;QACzE,OAAO,WAAW,CAAC,gBAAgB,EAAE,6BAA6B,EAAE,wBAAwB,EAAE,EAAE,CAAC,CAAC;IACpG,CAAC;IAEM,kBAAkB,CAAC,KAAa;QACrC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAEM,yBAAyB,CAAC,YAA0B;QACzD,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IACvC,CAAC;IAEM,mBAAmB;QACxB,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,oDAAoD,CAAC;QACnG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAEM,cAAc,CAAC,YAAoB;QACxC,GAAG,CAAC,OAAO,CAAC,kFAAkF,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAChI,CAAC;IAEM,YAAY,CAAC,GAAkB;QACpC,GAAG,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC;CACF"}
|
|
@@ -28,8 +28,8 @@ export declare class SdkQuickstartPrompts {
|
|
|
28
28
|
noInputDirectoryProvided(): void;
|
|
29
29
|
inputDirectoryPathDoesNotExist(inputDirectory: DirectoryPath): void;
|
|
30
30
|
inputDirectoryNotEmpty(inputDirectory: DirectoryPath): void;
|
|
31
|
-
|
|
31
|
+
downloadBuildDirectory(fn: Promise<Result<FileDownloadResponse, ServiceError>>): Promise<Result<FileDownloadResponse, ServiceError>>;
|
|
32
32
|
printDirectoryStructure(inputDirectory: DirectoryPath, directory: Directory): void;
|
|
33
33
|
sdkOpenedInEditor(): void;
|
|
34
|
-
nextSteps(language: Language,
|
|
34
|
+
nextSteps(language: Language, inputDirectory: DirectoryPath): void;
|
|
35
35
|
}
|
|
@@ -150,7 +150,7 @@ export class SdkQuickstartPrompts {
|
|
|
150
150
|
inputDirectoryNotEmpty(inputDirectory) {
|
|
151
151
|
log.error(`The target directory ${f.path(inputDirectory)} is not empty. Please provide a path to an empty directory or clear its contents.`);
|
|
152
152
|
}
|
|
153
|
-
|
|
153
|
+
downloadBuildDirectory(fn) {
|
|
154
154
|
return withSpinner("Setting up source directory", `Source directory set up successfully`, "Unable to set up source directory", fn);
|
|
155
155
|
}
|
|
156
156
|
printDirectoryStructure(inputDirectory, directory) {
|
|
@@ -161,12 +161,12 @@ export class SdkQuickstartPrompts {
|
|
|
161
161
|
sdkOpenedInEditor() {
|
|
162
162
|
log.info("Opened the SDK directory in VS Code. To get started with your SDK, review the README file.");
|
|
163
163
|
}
|
|
164
|
-
nextSteps(language,
|
|
165
|
-
const
|
|
166
|
-
? `${f.flag("
|
|
164
|
+
nextSteps(language, inputDirectory) {
|
|
165
|
+
const inputDirectoryFlag = !inputDirectory.isEqual(DirectoryPath.default)
|
|
166
|
+
? `${f.flag("input", inputDirectory.toString())} `
|
|
167
167
|
: "";
|
|
168
168
|
const message = `Run the command
|
|
169
|
-
'${f.cmdAlt("apimatic", "sdk", "generate")} ${
|
|
169
|
+
'${f.cmdAlt("apimatic", "sdk", "generate")} ${inputDirectoryFlag}${f.flag("language", language)}'
|
|
170
170
|
to regenerate your SDK.
|
|
171
171
|
|
|
172
172
|
To learn more about customizing your SDK, visit:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../../src/prompts/sdk/quickstart.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../../src/prompts/sdk/quickstart.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { DirectoryPath } from "./file/directoryPath.js";
|
|
2
|
+
export declare class VersionedBuildContext {
|
|
3
|
+
private readonly fileService;
|
|
4
|
+
private readonly versionedDocsDir;
|
|
5
|
+
constructor(buildDirectory: DirectoryPath);
|
|
6
|
+
exists(): Promise<boolean>;
|
|
7
|
+
getResolvedBuildDirectory(): Promise<DirectoryPath | null>;
|
|
8
|
+
getRelativePath(resolvedDirectory: DirectoryPath): string;
|
|
9
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as path from "path";
|
|
2
|
+
import { FileService } from "../infrastructure/file-service.js";
|
|
3
|
+
export class VersionedBuildContext {
|
|
4
|
+
constructor(buildDirectory) {
|
|
5
|
+
this.fileService = new FileService();
|
|
6
|
+
this.versionedDocsDir = buildDirectory.join("versioned_docs");
|
|
7
|
+
}
|
|
8
|
+
async exists() {
|
|
9
|
+
return this.fileService.directoryExists(this.versionedDocsDir);
|
|
10
|
+
}
|
|
11
|
+
async getResolvedBuildDirectory() {
|
|
12
|
+
const subDirs = await this.fileService.getSubDirectoriesPaths(this.versionedDocsDir);
|
|
13
|
+
if (subDirs.length === 0)
|
|
14
|
+
return null;
|
|
15
|
+
return subDirs[0];
|
|
16
|
+
}
|
|
17
|
+
getRelativePath(resolvedDirectory) {
|
|
18
|
+
return path.join(".", "src", "versioned_docs", resolvedDirectory.leafName());
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=versioned-build-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"versioned-build-context.js","sourceRoot":"","sources":["../../src/types/versioned-build-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAGhE,MAAM,OAAO,qBAAqB;IAIhC,YAAY,cAA6B;QAHxB,gBAAW,GAAG,IAAI,WAAW,EAAE,CAAC;QAI/C,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAChE,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjE,CAAC;IAEM,KAAK,CAAC,yBAAyB;QACpC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACrF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAEM,eAAe,CAAC,iBAAgC;QACrD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/E,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apimatic/cli",
|
|
3
3
|
"description": "The official CLI for APIMatic.",
|
|
4
|
-
"version": "1.1.0-beta.
|
|
4
|
+
"version": "1.1.0-beta.7",
|
|
5
5
|
"author": "APIMatic",
|
|
6
6
|
"bin": {
|
|
7
7
|
"apimatic": "./bin/run.js"
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"test": "tsx node_modules/mocha/bin/_mocha --forbid-only \"test/**/*.test.ts\" --timeout 99999"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@apimatic/sdk": "^0.2.0-alpha.
|
|
50
|
+
"@apimatic/sdk": "^0.2.0-alpha.7",
|
|
51
51
|
"@clack/prompts": "1.0.0-alpha.1",
|
|
52
52
|
"@oclif/core": "^4.2.8",
|
|
53
53
|
"@oclif/plugin-autocomplete": "^3.2.24",
|