UNPKG

@hashgraph/solo

Version:

An opinionated CLI tool to deploy and manage private Hedera Networks.

58 lines 2.43 kB
// SPDX-License-Identifier: Apache-2.0 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 { ShellRunner } from '../shell-runner.js'; import { injectable } from 'tsyringe-neo'; let AptGetPackageManager = class AptGetPackageManager extends ShellRunner { onSudoRequested = (_message) => { }; onSudoGranted = (_message) => { }; constructor() { super(); } setOnSudoRequested(callback) { this.onSudoRequested = callback; } setOnSudoGranted(callback) { this.onSudoGranted = callback; } async installPackages(dependencies) { await this.sudoRun(this.onSudoRequested, this.onSudoGranted, `apt-get install ${dependencies.join(' ')}`); } async uninstallPackages(dependencies) { await this.sudoRun(this.onSudoRequested, this.onSudoGranted, `apt-get remove ${dependencies.join(' ')}`); } async update() { await this.sudoRun(this.onSudoRequested, this.onSudoGranted, 'apt-get update'); } async upgrade(dependencies) { await this.sudoRun(this.onSudoRequested, this.onSudoGranted, `apt-get upgrade ${dependencies.join(' ')}`); } async install() { throw new Error('Method not implemented.'); } async uninstall() { throw new Error('Method not implemented.'); } async isAvailable() { try { await this.sudoRun(this.onSudoRequested, this.onSudoGranted, 'apt-get -v'); return true; } catch { return false; } } }; AptGetPackageManager = __decorate([ injectable(), __metadata("design:paramtypes", []) ], AptGetPackageManager); export { AptGetPackageManager }; //# sourceMappingURL=apt-get-package-manager.js.map