UNPKG

superjolt

Version:

AI-powered deployment platform with MCP support - Deploy JavaScript apps using natural language with Claude Desktop

83 lines 3.82 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); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.ServiceDeleteCommand = void 0; const nest_commander_1 = require("nest-commander"); const api_service_1 = require("../services/api.service"); const auth_service_1 = require("../services/auth.service"); const logger_service_1 = require("../services/logger.service"); const common_1 = require("@nestjs/common"); const project_1 = require("../utils/project"); const authenticated_command_1 = require("./authenticated.command"); let ServiceDeleteCommand = class ServiceDeleteCommand extends authenticated_command_1.AuthenticatedCommand { apiService; authService; logger; constructor(apiService, authService, logger) { super(); this.apiService = apiService; this.authService = authService; this.logger = logger; } async execute(passedParams) { try { const serviceId = passedParams[0]; if (!serviceId) { this.logger.error('Error: Service ID is required'); this.logger.log('Usage: superjolt service:delete <serviceId>'); this.logger.log(' or: superjolt delete <serviceId>'); process.exit(1); } const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout, }); const confirmed = await new Promise((resolve) => { rl.question(`Are you sure you want to delete service ${serviceId}? (y/N): `, (answer) => { rl.close(); resolve(answer.toLowerCase() === 'y' || answer.toLowerCase() === 'yes'); }); }); if (!confirmed) { this.logger.log('Deletion cancelled'); return; } this.logger.log(`Deleting service: ${serviceId}...`); const response = await this.apiService.deleteService(serviceId); this.logger.log(`✅ ${response.message}`); const config = (0, project_1.readSuperjoltConfig)(); if (config?.serviceId === serviceId) { if ((0, project_1.deleteSuperjoltConfig)()) { this.logger.log('✅ Removed .superjolt file (service was deleted)'); } } } catch (error) { this.logger.error(`\n${error.message}`); process.exit(1); } } }; exports.ServiceDeleteCommand = ServiceDeleteCommand; exports.ServiceDeleteCommand = ServiceDeleteCommand = __decorate([ (0, common_1.Injectable)(), (0, nest_commander_1.Command)({ name: 'service:delete', aliases: ['delete'], arguments: '<serviceId>', description: 'Delete a service', }), __metadata("design:paramtypes", [api_service_1.ApiService, auth_service_1.AuthService, logger_service_1.LoggerService]) ], ServiceDeleteCommand); //# sourceMappingURL=service-delete.command.js.map