api 7.0.0-beta.1 → 7.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -2
- package/dist/bin.js +8 -1
- package/dist/bin.js.map +1 -1
- package/dist/codegen/codegenerator.d.ts +36 -1
- package/dist/codegen/codegenerator.d.ts.map +1 -1
- package/dist/codegen/codegenerator.js +66 -0
- package/dist/codegen/codegenerator.js.map +1 -1
- package/dist/codegen/factory.js.map +1 -1
- package/dist/codegen/languages/typescript/index.d.ts +32 -4
- package/dist/codegen/languages/typescript/index.d.ts.map +1 -1
- package/dist/codegen/languages/typescript/index.js +221 -61
- package/dist/codegen/languages/typescript/index.js.map +1 -1
- package/dist/codegen/languages/typescript/util.d.ts.map +1 -1
- package/dist/codegen/languages/typescript/util.js +1 -3
- package/dist/codegen/languages/typescript/util.js.map +1 -1
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +67 -54
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/uninstall.d.ts.map +1 -1
- package/dist/commands/uninstall.js +7 -10
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/fetcher.d.ts +17 -17
- package/dist/fetcher.d.ts.map +1 -1
- package/dist/fetcher.js +7 -1
- package/dist/fetcher.js.map +1 -1
- package/dist/lib/isCI.d.ts +8 -0
- package/dist/lib/isCI.d.ts.map +1 -0
- package/dist/lib/isCI.js +18 -0
- package/dist/lib/isCI.js.map +1 -0
- package/dist/lib/prompt.d.ts +1 -1
- package/dist/lib/prompt.d.ts.map +1 -1
- package/dist/lib/prompt.js +33 -8
- package/dist/lib/prompt.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 +108 -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/logger.d.ts +2 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js +5 -1
- package/dist/logger.js.map +1 -1
- package/dist/packageInfo.d.ts +1 -1
- package/dist/packageInfo.d.ts.map +1 -1
- package/dist/packageInfo.js +1 -1
- package/dist/packageInfo.js.map +1 -1
- package/dist/storage.d.ts +8 -6
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +28 -6
- package/dist/storage.js.map +1 -1
- package/legacy-require-handler.cjs +29 -0
- package/legacy-require-handler.d.cts +2 -0
- package/package.json +43 -36
|
@@ -1,9 +1,12 @@
|
|
|
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
|
|
4
|
+
import { getLicense } from 'license';
|
|
5
|
+
import { setWith } from 'lodash-es';
|
|
6
|
+
import preferredPM from 'preferred-pm';
|
|
5
7
|
import semver from 'semver';
|
|
6
8
|
import { IndentationText, Project, QuoteKind, ScriptTarget, VariableDeclarationKind } from 'ts-morph';
|
|
9
|
+
import { buildCodeSnippetForOperation, getSuggestedOperation } from '../../../lib/suggestedOperations.js';
|
|
7
10
|
import logger from '../../../logger.js';
|
|
8
11
|
import { PACKAGE_VERSION } from '../../../packageInfo.js';
|
|
9
12
|
import Storage from '../../../storage.js';
|
|
@@ -23,6 +26,27 @@ import { docblockEscape, generateTypeName, wordWrap } from './util.js';
|
|
|
23
26
|
*/
|
|
24
27
|
const REF_PLACEHOLDER = '::convert::';
|
|
25
28
|
const REF_PLACEHOLDER_REGEX = /"::convert::([a-zA-Z_$\\d]*)"/g;
|
|
29
|
+
function handleExecSuccess(res, opts = {}) {
|
|
30
|
+
if (opts.dryRun) {
|
|
31
|
+
(opts.logger ? opts.logger : logger)(res.command);
|
|
32
|
+
(opts.logger ? opts.logger : logger)(res.stdout);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
function handleExecFailure(err, opts = {}) {
|
|
36
|
+
if (opts.dryRun) {
|
|
37
|
+
(opts.logger ? opts.logger : logger)(err.message);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
throw err;
|
|
41
|
+
}
|
|
42
|
+
async function detectPackageManager(installDir) {
|
|
43
|
+
const pm = await preferredPM(installDir);
|
|
44
|
+
if (pm) {
|
|
45
|
+
return pm.name;
|
|
46
|
+
}
|
|
47
|
+
// Default to npm if no preferred package manager is detected
|
|
48
|
+
return 'npm';
|
|
49
|
+
}
|
|
26
50
|
export default class TSGenerator extends CodeGenerator {
|
|
27
51
|
project;
|
|
28
52
|
types;
|
|
@@ -76,17 +100,13 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
76
100
|
// eslint-disable-next-line class-methods-use-this
|
|
77
101
|
async install(storage, opts = {}) {
|
|
78
102
|
const installDir = storage.getIdentifierStorageDir();
|
|
79
|
-
const
|
|
103
|
+
const packageManager = await detectPackageManager(installDir);
|
|
104
|
+
const installCommand = ['install', '--save', opts.dryRun ? '--dry-run' : ''].filter(Boolean);
|
|
80
105
|
// This will install the installed SDK as a dependency within the current working directory,
|
|
81
106
|
// adding `@api/<sdk identifier>` as a dependency there so you can load it with
|
|
82
107
|
// `require('@api/<sdk identifier>)`.
|
|
83
|
-
return execa(
|
|
84
|
-
.then(res =>
|
|
85
|
-
if (opts.dryRun) {
|
|
86
|
-
(opts.logger ? opts.logger : logger)(res.command);
|
|
87
|
-
(opts.logger ? opts.logger : logger)(res.stdout);
|
|
88
|
-
}
|
|
89
|
-
})
|
|
108
|
+
return execa(packageManager, [...installCommand, installDir].filter(Boolean))
|
|
109
|
+
.then(res => handleExecSuccess(res, opts))
|
|
90
110
|
.catch(err => {
|
|
91
111
|
// If `npm install` throws this error it always happens **after** our dependencies have been
|
|
92
112
|
// installed and is an annoying quirk that sometimes occurs when installing a package within
|
|
@@ -96,26 +116,17 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
96
116
|
(opts.logger ? opts.logger : logger)("npm threw an error but we're ignoring it");
|
|
97
117
|
return;
|
|
98
118
|
}
|
|
99
|
-
|
|
100
|
-
(opts.logger ? opts.logger : logger)(err.message);
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
throw err;
|
|
119
|
+
handleExecFailure(err, opts);
|
|
104
120
|
});
|
|
105
121
|
}
|
|
106
122
|
static async uninstall(storage, opts = {}) {
|
|
107
123
|
const pkgName = storage.getPackageName();
|
|
124
|
+
const installDir = storage.getIdentifierStorageDir();
|
|
125
|
+
const packageManager = await detectPackageManager(installDir);
|
|
108
126
|
const args = ['uninstall', pkgName, opts.dryRun ? '--dry-run' : ''].filter(Boolean);
|
|
109
|
-
return execa(
|
|
110
|
-
.then(res =>
|
|
111
|
-
|
|
112
|
-
(opts.logger ? opts.logger : logger)(res.command);
|
|
113
|
-
(opts.logger ? opts.logger : logger)(res.stdout);
|
|
114
|
-
}
|
|
115
|
-
})
|
|
116
|
-
.catch(err => {
|
|
117
|
-
throw err;
|
|
118
|
-
});
|
|
127
|
+
return execa(packageManager, args)
|
|
128
|
+
.then(res => handleExecSuccess(res, opts))
|
|
129
|
+
.catch(err => handleExecFailure(err, opts));
|
|
119
130
|
}
|
|
120
131
|
/**
|
|
121
132
|
* Compile the TS code we generated into JS for use in CJS and ESM environments.
|
|
@@ -124,22 +135,14 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
124
135
|
// eslint-disable-next-line class-methods-use-this
|
|
125
136
|
async compile(storage, opts = {}) {
|
|
126
137
|
const installDir = storage.getIdentifierStorageDir();
|
|
127
|
-
await execa('
|
|
138
|
+
await execa('npm', ['pkg', 'set', 'scripts.prepare=tsup'], { cwd: installDir })
|
|
139
|
+
.then(res => handleExecSuccess(res, opts))
|
|
140
|
+
.catch(err => handleExecFailure(err, opts));
|
|
141
|
+
await execa('npm', ['run', 'prepare'], {
|
|
128
142
|
cwd: installDir,
|
|
129
143
|
})
|
|
130
|
-
.then(res =>
|
|
131
|
-
|
|
132
|
-
(opts.logger ? opts.logger : logger)(res.command);
|
|
133
|
-
(opts.logger ? opts.logger : logger)(res.stdout);
|
|
134
|
-
}
|
|
135
|
-
})
|
|
136
|
-
.catch(err => {
|
|
137
|
-
if (opts.dryRun) {
|
|
138
|
-
(opts.logger ? opts.logger : logger)(err.message);
|
|
139
|
-
return;
|
|
140
|
-
}
|
|
141
|
-
throw err;
|
|
142
|
-
});
|
|
144
|
+
.then(res => handleExecSuccess(res, opts))
|
|
145
|
+
.catch(err => handleExecFailure(err, opts));
|
|
143
146
|
}
|
|
144
147
|
/**
|
|
145
148
|
* Generate the current OpenAPI definition into a TypeScript library.
|
|
@@ -148,9 +151,11 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
148
151
|
async generate() {
|
|
149
152
|
const srcDirectory = this.project.createDirectory('src');
|
|
150
153
|
const sdkSource = this.createSDKSource(srcDirectory);
|
|
154
|
+
this.createIndexSource(srcDirectory);
|
|
155
|
+
this.createGitIgnore();
|
|
151
156
|
this.createPackageJSON();
|
|
152
157
|
this.createTSConfig();
|
|
153
|
-
this.createREADME();
|
|
158
|
+
await this.createREADME();
|
|
154
159
|
if (Object.keys(this.schemas).length) {
|
|
155
160
|
this.createSchemasFile(srcDirectory);
|
|
156
161
|
this.createTypesFile(srcDirectory);
|
|
@@ -159,7 +164,7 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
159
164
|
// If we don't have any schemas then we shouldn't import a `types` file that doesn't exist.
|
|
160
165
|
sdkSource
|
|
161
166
|
.getImportDeclarations()
|
|
162
|
-
.find(id => id.getText() === "import type * as types from './types';")
|
|
167
|
+
.find(id => id.getText() === "import type * as types from './types.js';")
|
|
163
168
|
?.remove();
|
|
164
169
|
}
|
|
165
170
|
// If this SDK doesn't use the `HTTPMethodRange` interface for handling `2XX` response status
|
|
@@ -168,7 +173,7 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
168
173
|
sdkSource
|
|
169
174
|
.getImportDeclarations()
|
|
170
175
|
.find(id => id.getText().includes('HTTPMethodRange'))
|
|
171
|
-
?.replaceWithText("import type { ConfigOptions, FetchResponse } from '@readme/api-core';");
|
|
176
|
+
?.replaceWithText("import type { ConfigOptions, FetchResponse } from '@readme/api-core/types';");
|
|
172
177
|
}
|
|
173
178
|
return [
|
|
174
179
|
...this.project.getSourceFiles().map(sourceFile => {
|
|
@@ -193,28 +198,57 @@ export default class TSGenerator extends CodeGenerator {
|
|
|
193
198
|
}),
|
|
194
199
|
].reduce((prev, next) => Object.assign(prev, next));
|
|
195
200
|
}
|
|
201
|
+
async getExampleCodeSnippet() {
|
|
202
|
+
// if we've already built the code snippet, return it instead of re-building it!
|
|
203
|
+
if (typeof this.exampleCodeSnippet !== 'undefined') {
|
|
204
|
+
return this.exampleCodeSnippet;
|
|
205
|
+
}
|
|
206
|
+
const operation = getSuggestedOperation(this.spec);
|
|
207
|
+
if (!operation) {
|
|
208
|
+
this.exampleCodeSnippet = false;
|
|
209
|
+
return false;
|
|
210
|
+
}
|
|
211
|
+
const snippet = await buildCodeSnippetForOperation(this.spec, operation, { identifier: this.identifier });
|
|
212
|
+
this.exampleCodeSnippet = snippet;
|
|
213
|
+
return snippet;
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Create our main `index.ts` file that will be the entrypoint for our SDK.
|
|
217
|
+
* This file will be used to export the SDK and any types that are generated.
|
|
218
|
+
*
|
|
219
|
+
*/
|
|
220
|
+
createIndexSource(sourceDirectory) {
|
|
221
|
+
const sourceFile = sourceDirectory.createSourceFile('index.ts', '');
|
|
222
|
+
sourceFile.addImportDeclaration({
|
|
223
|
+
defaultImport: 'SDK',
|
|
224
|
+
moduleSpecifier: './sdk.js',
|
|
225
|
+
});
|
|
226
|
+
this.createSDKExport(sourceFile);
|
|
227
|
+
return sourceFile;
|
|
228
|
+
}
|
|
196
229
|
/**
|
|
197
230
|
* Create our main SDK source file.
|
|
198
231
|
*
|
|
199
232
|
*/
|
|
200
233
|
createSDKSource(sourceDirectory) {
|
|
201
234
|
const { operations } = this.loadOperationsAndMethods();
|
|
202
|
-
const sourceFile = sourceDirectory.createSourceFile('
|
|
235
|
+
const sourceFile = sourceDirectory.createSourceFile('sdk.ts', '');
|
|
203
236
|
sourceFile.addImportDeclarations([
|
|
204
237
|
// This import will be automatically removed later if the SDK ends up not having any types.
|
|
205
|
-
{ defaultImport: 'type * as types', moduleSpecifier: './types' },
|
|
238
|
+
{ defaultImport: 'type * as types', moduleSpecifier: './types.js' },
|
|
206
239
|
{
|
|
207
240
|
// `HTTPMethodRange` will be conditionally removed later if it ends up not being used.
|
|
208
241
|
defaultImport: 'type { ConfigOptions, FetchResponse, HTTPMethodRange }',
|
|
209
|
-
moduleSpecifier: '@readme/api-core',
|
|
242
|
+
moduleSpecifier: '@readme/api-core/types',
|
|
210
243
|
},
|
|
211
244
|
{ defaultImport: 'APICore', moduleSpecifier: '@readme/api-core' },
|
|
212
245
|
{ defaultImport: 'definition', moduleSpecifier: this.specPath },
|
|
213
246
|
]);
|
|
214
|
-
// @todo add TOS, License, info.* to a docblock at the top of the SDK.
|
|
215
247
|
this.sdk = sourceFile.addClass({
|
|
216
248
|
name: 'SDK',
|
|
217
249
|
properties: [{ name: 'core', type: 'APICore' }],
|
|
250
|
+
isDefaultExport: true,
|
|
251
|
+
isExported: true,
|
|
218
252
|
});
|
|
219
253
|
this.sdk.addConstructor({
|
|
220
254
|
statements: writer => {
|
|
@@ -305,9 +339,97 @@ sdk.server('https://eu.api.example.com/v14');`)),
|
|
|
305
339
|
Object.entries(operations).forEach(([operationId, data]) => {
|
|
306
340
|
this.createOperationAccessor(data.operation, operationId, data.types.params, data.types.responses);
|
|
307
341
|
});
|
|
308
|
-
|
|
342
|
+
return sourceFile;
|
|
343
|
+
}
|
|
344
|
+
/**
|
|
345
|
+
* Create an IIFE export of our SDK in the SDK source file so users can do
|
|
346
|
+
* `import sdk from '<package>'` and have a ready-to-go instance of their SDK -- eliminating them
|
|
347
|
+
* having to create an instance with `new SDK()`.
|
|
348
|
+
*
|
|
349
|
+
* This will also fill our a JSDoc heading on the IIFE we're creating based on various pieces of
|
|
350
|
+
* data that may be present in the OpenAPI definition `info` object.
|
|
351
|
+
*
|
|
352
|
+
* Additionally if a license in `info.license` is recognized by the SPDX we'll also create a
|
|
353
|
+
* `LICENSE` file in for their generated SDK. We're only supporting SPDX-recognized licenses for
|
|
354
|
+
* this because we otherwise have no idea what the license represents and we should be extremely
|
|
355
|
+
* cautious around assuming intent with software licensing.
|
|
356
|
+
*
|
|
357
|
+
* @see {@link https://spdx.org/licenses/}
|
|
358
|
+
*/
|
|
359
|
+
createSDKExport(sourceFile) {
|
|
360
|
+
let docblock = {};
|
|
361
|
+
// The OpenAPI 3.1 `info` object added some properties that aren't available in 3.0 but 3.1
|
|
362
|
+
// still contains everything that was available in 3.0 so to allow us to not have to do gross
|
|
363
|
+
// `as OpenAPIV3_1.InfoObject` typing everywhere we're just assuming that we have 3.1 object
|
|
364
|
+
// here.
|
|
365
|
+
const infoObject = this.spec.api.info;
|
|
366
|
+
if (infoObject?.title || infoObject?.description) {
|
|
367
|
+
docblock.description = writer => {
|
|
368
|
+
if (infoObject.title) {
|
|
369
|
+
writer.writeLine(docblockEscape(wordWrap(infoObject.title)));
|
|
370
|
+
}
|
|
371
|
+
if (infoObject.description) {
|
|
372
|
+
writer.conditionalNewLine(!!infoObject.title);
|
|
373
|
+
writer.writeLine(docblockEscape(wordWrap(infoObject.description)));
|
|
374
|
+
}
|
|
375
|
+
writer.newLineIfLastNot();
|
|
376
|
+
return writer;
|
|
377
|
+
};
|
|
378
|
+
}
|
|
379
|
+
if (this.apiContact.name) {
|
|
380
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
381
|
+
tagName: 'author',
|
|
382
|
+
text: this.apiContact.name,
|
|
383
|
+
});
|
|
384
|
+
}
|
|
385
|
+
if (this.apiContact.url) {
|
|
386
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
387
|
+
tagName: 'see',
|
|
388
|
+
text: `{@link ${this.apiContact.url}}`,
|
|
389
|
+
});
|
|
390
|
+
}
|
|
391
|
+
if (infoObject?.termsOfService) {
|
|
392
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
393
|
+
tagName: 'see',
|
|
394
|
+
text: `{@link ${infoObject.termsOfService} Terms of Service}`,
|
|
395
|
+
});
|
|
396
|
+
}
|
|
397
|
+
if (this.spdxLicense) {
|
|
398
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
399
|
+
tagName: 'license',
|
|
400
|
+
text: this.spdxLicense,
|
|
401
|
+
});
|
|
402
|
+
// Some licenses like `Apache-2.0` have the year as `[yyyy]` but the `license` package only
|
|
403
|
+
// supports templating on `<templatekey>` so we need to fix this ourselves.
|
|
404
|
+
// https://github.com/Ovyerus/license/issues/12
|
|
405
|
+
const year = new Date().getFullYear().toString();
|
|
406
|
+
const license = getLicense(this.spdxLicense, {
|
|
407
|
+
year,
|
|
408
|
+
// `license` doesn't support empty strings so we need to fake it here
|
|
409
|
+
author: this.apiContact.name ?? ' ',
|
|
410
|
+
})
|
|
411
|
+
.replace(/<yyyy>/g, year)
|
|
412
|
+
.replace(/\[yyyy\]/g, year);
|
|
413
|
+
this.project.createSourceFile('LICENSE', license);
|
|
414
|
+
}
|
|
415
|
+
else if (infoObject?.license) {
|
|
416
|
+
// If they have a license but it's not recognized by the SPDX we should still surface it.
|
|
417
|
+
if (infoObject?.license?.name) {
|
|
418
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
419
|
+
tagName: 'license',
|
|
420
|
+
text: infoObject.license.name,
|
|
421
|
+
});
|
|
422
|
+
}
|
|
423
|
+
if (infoObject.license?.url) {
|
|
424
|
+
docblock = TSGenerator.#addTagToDocblock(docblock, {
|
|
425
|
+
tagName: 'see',
|
|
426
|
+
text: `{@link ${infoObject.license.url}}`,
|
|
427
|
+
});
|
|
428
|
+
}
|
|
429
|
+
}
|
|
309
430
|
sourceFile.addVariableStatement({
|
|
310
431
|
declarationKind: VariableDeclarationKind.Const,
|
|
432
|
+
docs: Object.keys(docblock).length ? [docblock] : [],
|
|
311
433
|
declarations: [
|
|
312
434
|
{
|
|
313
435
|
name: 'createSDK',
|
|
@@ -329,6 +451,19 @@ sdk.server('https://eu.api.example.com/v14');`)),
|
|
|
329
451
|
});
|
|
330
452
|
return sourceFile;
|
|
331
453
|
}
|
|
454
|
+
/**
|
|
455
|
+
* Creates a `.gitignore` file to prevent the `dist/` directory from being tracked.
|
|
456
|
+
*
|
|
457
|
+
*/
|
|
458
|
+
createGitIgnore() {
|
|
459
|
+
const file = `# This file prevents the \`dist/\` directory from being tracked via git.
|
|
460
|
+
# This is recommended since the \`prepare\` npm script automatically
|
|
461
|
+
# regenerates the contents of the \`dist/\` directory as needed.
|
|
462
|
+
dist/
|
|
463
|
+
`;
|
|
464
|
+
const sourceFile = this.project.createSourceFile('.gitignore', file);
|
|
465
|
+
return sourceFile;
|
|
466
|
+
}
|
|
332
467
|
/**
|
|
333
468
|
* Create the `tsconfig.json` file that will allow this SDK to be compiled for use.
|
|
334
469
|
*
|
|
@@ -337,8 +472,11 @@ sdk.server('https://eu.api.example.com/v14');`)),
|
|
|
337
472
|
const sourceFile = this.project.createSourceFile('tsconfig.json', '');
|
|
338
473
|
const config = {
|
|
339
474
|
compilerOptions: {
|
|
340
|
-
|
|
475
|
+
esModuleInterop: true,
|
|
476
|
+
module: 'ESNext',
|
|
477
|
+
moduleResolution: 'Bundler',
|
|
341
478
|
resolveJsonModule: true,
|
|
479
|
+
strict: true,
|
|
342
480
|
},
|
|
343
481
|
include: ['./src/**/*'],
|
|
344
482
|
};
|
|
@@ -365,6 +503,7 @@ sdk.server('https://eu.api.example.com/v14');`)),
|
|
|
365
503
|
dts: true,
|
|
366
504
|
entry: [
|
|
367
505
|
'./src/index.ts',
|
|
506
|
+
'./src/sdk.ts',
|
|
368
507
|
// If this SDK has schemas and generated types then we should also export those too so
|
|
369
508
|
// they're available to use.
|
|
370
509
|
hasTypes ? './src/types.ts' : '',
|
|
@@ -384,31 +523,41 @@ sdk.server('https://eu.api.example.com/v14');`)),
|
|
|
384
523
|
const pkg = {
|
|
385
524
|
name: `@api/${this.identifier}`,
|
|
386
525
|
version: pkgVersion.version,
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
526
|
+
type: 'module',
|
|
527
|
+
main: 'dist/index.cjs',
|
|
528
|
+
types: 'dist/index.d.cts',
|
|
529
|
+
module: 'dist/index.ts',
|
|
390
530
|
exports: {
|
|
391
531
|
'.': {
|
|
392
|
-
import: './dist/index.
|
|
393
|
-
require: './dist/index.
|
|
532
|
+
import: './dist/index.js',
|
|
533
|
+
require: './dist/index.cjs',
|
|
534
|
+
},
|
|
535
|
+
'./sdk': {
|
|
536
|
+
import: './dist/sdk.js',
|
|
537
|
+
require: './dist/sdk.cjs',
|
|
394
538
|
},
|
|
395
539
|
...(hasTypes
|
|
396
540
|
? {
|
|
397
541
|
'./types': {
|
|
398
|
-
import: './dist/types.
|
|
399
|
-
require: './dist/types.
|
|
542
|
+
import: './dist/types.js',
|
|
543
|
+
require: './dist/types.cjs',
|
|
400
544
|
},
|
|
401
545
|
}
|
|
402
546
|
: {}),
|
|
547
|
+
'./package.json': './package.json',
|
|
403
548
|
},
|
|
549
|
+
license: this.spdxLicense ?? '',
|
|
404
550
|
files: ['dist', 'openapi.json'],
|
|
405
551
|
scripts: {
|
|
406
|
-
|
|
552
|
+
lint: 'tsc --noEmit',
|
|
407
553
|
},
|
|
408
554
|
dependencies,
|
|
409
555
|
devDependencies,
|
|
410
556
|
tsup: tsupOptions,
|
|
411
557
|
};
|
|
558
|
+
if (!this.spdxLicense) {
|
|
559
|
+
delete pkg.license;
|
|
560
|
+
}
|
|
412
561
|
sourceFile.addStatements(JSON.stringify(pkg, null, 2));
|
|
413
562
|
return sourceFile;
|
|
414
563
|
}
|
|
@@ -416,16 +565,27 @@ sdk.server('https://eu.api.example.com/v14');`)),
|
|
|
416
565
|
* Create a placeholder `README.md` file in the repository, with information on how to use/administer the SDK.
|
|
417
566
|
*
|
|
418
567
|
*/
|
|
419
|
-
createREADME() {
|
|
568
|
+
async createREADME() {
|
|
420
569
|
let createdAt = new Date().toISOString();
|
|
421
570
|
const currentAPI = Storage.getLockfile().apis.find(api => api.identifier === this.identifier);
|
|
422
571
|
if (currentAPI)
|
|
423
572
|
createdAt = currentAPI.createdAt;
|
|
573
|
+
let exampleUsage = 'Add SDK setup information and usage examples here so your users get started in a jiffy! 🚀';
|
|
574
|
+
const exampleSnippet = await this.getExampleCodeSnippet();
|
|
575
|
+
if (exampleSnippet) {
|
|
576
|
+
exampleUsage = `
|
|
577
|
+
## Example Usage 🚀
|
|
578
|
+
|
|
579
|
+
\`\`\`js
|
|
580
|
+
${exampleSnippet}
|
|
581
|
+
\`\`\`
|
|
582
|
+
`.trim();
|
|
583
|
+
}
|
|
424
584
|
const file = `# \`@api/${this.identifier}\`
|
|
425
585
|
|
|
426
586
|
This SDK was autogenerated by the [\`api\` SDK generator](https://api.readme.dev), powered by [ReadMe](https://readme.com) 🦉
|
|
427
587
|
|
|
428
|
-
|
|
588
|
+
${exampleUsage}
|
|
429
589
|
|
|
430
590
|
<!---
|
|
431
591
|
|
|
@@ -454,7 +614,7 @@ Generated at ${createdAt}
|
|
|
454
614
|
// for these schemas into our main `schemas.ts` file.`
|
|
455
615
|
sourceFile.addImportDeclaration({
|
|
456
616
|
defaultImport: schemaName,
|
|
457
|
-
moduleSpecifier: `./schemas/${schemaName}`,
|
|
617
|
+
moduleSpecifier: `./schemas/${schemaName}.js`,
|
|
458
618
|
});
|
|
459
619
|
// Though we aren't using Prettier to make these generated SDKs look amazing we should at
|
|
460
620
|
// least make the schema files we generate not look like completely unreadable garbage.
|
|
@@ -470,7 +630,7 @@ Generated at ${createdAt}
|
|
|
470
630
|
// declaration for it.
|
|
471
631
|
schemaFile.addImportDeclaration({
|
|
472
632
|
defaultImport: ref,
|
|
473
|
-
moduleSpecifier: `./${ref}`,
|
|
633
|
+
moduleSpecifier: `./${ref}.js`,
|
|
474
634
|
});
|
|
475
635
|
});
|
|
476
636
|
}
|
|
@@ -506,8 +666,8 @@ Generated at ${createdAt}
|
|
|
506
666
|
createTypesFile(sourceDirectory) {
|
|
507
667
|
const sourceFile = sourceDirectory.createSourceFile('types.ts', '');
|
|
508
668
|
sourceFile.addImportDeclarations([
|
|
509
|
-
{ defaultImport: 'type { FromSchema }', moduleSpecifier: '@readme/api-core/
|
|
510
|
-
{ defaultImport: '* as schemas', moduleSpecifier: './schemas' },
|
|
669
|
+
{ defaultImport: 'type { FromSchema }', moduleSpecifier: '@readme/api-core/types' },
|
|
670
|
+
{ defaultImport: 'type * as schemas', moduleSpecifier: './schemas.js' },
|
|
511
671
|
]);
|
|
512
672
|
Array.from(new Map(Array.from(this.types.entries()).sort())).forEach(([typeName, typeExpression]) => {
|
|
513
673
|
sourceFile.addTypeAlias({ isExported: true, name: typeName, type: 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":"util.d.ts","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/util.ts"],"names":[],"mappings":"AAmGA;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAK,UAE7C;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,UAEzC;AAqCD,wBAAgB,gBAAgB,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,UAsBlD"}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import camelCase from 'lodash
|
|
2
|
-
import deburr from 'lodash.deburr';
|
|
3
|
-
import startCase from 'lodash.startcase';
|
|
1
|
+
import { camelCase, deburr, startCase } from 'lodash-es';
|
|
4
2
|
/**
|
|
5
3
|
* This is a mix of reserved JS words and keywords in TypeScript that might be reserved or
|
|
6
4
|
* allowable but functionally confusing (like `let any = 'buster';`)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/util.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../src/codegen/languages/typescript/util.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;AAwE5C,QAAA,MAAM,GAAG,SAAgB,CAAC;AAsJ1B,eAAe,GAAG,CAAC"}
|