aws-cdk
Version:
CDK Toolkit, the command line tool for CDK apps
32 lines • 4.08 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.realHandler = exports.aliases = exports.describe = exports.command = void 0;
const childProcess = require("child_process");
const chalk = require("chalk");
const logging_1 = require("../../lib/logging");
exports.command = 'docs';
exports.describe = 'Opens the reference documentation in a browser';
exports.aliases = ['doc'];
async function realHandler(options) {
const url = 'https://docs.aws.amazon.com/cdk/api/v2/';
(0, logging_1.print)(chalk.green(url));
const browserCommand = options.args.browser.replace(/%u/g, url);
(0, logging_1.debug)(`Opening documentation ${chalk.green(browserCommand)}`);
return new Promise((resolve, _reject) => {
childProcess.exec(browserCommand, (err, stdout, stderr) => {
if (err) {
(0, logging_1.debug)(`An error occurred when trying to open a browser: ${err.stack || err.message}`);
return resolve(0);
}
if (stdout) {
(0, logging_1.debug)(stdout);
}
if (stderr) {
(0, logging_1.warning)(stderr);
}
resolve(0);
});
});
}
exports.realHandler = realHandler;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImRvY3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQThDO0FBQzlDLCtCQUErQjtBQUMvQiwrQ0FBMEQ7QUFHN0MsUUFBQSxPQUFPLEdBQUcsTUFBTSxDQUFDO0FBQ2pCLFFBQUEsUUFBUSxHQUFHLGdEQUFnRCxDQUFDO0FBQzVELFFBQUEsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7QUFFeEIsS0FBSyxVQUFVLFdBQVcsQ0FBQyxPQUF1QjtJQUN2RCxNQUFNLEdBQUcsR0FBRyx5Q0FBeUMsQ0FBQztJQUN0RCxJQUFBLGVBQUssRUFBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDeEIsTUFBTSxjQUFjLEdBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFrQixDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDNUUsSUFBQSxlQUFLLEVBQUMseUJBQXlCLEtBQUssQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzlELE9BQU8sSUFBSSxPQUFPLENBQVMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUU7UUFDOUMsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3hELElBQUksR0FBRyxFQUFFO2dCQUNQLElBQUEsZUFBSyxFQUFDLG9EQUFvRCxHQUFHLENBQUMsS0FBSyxJQUFJLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO2dCQUN0RixPQUFPLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNuQjtZQUNELElBQUksTUFBTSxFQUFFO2dCQUFFLElBQUEsZUFBSyxFQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQUU7WUFDOUIsSUFBSSxNQUFNLEVBQUU7Z0JBQUUsSUFBQSxpQkFBTyxFQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQUU7WUFDaEMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFoQkQsa0NBZ0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY2hpbGRQcm9jZXNzIGZyb20gJ2NoaWxkX3Byb2Nlc3MnO1xuaW1wb3J0ICogYXMgY2hhbGsgZnJvbSAnY2hhbGsnO1xuaW1wb3J0IHsgZGVidWcsIHByaW50LCB3YXJuaW5nIH0gZnJvbSAnLi4vLi4vbGliL2xvZ2dpbmcnO1xuaW1wb3J0IHsgQ29tbWFuZE9wdGlvbnMgfSBmcm9tICcuLi9jb21tYW5kLWFwaSc7XG5cbmV4cG9ydCBjb25zdCBjb21tYW5kID0gJ2RvY3MnO1xuZXhwb3J0IGNvbnN0IGRlc2NyaWJlID0gJ09wZW5zIHRoZSByZWZlcmVuY2UgZG9jdW1lbnRhdGlvbiBpbiBhIGJyb3dzZXInO1xuZXhwb3J0IGNvbnN0IGFsaWFzZXMgPSBbJ2RvYyddO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVhbEhhbmRsZXIob3B0aW9uczogQ29tbWFuZE9wdGlvbnMpOiBQcm9taXNlPG51bWJlcj4ge1xuICBjb25zdCB1cmwgPSAnaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2Nkay9hcGkvdjIvJztcbiAgcHJpbnQoY2hhbGsuZ3JlZW4odXJsKSk7XG4gIGNvbnN0IGJyb3dzZXJDb21tYW5kID0gKG9wdGlvbnMuYXJncy5icm93c2VyIGFzIHN0cmluZykucmVwbGFjZSgvJXUvZywgdXJsKTtcbiAgZGVidWcoYE9wZW5pbmcgZG9jdW1lbnRhdGlvbiAke2NoYWxrLmdyZWVuKGJyb3dzZXJDb21tYW5kKX1gKTtcbiAgcmV0dXJuIG5ldyBQcm9taXNlPG51bWJlcj4oKHJlc29sdmUsIF9yZWplY3QpID0+IHtcbiAgICBjaGlsZFByb2Nlc3MuZXhlYyhicm93c2VyQ29tbWFuZCwgKGVyciwgc3Rkb3V0LCBzdGRlcnIpID0+IHtcbiAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgZGVidWcoYEFuIGVycm9yIG9jY3VycmVkIHdoZW4gdHJ5aW5nIHRvIG9wZW4gYSBicm93c2VyOiAke2Vyci5zdGFjayB8fCBlcnIubWVzc2FnZX1gKTtcbiAgICAgICAgcmV0dXJuIHJlc29sdmUoMCk7XG4gICAgICB9XG4gICAgICBpZiAoc3Rkb3V0KSB7IGRlYnVnKHN0ZG91dCk7IH1cbiAgICAgIGlmIChzdGRlcnIpIHsgd2FybmluZyhzdGRlcnIpOyB9XG4gICAgICByZXNvbHZlKDApO1xuICAgIH0pO1xuICB9KTtcbn1cbiJdfQ==