api 7.0.0-beta.2 → 7.0.0-beta.3
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/codegen/codegenerator.d.ts +5 -0
- package/dist/codegen/codegenerator.d.ts.map +1 -1
- package/dist/codegen/codegenerator.js +37 -0
- package/dist/codegen/codegenerator.js.map +1 -1
- package/dist/codegen/languages/typescript/index.d.ts +25 -4
- package/dist/codegen/languages/typescript/index.d.ts.map +1 -1
- package/dist/codegen/languages/typescript/index.js +121 -4
- package/dist/codegen/languages/typescript/index.js.map +1 -1
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +62 -37
- package/dist/commands/install.js.map +1 -1
- package/dist/lib/suggestedOperations.d.ts +31 -0
- package/dist/lib/suggestedOperations.d.ts.map +1 -0
- package/dist/lib/suggestedOperations.js +106 -0
- package/dist/lib/suggestedOperations.js.map +1 -0
- package/dist/lockfileSchema.d.ts +1 -1
- package/dist/lockfileSchema.d.ts.map +1 -1
- package/dist/packageInfo.d.ts +1 -1
- package/dist/packageInfo.js +1 -1
- package/dist/storage.d.ts +2 -0
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +11 -3
- package/dist/storage.js.map +1 -1
- package/package.json +8 -4
|
@@ -6,6 +6,11 @@ export default abstract class CodeGenerator {
|
|
|
6
6
|
specPath: string;
|
|
7
7
|
identifier: string;
|
|
8
8
|
userAgent: string;
|
|
9
|
+
spdxLicense?: string;
|
|
10
|
+
apiContact: {
|
|
11
|
+
name?: string;
|
|
12
|
+
url?: string;
|
|
13
|
+
};
|
|
9
14
|
requiredPackages: Record<string, {
|
|
10
15
|
dependencyType: 'production' | 'development';
|
|
11
16
|
reason: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codegenerator.d.ts","sourceRoot":"","sources":["../../src/codegen/codegenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"codegenerator.d.ts","sourceRoot":"","sources":["../../src/codegen/codegenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAO3B,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,aAAa;IACzC,IAAI,EAAE,GAAG,CAAC;IAEV,QAAQ,EAAE,MAAM,CAAC;IAEjB,UAAU,EAAE,MAAM,CAAC;IAEnB,SAAS,EAAE,MAAM,CAAC;IAElB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,UAAU,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAM;IAEjD,gBAAgB,EAAG,MAAM,CACvB,MAAM,EACN;QACE,cAAc,EAAE,YAAY,GAAG,aAAa,CAAC;QAC7C,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CACF,CAAC;gBAEU,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAgE3D,QAAQ,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEpD,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1E;;;;;;OAMG;WAEU,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhF,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1E,mBAAmB;CAGpB"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
import { findLicense } from 'license';
|
|
1
2
|
import { PACKAGE_NAME, PACKAGE_VERSION } from '../packageInfo.js';
|
|
2
3
|
export default class CodeGenerator {
|
|
3
4
|
spec;
|
|
4
5
|
specPath;
|
|
5
6
|
identifier;
|
|
6
7
|
userAgent;
|
|
8
|
+
spdxLicense;
|
|
9
|
+
apiContact = {};
|
|
7
10
|
requiredPackages;
|
|
8
11
|
constructor(spec, specPath, identifier) {
|
|
9
12
|
this.spec = spec;
|
|
@@ -27,6 +30,40 @@ export default class CodeGenerator {
|
|
|
27
30
|
if (JSON.stringify(spec.api).includes('"$ref":"#/')) {
|
|
28
31
|
throw new Error('Sorry, this library does not yet support generating an SDK for an OpenAPI definition that contains circular references.');
|
|
29
32
|
}
|
|
33
|
+
const infoObject = this.spec.api.info;
|
|
34
|
+
if (infoObject?.license?.name || infoObject?.license?.identifier) {
|
|
35
|
+
let spdxLicense;
|
|
36
|
+
if (infoObject?.license?.identifier) {
|
|
37
|
+
spdxLicense = infoObject?.license?.identifier;
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
// Though `name` is required by the OpenAPI specification but most people seem to use `name`
|
|
41
|
+
// instead `identifier` for their licensing identifier so if they've done this we should
|
|
42
|
+
// try to make the license name recognizable by the `license` package. For example this'll
|
|
43
|
+
// change "Apache 2.0" to the SPDX-recognized "Apache-2.0".
|
|
44
|
+
spdxLicense = infoObject?.license?.name.replace(/ /g, '-');
|
|
45
|
+
}
|
|
46
|
+
// If the license they've got has too many matches we shouldn't try to pick a license because
|
|
47
|
+
// we'll run the risk of licensing it under a license they didn't intend.
|
|
48
|
+
if (findLicense(spdxLicense).length === 1) {
|
|
49
|
+
this.spdxLicense = spdxLicense;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
if (infoObject?.contact) {
|
|
53
|
+
if (infoObject.contact?.name || infoObject.contact?.email) {
|
|
54
|
+
if (infoObject.contact?.name && infoObject.contact?.email) {
|
|
55
|
+
this.apiContact.name = `${infoObject.contact.name} <${infoObject.contact.email}>`;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
this.apiContact.name = infoObject.contact.email
|
|
59
|
+
? `<${infoObject.contact.email}>`
|
|
60
|
+
: infoObject.contact.name ?? undefined;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
if (infoObject.contact?.url) {
|
|
64
|
+
this.apiContact.url = infoObject.contact.url;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
30
67
|
}
|
|
31
68
|
/**
|
|
32
69
|
* It would be better if this were an abstract function but TS/JS doesn't have support for that so
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codegenerator.js","sourceRoot":"","sources":["../../src/codegen/codegenerator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"codegenerator.js","sourceRoot":"","sources":["../../src/codegen/codegenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { InstallerOptions } from '../../factory.js';
|
|
2
2
|
import type Oas from 'oas';
|
|
3
|
-
import type { ClassDeclaration } from 'ts-morph';
|
|
3
|
+
import type { ClassDeclaration, SourceFile } from 'ts-morph';
|
|
4
4
|
import { Project } from 'ts-morph';
|
|
5
5
|
import Storage from '../../../storage.js';
|
|
6
6
|
import CodeGenerator from '../../codegenerator.js';
|
|
@@ -35,21 +35,42 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
35
35
|
*
|
|
36
36
|
*/
|
|
37
37
|
private createSDKSource;
|
|
38
|
+
/**
|
|
39
|
+
* Create an IIFE export of our SDK in the SDK source file so users can do
|
|
40
|
+
* `import sdk from '<package>'` and have a ready-to-go instance of their SDK -- eliminating them
|
|
41
|
+
* having to create an instance with `new SDK()`.
|
|
42
|
+
*
|
|
43
|
+
* This will also fill our a JSDoc heading on the IIFE we're creating based on various pieces of
|
|
44
|
+
* data that may be present in the OpenAPI definition `info` object.
|
|
45
|
+
*
|
|
46
|
+
* Additionally if a license in `info.license` is recognized by the SPDX we'll also create a
|
|
47
|
+
* `LICENSE` file in for their generated SDK. We're only supporting SPDX-recognized licenses for
|
|
48
|
+
* this because we otherwise have no idea what the license represents and we should be extremely
|
|
49
|
+
* cautious around assuming intent with software licensing.
|
|
50
|
+
*
|
|
51
|
+
* @see {@link https://spdx.org/licenses/}
|
|
52
|
+
*/
|
|
53
|
+
createSDKExport(sourceFile: SourceFile): SourceFile;
|
|
54
|
+
/**
|
|
55
|
+
* Creates a `.gitignore` file to prevent the `dist/` directory from being tracked.
|
|
56
|
+
*
|
|
57
|
+
*/
|
|
58
|
+
createGitIgnore(): SourceFile;
|
|
38
59
|
/**
|
|
39
60
|
* Create the `tsconfig.json` file that will allow this SDK to be compiled for use.
|
|
40
61
|
*
|
|
41
62
|
*/
|
|
42
|
-
createTSConfig():
|
|
63
|
+
createTSConfig(): SourceFile;
|
|
43
64
|
/**
|
|
44
65
|
* Create the `package.json` file that will ultimately make this SDK available to use.
|
|
45
66
|
*
|
|
46
67
|
*/
|
|
47
|
-
createPackageJSON():
|
|
68
|
+
createPackageJSON(): SourceFile;
|
|
48
69
|
/**
|
|
49
70
|
* Create a placeholder `README.md` file in the repository, with information on how to use/administer the SDK.
|
|
50
71
|
*
|
|
51
72
|
*/
|
|
52
|
-
createREADME():
|
|
73
|
+
createREADME(): SourceFile;
|
|
53
74
|
/**
|
|
54
75
|
* Create our main schemas file. This is where all of the JSON Schema that our TypeScript typing
|
|
55
76
|
* infrastructure sources its data from. Without this there are no types.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAK3B,OAAO,KAAK,EACV,gBAAgB,EAMhB,UAAU,EACX,MAAM,UAAU,CAAC;AAWlB,OAAO,EAAmB,OAAO,EAAoD,MAAM,UAAU,CAAC;AAItG,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,aAAa,MAAM,wBAAwB,CAAC;AAiCnD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,aAAa;;IACpD,OAAO,EAAE,OAAO,CAAC;IAEjB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE3B,GAAG,EAAG,gBAAgB,CAAC;IAEvB,OAAO,EAAE,MAAM,CACb,MAAM,EAEJ;QACE,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAED,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC1B,CAAC;IAEF,4BAA4B,UAAS;gBAEzB,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAuDrD,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;WAoC9D,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBpF;;;OAGG;IAEG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB3E;;;OAGG;IACG,QAAQ;;;IAsDd;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgIvB;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,UAAU,EAAE,UAAU;IA4GtC;;;OAGG;IACH,eAAe;IAYf;;;OAGG;IACH,cAAc;IAmBd;;;OAGG;IACH,iBAAiB;IA8EjB;;;OAGG;IACH,YAAY;IAyBZ;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgEzB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAevB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAuM/B;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAoChC;;;;OAIG;IACH,OAAO,CAAC,iCAAiC;IAiDzC;;;OAGG;IACH,OAAO,CAAC,gCAAgC;IAiExC;;;OAGG;IACH,OAAO,CAAC,iBAAiB;CAsB1B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
2
|
import corePkg from '@readme/api-core/package.json' assert { type: 'json' };
|
|
3
3
|
import { execa } from 'execa';
|
|
4
|
+
import { getLicense } from 'license';
|
|
4
5
|
import setWith from 'lodash.setwith';
|
|
5
6
|
import semver from 'semver';
|
|
6
7
|
import { IndentationText, Project, QuoteKind, ScriptTarget, VariableDeclarationKind } from 'ts-morph';
|
|
@@ -52,6 +53,12 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
52
53
|
url: 'https://tsup.egoist.dev/',
|
|
53
54
|
version: '^7.2.0',
|
|
54
55
|
},
|
|
56
|
+
'json-schema-to-ts': {
|
|
57
|
+
dependencyType: 'production',
|
|
58
|
+
reason: 'Required for TypeScript type handling.',
|
|
59
|
+
url: 'https://npm.im/json-schema-to-ts',
|
|
60
|
+
version: '^2.9.2',
|
|
61
|
+
},
|
|
55
62
|
typescript: {
|
|
56
63
|
dependencyType: 'development',
|
|
57
64
|
reason: 'Required for `tsup`.',
|
|
@@ -148,6 +155,7 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
148
155
|
async generate() {
|
|
149
156
|
const srcDirectory = this.project.createDirectory('src');
|
|
150
157
|
const sdkSource = this.createSDKSource(srcDirectory);
|
|
158
|
+
this.createGitIgnore();
|
|
151
159
|
this.createPackageJSON();
|
|
152
160
|
this.createTSConfig();
|
|
153
161
|
this.createREADME();
|
|
@@ -211,7 +219,6 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
211
219
|
{ defaultImport: 'APICore', moduleSpecifier: '@readme/api-core' },
|
|
212
220
|
{ defaultImport: 'definition', moduleSpecifier: this.specPath },
|
|
213
221
|
]);
|
|
214
|
-
// @todo add TOS, License, info.* to a docblock at the top of the SDK.
|
|
215
222
|
this.sdk = sourceFile.addClass({
|
|
216
223
|
name: 'SDK',
|
|
217
224
|
properties: [{ name: 'core', type: 'APICore' }],
|
|
@@ -305,9 +312,98 @@ sdk.server('https://eu.api.example.com/v14');`)),
|
|
|
305
312
|
Object.entries(operations).forEach(([operationId, data]) => {
|
|
306
313
|
this.createOperationAccessor(data.operation, operationId, data.types.params, data.types.responses);
|
|
307
314
|
});
|
|
308
|
-
|
|
315
|
+
this.createSDKExport(sourceFile);
|
|
316
|
+
return sourceFile;
|
|
317
|
+
}
|
|
318
|
+
/**
|
|
319
|
+
* Create an IIFE export of our SDK in the SDK source file so users can do
|
|
320
|
+
* `import sdk from '<package>'` and have a ready-to-go instance of their SDK -- eliminating them
|
|
321
|
+
* having to create an instance with `new SDK()`.
|
|
322
|
+
*
|
|
323
|
+
* This will also fill our a JSDoc heading on the IIFE we're creating based on various pieces of
|
|
324
|
+
* data that may be present in the OpenAPI definition `info` object.
|
|
325
|
+
*
|
|
326
|
+
* Additionally if a license in `info.license` is recognized by the SPDX we'll also create a
|
|
327
|
+
* `LICENSE` file in for their generated SDK. We're only supporting SPDX-recognized licenses for
|
|
328
|
+
* this because we otherwise have no idea what the license represents and we should be extremely
|
|
329
|
+
* cautious around assuming intent with software licensing.
|
|
330
|
+
*
|
|
331
|
+
* @see {@link https://spdx.org/licenses/}
|
|
332
|
+
*/
|
|
333
|
+
createSDKExport(sourceFile) {
|
|
334
|
+
let docblock = {};
|
|
335
|
+
// The OpenAPI 3.1 `info` object added some properties that aren't available in 3.0 but 3.1
|
|
336
|
+
// still contains everything that was available in 3.0 so to allow us to not have to do gross
|
|
337
|
+
// `as OpenAPIV3_1.InfoObject` typing everywhere we're just assuming that we have 3.1 object
|
|
338
|
+
// here.
|
|
339
|
+
const infoObject = this.spec.api.info;
|
|
340
|
+
if (infoObject?.title || infoObject?.description) {
|
|
341
|
+
docblock.description = writer => {
|
|
342
|
+
if (infoObject.title) {
|
|
343
|
+
writer.writeLine(docblockEscape(wordWrap(infoObject.title)));
|
|
344
|
+
}
|
|
345
|
+
if (infoObject.description) {
|
|
346
|
+
writer.conditionalNewLine(!!infoObject.title);
|
|
347
|
+
writer.writeLine(docblockEscape(wordWrap(infoObject.description)));
|
|
348
|
+
}
|
|
349
|
+
writer.newLineIfLastNot();
|
|
350
|
+
return writer;
|
|
351
|
+
};
|
|
352
|
+
}
|
|
353
|
+
if (this.apiContact.name) {
|
|
354
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
355
|
+
tagName: 'author',
|
|
356
|
+
text: this.apiContact.name,
|
|
357
|
+
});
|
|
358
|
+
}
|
|
359
|
+
if (this.apiContact.url) {
|
|
360
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
361
|
+
tagName: 'see',
|
|
362
|
+
text: `{@link ${this.apiContact.url}}`,
|
|
363
|
+
});
|
|
364
|
+
}
|
|
365
|
+
if (infoObject?.termsOfService) {
|
|
366
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
367
|
+
tagName: 'see',
|
|
368
|
+
text: `{@link ${infoObject.termsOfService} Terms of Service}`,
|
|
369
|
+
});
|
|
370
|
+
}
|
|
371
|
+
if (this.spdxLicense) {
|
|
372
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
373
|
+
tagName: 'license',
|
|
374
|
+
text: this.spdxLicense,
|
|
375
|
+
});
|
|
376
|
+
// Some licenses like `Apache-2.0` have the year as `[yyyy]` but the `license` package only
|
|
377
|
+
// supports templating on `<templatekey>` so we need to fix this ourselves.
|
|
378
|
+
// https://github.com/Ovyerus/license/issues/12
|
|
379
|
+
const year = new Date().getFullYear().toString();
|
|
380
|
+
const license = getLicense(this.spdxLicense, {
|
|
381
|
+
year,
|
|
382
|
+
// `license` doesn't support empty strings so we need to fake it here
|
|
383
|
+
author: this.apiContact.name ?? ' ',
|
|
384
|
+
})
|
|
385
|
+
.replace(/<yyyy>/g, year)
|
|
386
|
+
.replace(/\[yyyy\]/g, year);
|
|
387
|
+
this.project.createSourceFile('LICENSE', license);
|
|
388
|
+
}
|
|
389
|
+
else if (infoObject?.license) {
|
|
390
|
+
// If they have a license but it's not recognized by the SPDX we should still surface it.
|
|
391
|
+
if (infoObject?.license?.name) {
|
|
392
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
393
|
+
tagName: 'license',
|
|
394
|
+
text: infoObject.license.name,
|
|
395
|
+
});
|
|
396
|
+
}
|
|
397
|
+
if (infoObject.license?.url) {
|
|
398
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
399
|
+
tagName: 'see',
|
|
400
|
+
text: `{@link ${infoObject.license.url}}`,
|
|
401
|
+
});
|
|
402
|
+
}
|
|
403
|
+
}
|
|
309
404
|
sourceFile.addVariableStatement({
|
|
310
405
|
declarationKind: VariableDeclarationKind.Const,
|
|
406
|
+
docs: Object.keys(docblock).length ? [docblock] : [],
|
|
311
407
|
declarations: [
|
|
312
408
|
{
|
|
313
409
|
name: 'createSDK',
|
|
@@ -329,6 +425,19 @@ sdk.server('https://eu.api.example.com/v14');`)),
|
|
|
329
425
|
});
|
|
330
426
|
return sourceFile;
|
|
331
427
|
}
|
|
428
|
+
/**
|
|
429
|
+
* Creates a `.gitignore` file to prevent the `dist/` directory from being tracked.
|
|
430
|
+
*
|
|
431
|
+
*/
|
|
432
|
+
createGitIgnore() {
|
|
433
|
+
const file = `# This file prevents the \`dist/\` directory from being tracked via git.
|
|
434
|
+
# This is recommended since the \`prepare\` npm script automatically
|
|
435
|
+
# regenerates the contents of the \`dist/\` directory as needed.
|
|
436
|
+
dist/
|
|
437
|
+
`;
|
|
438
|
+
const sourceFile = this.project.createSourceFile('.gitignore', file);
|
|
439
|
+
return sourceFile;
|
|
440
|
+
}
|
|
332
441
|
/**
|
|
333
442
|
* Create the `tsconfig.json` file that will allow this SDK to be compiled for use.
|
|
334
443
|
*
|
|
@@ -337,8 +446,11 @@ sdk.server('https://eu.api.example.com/v14');`)),
|
|
|
337
446
|
const sourceFile = this.project.createSourceFile('tsconfig.json', '');
|
|
338
447
|
const config = {
|
|
339
448
|
compilerOptions: {
|
|
340
|
-
|
|
449
|
+
esModuleInterop: true,
|
|
450
|
+
module: 'ESNext',
|
|
451
|
+
moduleResolution: 'Bundler',
|
|
341
452
|
resolveJsonModule: true,
|
|
453
|
+
strict: true,
|
|
342
454
|
},
|
|
343
455
|
include: ['./src/**/*'],
|
|
344
456
|
};
|
|
@@ -401,14 +513,19 @@ sdk.server('https://eu.api.example.com/v14');`)),
|
|
|
401
513
|
}
|
|
402
514
|
: {}),
|
|
403
515
|
},
|
|
516
|
+
license: this.spdxLicense ?? '',
|
|
404
517
|
files: ['dist', 'openapi.json'],
|
|
405
518
|
scripts: {
|
|
519
|
+
lint: 'tsc --noEmit',
|
|
406
520
|
prepare: 'tsup',
|
|
407
521
|
},
|
|
408
522
|
dependencies,
|
|
409
523
|
devDependencies,
|
|
410
524
|
tsup: tsupOptions,
|
|
411
525
|
};
|
|
526
|
+
if (!this.spdxLicense) {
|
|
527
|
+
delete pkg.license;
|
|
528
|
+
}
|
|
412
529
|
sourceFile.addStatements(JSON.stringify(pkg, null, 2));
|
|
413
530
|
return sourceFile;
|
|
414
531
|
}
|
|
@@ -506,7 +623,7 @@ Generated at ${createdAt}
|
|
|
506
623
|
createTypesFile(sourceDirectory) {
|
|
507
624
|
const sourceFile = sourceDirectory.createSourceFile('types.ts', '');
|
|
508
625
|
sourceFile.addImportDeclarations([
|
|
509
|
-
{ defaultImport: 'type { FromSchema }', moduleSpecifier: '
|
|
626
|
+
{ defaultImport: 'type { FromSchema }', moduleSpecifier: 'json-schema-to-ts' },
|
|
510
627
|
{ defaultImport: '* as schemas', moduleSpecifier: './schemas' },
|
|
511
628
|
]);
|
|
512
629
|
Array.from(new Map(Array.from(this.types.entries()).sort())).forEach(([typeName, typeExpression]) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AA+E5C,QAAA,MAAM,GAAG,SAAgB,CAAC;AA4J1B,eAAe,GAAG,CAAC"}
|
package/dist/commands/install.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
1
2
|
import { Command, Option } from 'commander';
|
|
2
3
|
import figures from 'figures';
|
|
3
4
|
import Oas from 'oas';
|
|
@@ -6,18 +7,10 @@ import uslug from 'uslug';
|
|
|
6
7
|
import { SupportedLanguages, codegenFactory } from '../codegen/factory.js';
|
|
7
8
|
import Fetcher from '../fetcher.js';
|
|
8
9
|
import promptTerminal from '../lib/prompt.js';
|
|
10
|
+
import { buildCodeSnippetForOperation, getSuggestedOperation } from '../lib/suggestedOperations.js';
|
|
9
11
|
import logger from '../logger.js';
|
|
10
12
|
import Storage from '../storage.js';
|
|
11
|
-
|
|
12
|
-
const cmd = new Command();
|
|
13
|
-
cmd
|
|
14
|
-
.name('install')
|
|
15
|
-
.description('install an API SDK into your codebase')
|
|
16
|
-
.argument('<uri>', 'an API to install')
|
|
17
|
-
.option('-i, --identifier <identifier>', 'API identifier (eg. `@api/petstore`)')
|
|
18
|
-
.addOption(new Option('-l, --lang <language>', 'SDK language').default(SupportedLanguages.JS).choices([SupportedLanguages.JS]))
|
|
19
|
-
.addOption(new Option('-y, --yes', 'Automatically answer "yes" to any prompts printed'))
|
|
20
|
-
.action(async (uri, options) => {
|
|
13
|
+
async function getLanguage(options) {
|
|
21
14
|
let language;
|
|
22
15
|
if (options.lang) {
|
|
23
16
|
language = options.lang;
|
|
@@ -31,32 +24,9 @@ cmd
|
|
|
31
24
|
initial: 1,
|
|
32
25
|
}));
|
|
33
26
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
if (Storage.isInLockFile({ source: uri })) {
|
|
38
|
-
// @todo
|
|
39
|
-
// logger(`It looks like you already have this API installed. Would you like to update it?`);
|
|
40
|
-
}
|
|
41
|
-
let spinner = ora('Fetching your API definition').start();
|
|
42
|
-
const storage = new Storage(uri, language);
|
|
43
|
-
const oas = await storage
|
|
44
|
-
.load(false)
|
|
45
|
-
.then(res => {
|
|
46
|
-
spinner.succeed(spinner.text);
|
|
47
|
-
return res;
|
|
48
|
-
})
|
|
49
|
-
.then(Oas.init)
|
|
50
|
-
.then(async (spec) => {
|
|
51
|
-
await spec.dereference({ preserveRefAsJSONSchemaTitle: true });
|
|
52
|
-
return spec;
|
|
53
|
-
})
|
|
54
|
-
.catch(err => {
|
|
55
|
-
// @todo cleanup installed files
|
|
56
|
-
spinner.fail(spinner.text);
|
|
57
|
-
logger(err.message, true);
|
|
58
|
-
process.exit(1);
|
|
59
|
-
});
|
|
27
|
+
return language;
|
|
28
|
+
}
|
|
29
|
+
async function getIdentifier(oas, uri, options) {
|
|
60
30
|
let identifier;
|
|
61
31
|
if (options.identifier) {
|
|
62
32
|
// `Storage.isIdentifierValid` will throw an exception if an identifier is invalid.
|
|
@@ -86,6 +56,53 @@ cmd
|
|
|
86
56
|
},
|
|
87
57
|
}));
|
|
88
58
|
}
|
|
59
|
+
return identifier;
|
|
60
|
+
}
|
|
61
|
+
async function getExampleCodeSnippet(oas, identifier) {
|
|
62
|
+
const operation = getSuggestedOperation(oas);
|
|
63
|
+
if (!operation) {
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
return buildCodeSnippetForOperation(oas, operation, { identifier });
|
|
67
|
+
}
|
|
68
|
+
// @todo log logs to `.api/.logs` and have `.logs` ignored
|
|
69
|
+
const cmd = new Command();
|
|
70
|
+
cmd
|
|
71
|
+
.name('install')
|
|
72
|
+
.description('install an API SDK into your codebase')
|
|
73
|
+
.argument('<uri>', 'an API to install')
|
|
74
|
+
.option('-i, --identifier <identifier>', 'API identifier (eg. `@api/petstore`)')
|
|
75
|
+
.addOption(new Option('-l, --lang <language>', 'SDK language').default(SupportedLanguages.JS).choices([SupportedLanguages.JS]))
|
|
76
|
+
.addOption(new Option('-y, --yes', 'Automatically answer "yes" to any prompts printed'))
|
|
77
|
+
.action(async (uri, options) => {
|
|
78
|
+
const language = await getLanguage(options);
|
|
79
|
+
// @todo let them know that we're going to be creating a `.api/ directory
|
|
80
|
+
// @todo detect if they have a gitigore and .npmignore and if .api woudl be ignored by that
|
|
81
|
+
// @todo don't support swagger files without upconverting them
|
|
82
|
+
if (Storage.isInLockFile({ source: uri })) {
|
|
83
|
+
// @todo
|
|
84
|
+
// logger(`It looks like you already have this API installed. Would you like to update it?`);
|
|
85
|
+
}
|
|
86
|
+
let spinner = ora('Fetching your API definition').start();
|
|
87
|
+
const storage = new Storage(uri, language);
|
|
88
|
+
const oas = await storage
|
|
89
|
+
.load(false)
|
|
90
|
+
.then(res => {
|
|
91
|
+
spinner.succeed(spinner.text);
|
|
92
|
+
return res;
|
|
93
|
+
})
|
|
94
|
+
.then(Oas.init)
|
|
95
|
+
.then(async (spec) => {
|
|
96
|
+
await spec.dereference({ preserveRefAsJSONSchemaTitle: true });
|
|
97
|
+
return spec;
|
|
98
|
+
})
|
|
99
|
+
.catch(err => {
|
|
100
|
+
// @todo cleanup installed files
|
|
101
|
+
spinner.fail(spinner.text);
|
|
102
|
+
logger(err.message, true);
|
|
103
|
+
process.exit(1);
|
|
104
|
+
});
|
|
105
|
+
const identifier = await getIdentifier(oas, uri, options);
|
|
89
106
|
if (!identifier) {
|
|
90
107
|
logger('You must tell us what you would like to identify this API as in order to install it.', true);
|
|
91
108
|
process.exit(1);
|
|
@@ -167,7 +184,15 @@ cmd
|
|
|
167
184
|
logger(err.message, true);
|
|
168
185
|
process.exit(1);
|
|
169
186
|
}
|
|
170
|
-
logger('
|
|
187
|
+
logger('');
|
|
188
|
+
logger(`🚀 All done! Your SDK is now available to use locally via the ${chalk.yellow(storage.getPackageName())} package.`);
|
|
189
|
+
const exampleSnippet = await getExampleCodeSnippet(oas, identifier);
|
|
190
|
+
if (exampleSnippet) {
|
|
191
|
+
logger('');
|
|
192
|
+
logger("Here's an example code snippet you can try out:");
|
|
193
|
+
logger('');
|
|
194
|
+
logger(chalk.green(exampleSnippet));
|
|
195
|
+
}
|
|
171
196
|
})
|
|
172
197
|
.addHelpText('after', `
|
|
173
198
|
Examples:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,OAAO,MAAM,eAAe,CAAC;AACpC,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,MAAM,MAAM,cAAc,CAAC;AAClC,OAAO,OAAO,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type Oas from 'oas';
|
|
2
|
+
import type Operation from 'oas/operation';
|
|
3
|
+
/**
|
|
4
|
+
* Return a list of suggested and "good first issue" types of endpoints that we can build a post-SDK
|
|
5
|
+
* code generation code snippet around to demo the power of `api`.
|
|
6
|
+
*
|
|
7
|
+
* The criteria for a suggested endpoint are the following:
|
|
8
|
+
* - GET request
|
|
9
|
+
* - Has no required query or body parameters
|
|
10
|
+
* - Endpoint has not been deprecated
|
|
11
|
+
*
|
|
12
|
+
* @param oas
|
|
13
|
+
*/
|
|
14
|
+
export declare function getSuggestedOperation(oas: Oas): false | Operation;
|
|
15
|
+
/**
|
|
16
|
+
* Generate an example code snippet for a given (suggested) operation. We'll show this to users
|
|
17
|
+
* post-codegeneration so they can see how to use the SDK we created for them.
|
|
18
|
+
*
|
|
19
|
+
* We're intentionally using `httpsnippet-client-api` and not `@readme/oas-to-snippet` here,
|
|
20
|
+
* which would handle HAR and snippet generation, because don't need the entire `oas-to-snippet`
|
|
21
|
+
* and `@readme/httpsnippet` libraries for what we're doing here.
|
|
22
|
+
*
|
|
23
|
+
* All we want to do is generate a very simple code example for `api` snippets and as we're
|
|
24
|
+
* controlling which kinds of endpoints we're generating these for the HAR dataset we're working
|
|
25
|
+
* with is a mostly fully known object.
|
|
26
|
+
*
|
|
27
|
+
*/
|
|
28
|
+
export declare function buildCodeSnippetForOperation(oas: Oas, operation: Operation, opts: {
|
|
29
|
+
identifier: string;
|
|
30
|
+
}): Promise<string | false>;
|
|
31
|
+
//# sourceMappingURL=suggestedOperations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suggestedOperations.d.ts","sourceRoot":"","sources":["../../src/lib/suggestedOperations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,SAAS,MAAM,eAAe,CAAC;AAM3C;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,qBAgC7C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,4BAA4B,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,2BAyD9G"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import APICore from '@readme/api-core';
|
|
2
|
+
import client from 'httpsnippet-client-api';
|
|
3
|
+
import { Webhook } from 'oas/operation';
|
|
4
|
+
/**
|
|
5
|
+
* Return a list of suggested and "good first issue" types of endpoints that we can build a post-SDK
|
|
6
|
+
* code generation code snippet around to demo the power of `api`.
|
|
7
|
+
*
|
|
8
|
+
* The criteria for a suggested endpoint are the following:
|
|
9
|
+
* - GET request
|
|
10
|
+
* - Has no required query or body parameters
|
|
11
|
+
* - Endpoint has not been deprecated
|
|
12
|
+
*
|
|
13
|
+
* @param oas
|
|
14
|
+
*/
|
|
15
|
+
export function getSuggestedOperation(oas) {
|
|
16
|
+
const suggested = [];
|
|
17
|
+
Object.values(oas.getPaths()).forEach(path => {
|
|
18
|
+
Object.values(path).forEach(operation => {
|
|
19
|
+
// We don't really support webhooks with this library so if this operation is one we shouldn't
|
|
20
|
+
// return it as a recommended operation.
|
|
21
|
+
if (operation instanceof Webhook) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
if (operation.isDeprecated()) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
if (operation.method.toLowerCase() === 'get') {
|
|
28
|
+
const hasRequiredParameters = operation.hasRequiredParameters();
|
|
29
|
+
const hasRequiredRequestBody = operation.hasRequiredRequestBody();
|
|
30
|
+
// If the criteria matches, push it into a recommended array
|
|
31
|
+
if (!hasRequiredParameters && !hasRequiredRequestBody) {
|
|
32
|
+
suggested.push(operation);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
if (suggested.length) {
|
|
38
|
+
return suggested[0];
|
|
39
|
+
}
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Generate an example code snippet for a given (suggested) operation. We'll show this to users
|
|
44
|
+
* post-codegeneration so they can see how to use the SDK we created for them.
|
|
45
|
+
*
|
|
46
|
+
* We're intentionally using `httpsnippet-client-api` and not `@readme/oas-to-snippet` here,
|
|
47
|
+
* which would handle HAR and snippet generation, because don't need the entire `oas-to-snippet`
|
|
48
|
+
* and `@readme/httpsnippet` libraries for what we're doing here.
|
|
49
|
+
*
|
|
50
|
+
* All we want to do is generate a very simple code example for `api` snippets and as we're
|
|
51
|
+
* controlling which kinds of endpoints we're generating these for the HAR dataset we're working
|
|
52
|
+
* with is a mostly fully known object.
|
|
53
|
+
*
|
|
54
|
+
*/
|
|
55
|
+
export async function buildCodeSnippetForOperation(oas, operation, opts) {
|
|
56
|
+
const core = new APICore();
|
|
57
|
+
core.setSpec(oas);
|
|
58
|
+
// If this endpoint has authentication on it then we should try to flesh out some placeholder
|
|
59
|
+
// values in the `.auth()` SDK method for them so they can see how to use auth.
|
|
60
|
+
let auth = {};
|
|
61
|
+
const hasAuth = !!operation.getSecurity()?.length;
|
|
62
|
+
if (hasAuth) {
|
|
63
|
+
operation.getSecurityWithTypes().forEach(schemes => {
|
|
64
|
+
if (!schemes)
|
|
65
|
+
return;
|
|
66
|
+
schemes.filter(Boolean).forEach(scheme => {
|
|
67
|
+
if (!scheme)
|
|
68
|
+
return;
|
|
69
|
+
// eslint-disable-next-line no-underscore-dangle
|
|
70
|
+
const schemeName = scheme.security._key;
|
|
71
|
+
if (scheme?.type === 'Basic') {
|
|
72
|
+
auth[schemeName] = { user: 'username', pass: 'password' };
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
auth[schemeName] = 'token';
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
auth = oas.getAuth(auth);
|
|
80
|
+
}
|
|
81
|
+
const har = core.getHARForRequest(operation, {}, auth)?.log?.entries?.[0]?.request;
|
|
82
|
+
if (!har) {
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
const snippet = client.convert({
|
|
86
|
+
...har,
|
|
87
|
+
cookiesObj: har.cookies.reduce((acc, { name, value }) => ({ ...acc, [name]: value }), {}),
|
|
88
|
+
fullUrl: har.url,
|
|
89
|
+
headersObj: har.headers.reduce((acc, { name, value }) => ({ ...acc, [name]: value }), {}),
|
|
90
|
+
postData: {
|
|
91
|
+
mimeType: 'application/json',
|
|
92
|
+
text: '',
|
|
93
|
+
},
|
|
94
|
+
queryObj: har.queryString.reduce((acc, { name, value }) => ({ ...acc, [name]: value }), {}),
|
|
95
|
+
url: har.url,
|
|
96
|
+
// These aren't used in `httpsnippet-client-api` so we don't need to bother hooking them up.
|
|
97
|
+
allHeaders: {},
|
|
98
|
+
uriObj: {},
|
|
99
|
+
}, {
|
|
100
|
+
apiDefinition: oas.getDefinition(),
|
|
101
|
+
apiDefinitionUri: opts.identifier,
|
|
102
|
+
identifier: opts.identifier,
|
|
103
|
+
});
|
|
104
|
+
return snippet;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=suggestedOperations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suggestedOperations.js","sourceRoot":"","sources":["../../src/lib/suggestedOperations.ts"],"names":[],"mappings":"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"}
|
package/dist/lockfileSchema.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lockfileSchema.d.ts","sourceRoot":"","sources":["../src/lockfileSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"lockfileSchema.d.ts","sourceRoot":"","sources":["../src/lockfileSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIpD,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDb,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsBjB,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AACzD,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
|
package/dist/packageInfo.d.ts
CHANGED
package/dist/packageInfo.js
CHANGED
package/dist/storage.d.ts
CHANGED
|
@@ -33,6 +33,8 @@ export default class Storage {
|
|
|
33
33
|
* Reset the state of the entire storage system.
|
|
34
34
|
*
|
|
35
35
|
* This will completely destroy the contents of the `.api/` directory!
|
|
36
|
+
*
|
|
37
|
+
* @internal
|
|
36
38
|
*/
|
|
37
39
|
static reset(): Promise<void>;
|
|
38
40
|
static getDefaultLockfile(): Lockfile;
|
package/dist/storage.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAUnD,OAAO,OAAO,MAAM,cAAc,CAAC;AAGnC,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC;IAEnB,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,QAAQ,CAAC;IAElC,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;;;;OAOG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAqB;IAErC;;;;OAIG;IACH,UAAU,EAAG,MAAM,CAAC;gBAER,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,iBAAiB,EAAE,UAAU,CAAC,EAAE,MAAM;IAa7E,MAAM,CAAC,eAAe;IAItB,MAAM,CAAC,UAAU;IAIjB,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM;IAgBjC
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAUnD,OAAO,OAAO,MAAM,cAAc,CAAC;AAGnC,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC;IAEnB,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,QAAQ,CAAC;IAElC,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;;;;OAOG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAqB;IAErC;;;;OAIG;IACH,UAAU,EAAG,MAAM,CAAC;gBAER,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,iBAAiB,EAAE,UAAU,CAAC,EAAE,MAAM;IAa7E,MAAM,CAAC,eAAe;IAItB,MAAM,CAAC,UAAU;IAIjB,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM;IAgBjC;;;;;;OAMG;WACU,KAAK;IAkBlB,MAAM,CAAC,kBAAkB,IAAI,QAAQ;IASrC,MAAM,CAAC,qBAAqB,CAAC,UAAU,EAAE,WAAW;IAQpD,MAAM,CAAC,WAAW;;;;;;;;;;;;;IAelB,MAAM,CAAC,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,sBAAsB,CAAC,EAAE,OAAO;IAkB7E,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;IAyBpE,WAAW,CAAC,QAAQ,CAAC,EAAE,iBAAiB;IAWxC,aAAa,CAAC,UAAU,EAAE,MAAM;IAIhC;;OAEG;IACH,YAAY;IAIZ;;;OAGG;IACH,eAAe;;;;;;;;;;IAKf;;;OAGG;IACH,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM;;;;;;;;;;IAKzC,cAAc;IAQd,cAAc;IASd,uBAAuB;IAQvB,oBAAoB;IAIpB,gBAAgB;IAMhB,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IA4BvC,IAAI,CAAC,UAAU,GAAE,OAAc;IAUrC;;;;;;OAMG;IACH,IAAI,CAAC,IAAI,EAAE,WAAW;IAgDtB;;;OAGG;IACG,MAAM;CAkBb"}
|
package/dist/storage.js
CHANGED
|
@@ -64,14 +64,22 @@ export default class Storage {
|
|
|
64
64
|
* Reset the state of the entire storage system.
|
|
65
65
|
*
|
|
66
66
|
* This will completely destroy the contents of the `.api/` directory!
|
|
67
|
+
*
|
|
68
|
+
* @internal
|
|
67
69
|
*/
|
|
68
70
|
static async reset() {
|
|
71
|
+
const noop = () => {
|
|
72
|
+
// If any of these file and directory removals fail we don't need to throw any errors because
|
|
73
|
+
// this method is only used internally in unit tests.
|
|
74
|
+
};
|
|
69
75
|
if (Storage.getLockfilePath()) {
|
|
70
|
-
await fs.promises
|
|
76
|
+
await fs.promises
|
|
77
|
+
.writeFile(Storage.getLockfilePath(), JSON.stringify(Storage.getDefaultLockfile(), null, 2))
|
|
78
|
+
.catch(noop);
|
|
71
79
|
}
|
|
72
80
|
if (Storage.getAPIsDir()) {
|
|
73
|
-
await fs.promises.rm(Storage.getAPIsDir(), { recursive: true });
|
|
74
|
-
await fs.promises.mkdir(Storage.getAPIsDir(), { recursive: true });
|
|
81
|
+
await fs.promises.rm(Storage.getAPIsDir(), { recursive: true }).catch(noop);
|
|
82
|
+
await fs.promises.mkdir(Storage.getAPIsDir(), { recursive: true }).catch(noop);
|
|
75
83
|
}
|
|
76
84
|
}
|
|
77
85
|
static getDefaultLockfile() {
|
package/dist/storage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,sBAAsB,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,MAAM,CAAC,GAAG,CAAS;IAEnB,MAAM,CAAC,QAAQ,CAAmB;IAElC,OAAO,CAAU;IAEjB;;;;;;;OAOG;IACH,MAAM,CAAS;IAEf;;OAEG;IACK,QAAQ,CAAqB;IAErC;;;;OAIG;IACH,UAAU,CAAU;IAEpB,YAAY,MAAc,EAAE,QAA4B,EAAE,UAAmB;QAC3E,OAAO,CAAC,aAAa,EAAE,CAAC;QAExB,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;QAEnC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,QAAQ;YAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACvC,IAAI,UAAU;YAAE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE7C,yFAAyF;QACzF,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,UAAU;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,GAAY;QAC/B,IAAI,GAAG,EAAE;YACP,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC;YAClB,OAAO;SACR;aAAM,IAAI,OAAO,CAAC,GAAG,EAAE;YACtB,yFAAyF;YACzF,8CAA8C;YAC9C,OAAO;SACR;QAED,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;QAE/C,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "api",
|
|
3
|
-
"version": "7.0.0-beta.
|
|
3
|
+
"version": "7.0.0-beta.3",
|
|
4
4
|
"description": "Magical SDK generation from an OpenAPI definition 🪄",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -43,13 +43,16 @@
|
|
|
43
43
|
"swagger"
|
|
44
44
|
],
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@readme/api-core": "^7.0.0-beta.
|
|
46
|
+
"@readme/api-core": "^7.0.0-beta.3",
|
|
47
47
|
"@readme/openapi-parser": "^2.4.0",
|
|
48
48
|
"chalk": "^5.3.0",
|
|
49
49
|
"commander": "^11.1.0",
|
|
50
50
|
"execa": "^8.0.1",
|
|
51
51
|
"figures": "^5.0.0",
|
|
52
|
+
"httpsnippet-client-api": "^7.0.0-beta.3",
|
|
52
53
|
"js-yaml": "^4.1.0",
|
|
54
|
+
"json-schema-to-ts": "^2.9.2",
|
|
55
|
+
"license": "^1.0.3",
|
|
53
56
|
"lodash.camelcase": "^4.3.0",
|
|
54
57
|
"lodash.deburr": "^4.1.0",
|
|
55
58
|
"lodash.setwith": "^4.3.2",
|
|
@@ -64,7 +67,7 @@
|
|
|
64
67
|
"validate-npm-package-name": "^5.0.0"
|
|
65
68
|
},
|
|
66
69
|
"devDependencies": {
|
|
67
|
-
"@api/test-utils": "^7.0.0-beta.
|
|
70
|
+
"@api/test-utils": "^7.0.0-beta.3",
|
|
68
71
|
"@readme/oas-examples": "^5.12.0",
|
|
69
72
|
"@types/js-yaml": "^4.0.7",
|
|
70
73
|
"@types/lodash.camelcase": "^4.3.7",
|
|
@@ -81,6 +84,7 @@
|
|
|
81
84
|
"ajv-formats": "^2.1.1",
|
|
82
85
|
"fetch-mock": "^9.11.0",
|
|
83
86
|
"oas-normalize": "^11.0.1",
|
|
87
|
+
"openapi-types": "^12.1.3",
|
|
84
88
|
"tsup": "^7.2.0",
|
|
85
89
|
"type-fest": "^4.4.0",
|
|
86
90
|
"typescript": "^5.2.2",
|
|
@@ -88,5 +92,5 @@
|
|
|
88
92
|
"vitest": "^0.34.5"
|
|
89
93
|
},
|
|
90
94
|
"prettier": "@readme/eslint-config/prettier",
|
|
91
|
-
"gitHead": "
|
|
95
|
+
"gitHead": "9dbc86caab9ae4b49e7d0dac52ab6c25f5f46170"
|
|
92
96
|
}
|