UNPKG

cdkdx

Version:

Zero-config CLI for aws cdk development

74 lines 7.63 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.BundleCommand = void 0; const path_1 = __importDefault(require("path")); const clipanion_1 = require("clipanion"); const ts_config_1 = require("../ts-config"); const base_command_1 = require("../base-command"); const bundler_1 = require("../bundler"); const cdkdx_config_1 = require("../cdkdx-config"); class BundleCommand extends base_command_1.BaseProjectCommand { constructor() { super(...arguments); this.watch = false; this.minify = false; } async execute() { const lambdas = new bundler_1.Lambdas(this.projectInfo.lambdasSrcPath); lambdas.warnings.forEach((warning) => { this.context.logger.warn(`File ${warning} not found!\n`); }); // Return 0 if no lambdas were found if (!lambdas.hasEntries()) { this.context.logger.log(``); this.context.logger.info('No lambdas were found to bundle.\n'); return 0; } const cdkdxConfig = new cdkdx_config_1.CdkdxConfig(this.projectInfo); const tsConfig = ts_config_1.TsConfig.fromLambdaTemplate(cdkdxConfig.lambdaTsConfig({ include: ['**/*.ts', '**/*.tsx'], exclude: ['**/__tests__/*'], })); const tsConfigFile = path_1.default.join(this.projectInfo.lambdasSrcPath, 'tsconfig.json'); await tsConfig.writeJson(tsConfigFile, { overwriteExisting: true, }); const bundler = new bundler_1.Bundler({ projectInfo: this.projectInfo, lambdas, minify: this.minify, tsConfigFile, }); this.watch ? bundler.watch() : await bundler.run(); return 0; } } __decorate([ clipanion_1.Command.Boolean('--watch'), clipanion_1.Command.Boolean('-w'), __metadata("design:type", Object) ], BundleCommand.prototype, "watch", void 0); __decorate([ clipanion_1.Command.Boolean('--minify'), __metadata("design:type", Object) ], BundleCommand.prototype, "minify", void 0); __decorate([ clipanion_1.Command.Path('bundle'), __metadata("design:type", Function), __metadata("design:paramtypes", []), __metadata("design:returntype", Promise) ], BundleCommand.prototype, "execute", null); exports.BundleCommand = BundleCommand; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLWNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvYnVuZGxlLWNvbW1hbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBQXdCO0FBQ3hCLHlDQUFvQztBQUVwQyw0Q0FBd0M7QUFDeEMsa0RBQXFEO0FBQ3JELHdDQUE4QztBQUM5QyxrREFBOEM7QUFFOUMsTUFBYSxhQUFjLFNBQVEsaUNBQWtCO0lBQXJEOztRQUdTLFVBQUssR0FBRyxLQUFLLENBQUM7UUFHZCxXQUFNLEdBQUcsS0FBSyxDQUFDO0lBOEN4QixDQUFDO0lBM0NDLEtBQUssQ0FBQyxPQUFPO1FBQ1gsTUFBTSxPQUFPLEdBQUcsSUFBSSxpQkFBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFN0QsT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxPQUFPLGVBQWUsQ0FBQyxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUFDO1FBRUgsb0NBQW9DO1FBQ3BDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1lBQy9ELE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFFRCxNQUFNLFdBQVcsR0FBRyxJQUFJLDBCQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXRELE1BQU0sUUFBUSxHQUFHLG9CQUFRLENBQUMsa0JBQWtCLENBQzFDLFdBQVcsQ0FBQyxjQUFjLENBQUM7WUFDekIsT0FBTyxFQUFFLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQztZQUNoQyxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztTQUM1QixDQUFDLENBQ0gsQ0FBQztRQUVGLE1BQU0sWUFBWSxHQUFHLGNBQUksQ0FBQyxJQUFJLENBQzVCLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUMvQixlQUFlLENBQ2hCLENBQUM7UUFFRixNQUFNLFFBQVEsQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFO1lBQ3JDLGlCQUFpQixFQUFFLElBQUk7U0FDeEIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLEdBQUcsSUFBSSxpQkFBTyxDQUFDO1lBQzFCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixPQUFPO1lBQ1AsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLFlBQVk7U0FDYixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRW5ELE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQztDQUNGO0FBakRDO0lBRkMsbUJBQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO0lBQzFCLG1CQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQzs7NENBQ0Q7QUFHckI7SUFEQyxtQkFBTyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7OzZDQUNOO0FBR3RCO0lBREMsbUJBQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDOzs7OzRDQTJDdEI7QUFuREgsc0NBb0RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBDb21tYW5kIH0gZnJvbSAnY2xpcGFuaW9uJztcblxuaW1wb3J0IHsgVHNDb25maWcgfSBmcm9tICcuLi90cy1jb25maWcnO1xuaW1wb3J0IHsgQmFzZVByb2plY3RDb21tYW5kIH0gZnJvbSAnLi4vYmFzZS1jb21tYW5kJztcbmltcG9ydCB7IEJ1bmRsZXIsIExhbWJkYXMgfSBmcm9tICcuLi9idW5kbGVyJztcbmltcG9ydCB7IENka2R4Q29uZmlnIH0gZnJvbSAnLi4vY2RrZHgtY29uZmlnJztcblxuZXhwb3J0IGNsYXNzIEJ1bmRsZUNvbW1hbmQgZXh0ZW5kcyBCYXNlUHJvamVjdENvbW1hbmQge1xuICBAQ29tbWFuZC5Cb29sZWFuKCctLXdhdGNoJylcbiAgQENvbW1hbmQuQm9vbGVhbignLXcnKVxuICBwdWJsaWMgd2F0Y2ggPSBmYWxzZTtcblxuICBAQ29tbWFuZC5Cb29sZWFuKCctLW1pbmlmeScpXG4gIHB1YmxpYyBtaW5pZnkgPSBmYWxzZTtcblxuICBAQ29tbWFuZC5QYXRoKCdidW5kbGUnKVxuICBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgY29uc3QgbGFtYmRhcyA9IG5ldyBMYW1iZGFzKHRoaXMucHJvamVjdEluZm8ubGFtYmRhc1NyY1BhdGgpO1xuXG4gICAgbGFtYmRhcy53YXJuaW5ncy5mb3JFYWNoKCh3YXJuaW5nKSA9PiB7XG4gICAgICB0aGlzLmNvbnRleHQubG9nZ2VyLndhcm4oYEZpbGUgJHt3YXJuaW5nfSBub3QgZm91bmQhXFxuYCk7XG4gICAgfSk7XG5cbiAgICAvLyBSZXR1cm4gMCBpZiBubyBsYW1iZGFzIHdlcmUgZm91bmRcbiAgICBpZiAoIWxhbWJkYXMuaGFzRW50cmllcygpKSB7XG4gICAgICB0aGlzLmNvbnRleHQubG9nZ2VyLmxvZyhgYCk7XG4gICAgICB0aGlzLmNvbnRleHQubG9nZ2VyLmluZm8oJ05vIGxhbWJkYXMgd2VyZSBmb3VuZCB0byBidW5kbGUuXFxuJyk7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBjb25zdCBjZGtkeENvbmZpZyA9IG5ldyBDZGtkeENvbmZpZyh0aGlzLnByb2plY3RJbmZvKTtcblxuICAgIGNvbnN0IHRzQ29uZmlnID0gVHNDb25maWcuZnJvbUxhbWJkYVRlbXBsYXRlKFxuICAgICAgY2RrZHhDb25maWcubGFtYmRhVHNDb25maWcoe1xuICAgICAgICBpbmNsdWRlOiBbJyoqLyoudHMnLCAnKiovKi50c3gnXSxcbiAgICAgICAgZXhjbHVkZTogWycqKi9fX3Rlc3RzX18vKiddLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIGNvbnN0IHRzQ29uZmlnRmlsZSA9IHBhdGguam9pbihcbiAgICAgIHRoaXMucHJvamVjdEluZm8ubGFtYmRhc1NyY1BhdGgsXG4gICAgICAndHNjb25maWcuanNvbicsXG4gICAgKTtcblxuICAgIGF3YWl0IHRzQ29uZmlnLndyaXRlSnNvbih0c0NvbmZpZ0ZpbGUsIHtcbiAgICAgIG92ZXJ3cml0ZUV4aXN0aW5nOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgY29uc3QgYnVuZGxlciA9IG5ldyBCdW5kbGVyKHtcbiAgICAgIHByb2plY3RJbmZvOiB0aGlzLnByb2plY3RJbmZvLFxuICAgICAgbGFtYmRhcyxcbiAgICAgIG1pbmlmeTogdGhpcy5taW5pZnksXG4gICAgICB0c0NvbmZpZ0ZpbGUsXG4gICAgfSk7XG5cbiAgICB0aGlzLndhdGNoID8gYnVuZGxlci53YXRjaCgpIDogYXdhaXQgYnVuZGxlci5ydW4oKTtcblxuICAgIHJldHVybiAwO1xuICB9XG59XG4iXX0=