api 5.0.7 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/codegen/languages/typescript.js +8 -1
- package/dist/cli/commands/install.js +12 -8
- package/dist/packageInfo.d.ts +1 -1
- package/dist/packageInfo.js +1 -1
- package/package.json +7 -7
- package/src/cli/codegen/languages/typescript.ts +15 -6
- package/src/cli/commands/install.ts +16 -13
- package/src/packageInfo.ts +1 -1
|
@@ -163,11 +163,18 @@ var TSGenerator = /** @class */ (function (_super) {
|
|
|
163
163
|
// This will install the installed SDK as a dependency within the current working directory,
|
|
164
164
|
// adding `@api/<sdk identifier>` as a dependency there so you can load it with
|
|
165
165
|
// `require('@api/<sdk identifier>)`.
|
|
166
|
-
return [2 /*return*/, (0, execa_1["default"])('npm', __spreadArray(__spreadArray([], npmInstall, true), [installDir], false).filter(Boolean))
|
|
166
|
+
return [2 /*return*/, (0, execa_1["default"])('npm', __spreadArray(__spreadArray([], npmInstall, true), [installDir], false).filter(Boolean))
|
|
167
|
+
.then(function (res) {
|
|
167
168
|
if (opts.dryRun) {
|
|
168
169
|
(opts.logger ? opts.logger : logger_1["default"])(res.command);
|
|
169
170
|
(opts.logger ? opts.logger : logger_1["default"])(res.stdout);
|
|
170
171
|
}
|
|
172
|
+
})["catch"](function (err) {
|
|
173
|
+
if (opts.dryRun) {
|
|
174
|
+
(opts.logger ? opts.logger : logger_1["default"])(err.message);
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
throw err;
|
|
171
178
|
})];
|
|
172
179
|
}
|
|
173
180
|
});
|
|
@@ -61,6 +61,7 @@ cmd
|
|
|
61
61
|
'js-esm',
|
|
62
62
|
'ts',
|
|
63
63
|
]))
|
|
64
|
+
.addOption(new commander_1.Option('-y, --yes', 'Automatically answer "yes" to any prompts printed'))
|
|
64
65
|
.action(function (uri, options) { return __awaiter(void 0, void 0, void 0, function () {
|
|
65
66
|
var language, identifier, spinner, storage, oas, generator, sdkSource, err_1;
|
|
66
67
|
return __generator(this, function (_a) {
|
|
@@ -183,12 +184,13 @@ cmd
|
|
|
183
184
|
})];
|
|
184
185
|
case 11:
|
|
185
186
|
_a.sent();
|
|
186
|
-
if (!generator.hasRequiredPackages()) return [3 /*break*/,
|
|
187
|
+
if (!generator.hasRequiredPackages()) return [3 /*break*/, 17];
|
|
187
188
|
(0, logger_1["default"])("".concat(figures_1["default"].warning, " This generator requires some packages to be installed alongside it:"));
|
|
188
189
|
Object.entries(generator.requiredPackages).forEach(function (_a) {
|
|
189
190
|
var pkg = _a[0], pkgInfo = _a[1];
|
|
190
191
|
(0, logger_1["default"])(" ".concat(figures_1["default"].pointerSmall, " ").concat(pkg, ": ").concat(pkgInfo.reason, " ").concat(pkgInfo.url));
|
|
191
192
|
});
|
|
193
|
+
if (!!options.yes) return [3 /*break*/, 13];
|
|
192
194
|
return [4 /*yield*/, (0, prompt_1["default"])({
|
|
193
195
|
type: 'confirm',
|
|
194
196
|
name: 'value',
|
|
@@ -204,23 +206,25 @@ cmd
|
|
|
204
206
|
})];
|
|
205
207
|
case 12:
|
|
206
208
|
_a.sent();
|
|
207
|
-
spinner = (0, ora_1["default"])('Installing required packages').start();
|
|
208
209
|
_a.label = 13;
|
|
209
210
|
case 13:
|
|
210
|
-
|
|
211
|
-
|
|
211
|
+
spinner = (0, ora_1["default"])('Installing required packages').start();
|
|
212
|
+
_a.label = 14;
|
|
212
213
|
case 14:
|
|
214
|
+
_a.trys.push([14, 16, , 17]);
|
|
215
|
+
return [4 /*yield*/, generator.installer(storage)];
|
|
216
|
+
case 15:
|
|
213
217
|
_a.sent();
|
|
214
218
|
spinner.succeed(spinner.text);
|
|
215
|
-
return [3 /*break*/,
|
|
216
|
-
case
|
|
219
|
+
return [3 /*break*/, 17];
|
|
220
|
+
case 16:
|
|
217
221
|
err_1 = _a.sent();
|
|
218
222
|
// @todo cleanup installed files
|
|
219
223
|
spinner.fail(spinner.text);
|
|
220
224
|
(0, logger_1["default"])(err_1.message, true);
|
|
221
225
|
process.exit(1);
|
|
222
|
-
return [3 /*break*/,
|
|
223
|
-
case
|
|
226
|
+
return [3 /*break*/, 17];
|
|
227
|
+
case 17:
|
|
224
228
|
(0, logger_1["default"])('🚀 All done!');
|
|
225
229
|
return [2 /*return*/];
|
|
226
230
|
}
|
package/dist/packageInfo.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export declare const PACKAGE_NAME = "api";
|
|
2
|
-
export declare const PACKAGE_VERSION = "
|
|
2
|
+
export declare const PACKAGE_VERSION = "6.0.0";
|
package/dist/packageInfo.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "api",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "6.0.0",
|
|
4
4
|
"description": "Magical SDK generation from an OpenAPI definition 🪄",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"author": "Jon Ursenbach <jon@readme.io>",
|
|
29
29
|
"license": "MIT",
|
|
30
30
|
"engines": {
|
|
31
|
-
"node": ">=
|
|
31
|
+
"node": ">=16"
|
|
32
32
|
},
|
|
33
33
|
"keywords": [
|
|
34
34
|
"api",
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
"lodash.setwith": "^4.3.2",
|
|
61
61
|
"lodash.startcase": "^4.4.0",
|
|
62
62
|
"make-dir": "^3.1.0",
|
|
63
|
-
"node-abort-controller": "^3.
|
|
63
|
+
"node-abort-controller": "^3.1.1",
|
|
64
64
|
"oas": "^20.4.0",
|
|
65
65
|
"ora": "^5.4.1",
|
|
66
66
|
"prettier": "^2.8.3",
|
|
@@ -94,11 +94,11 @@
|
|
|
94
94
|
"mocha": "^10.1.0",
|
|
95
95
|
"mock-require": "^3.0.3",
|
|
96
96
|
"nyc": "^15.1.0",
|
|
97
|
-
"oas-normalize": "^8.3.
|
|
97
|
+
"oas-normalize": "^8.3.2",
|
|
98
98
|
"sinon": "^15.0.0",
|
|
99
99
|
"sinon-chai": "^3.7.0",
|
|
100
|
-
"type-fest": "^3.5.
|
|
101
|
-
"typescript": "^4.9.
|
|
100
|
+
"type-fest": "^3.5.4",
|
|
101
|
+
"typescript": "^4.9.5",
|
|
102
102
|
"unique-temp-dir": "^1.0.0"
|
|
103
103
|
},
|
|
104
104
|
"prettier": "@readme/eslint-config/prettier",
|
|
@@ -108,5 +108,5 @@
|
|
|
108
108
|
"test/"
|
|
109
109
|
]
|
|
110
110
|
},
|
|
111
|
-
"gitHead": "
|
|
111
|
+
"gitHead": "9759db4c067baf3928ad3a9d76b4965658955d78"
|
|
112
112
|
}
|
|
@@ -153,12 +153,21 @@ export default class TSGenerator extends CodeGeneratorLanguage {
|
|
|
153
153
|
// This will install the installed SDK as a dependency within the current working directory,
|
|
154
154
|
// adding `@api/<sdk identifier>` as a dependency there so you can load it with
|
|
155
155
|
// `require('@api/<sdk identifier>)`.
|
|
156
|
-
return execa('npm', [...npmInstall, installDir].filter(Boolean))
|
|
157
|
-
|
|
158
|
-
(opts.
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
156
|
+
return execa('npm', [...npmInstall, installDir].filter(Boolean))
|
|
157
|
+
.then(res => {
|
|
158
|
+
if (opts.dryRun) {
|
|
159
|
+
(opts.logger ? opts.logger : logger)(res.command);
|
|
160
|
+
(opts.logger ? opts.logger : logger)(res.stdout);
|
|
161
|
+
}
|
|
162
|
+
})
|
|
163
|
+
.catch(err => {
|
|
164
|
+
if (opts.dryRun) {
|
|
165
|
+
(opts.logger ? opts.logger : logger)(err.message);
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
throw err;
|
|
170
|
+
});
|
|
162
171
|
}
|
|
163
172
|
|
|
164
173
|
/**
|
|
@@ -26,7 +26,8 @@ cmd
|
|
|
26
26
|
'ts',
|
|
27
27
|
])
|
|
28
28
|
)
|
|
29
|
-
.
|
|
29
|
+
.addOption(new Option('-y, --yes', 'Automatically answer "yes" to any prompts printed'))
|
|
30
|
+
.action(async (uri: string, options: { lang: string; yes?: boolean }) => {
|
|
30
31
|
let language: SupportedLanguages;
|
|
31
32
|
if (options.lang) {
|
|
32
33
|
language = options.lang as SupportedLanguages;
|
|
@@ -155,18 +156,20 @@ cmd
|
|
|
155
156
|
logger(` ${figures.pointerSmall} ${pkg}: ${pkgInfo.reason} ${pkgInfo.url}`);
|
|
156
157
|
});
|
|
157
158
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
159
|
+
if (!options.yes) {
|
|
160
|
+
await promptTerminal({
|
|
161
|
+
type: 'confirm',
|
|
162
|
+
name: 'value',
|
|
163
|
+
message: 'OK to proceed with package installation?',
|
|
164
|
+
initial: true,
|
|
165
|
+
}).then(({ value }) => {
|
|
166
|
+
if (!value) {
|
|
167
|
+
// @todo cleanup installed files
|
|
168
|
+
logger('Installation cancelled.', true);
|
|
169
|
+
process.exit(1);
|
|
170
|
+
}
|
|
171
|
+
});
|
|
172
|
+
}
|
|
170
173
|
|
|
171
174
|
spinner = ora('Installing required packages').start();
|
|
172
175
|
try {
|
package/src/packageInfo.ts
CHANGED