UNPKG

@nodearch/cli

Version:
68 lines (67 loc) 3.22 kB
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); }; import { CommandDecorator, CommandService } from '@nodearch/command'; import { AppContext, Hook, Logger } from '@nodearch/core'; import { LocalAppService } from './local-app.service.js'; let CliHook = class CliHook { constructor(commandService, localAppService, logger, appContext) { this.commandService = commandService; this.localAppService = localAppService; this.logger = logger; this.appContext = appContext; } async onStart() { const cliVersion = process.env.NODEARCH_CLI_VERSION; const currentCliVersion = this.appContext.getSettings().version; if (cliVersion && cliVersion !== currentCliVersion) { this.logger.info(`Starting NodeArch CLI using local version v${currentCliVersion} - global version is ${cliVersion}`); } else { this.logger.info(`Starting NodeArch CLI v${this.appContext.getSettings().version}`); } this.logger.info(`Log Level: ${this.logger.getLogLevel()}`); this.logger.info(`Check https://nodearch.io for documentation and guides`); await this.localAppService.init(); let localAppCommands = []; const excludedCommands = []; if (this.localAppService.isAppDir) { const localApp = this.localAppService.app; const localAppInfo = this.localAppService.info; if (localAppInfo) { this.logger.info(`Local app loaded: ${localAppInfo.name} v${localAppInfo.version} - ${localAppInfo.loadMode.toUpperCase()} Mode`); } else { this.logger.warn(`Local app might be in an invalid state.`); } if (localApp && !this.localAppService.hasLoadError) { localAppCommands = localApp.getContainer().getById(CommandDecorator.COMMAND); } else { excludedCommands.push('start'); } excludedCommands.push('new'); } else { excludedCommands.push('start'); excludedCommands.push('build'); excludedCommands.push('ncu'); excludedCommands.push('create'); } await this.commandService.start({ commands: localAppCommands, exclude: excludedCommands }); } }; CliHook = __decorate([ Hook(), __metadata("design:paramtypes", [CommandService, LocalAppService, Logger, AppContext]) ], CliHook); export { CliHook };