@libotony/sharp-cli
Version:
Sharp command line helper
68 lines • 6.17 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
const fs = require("fs");
const path = require("path");
const connex_framework_1 = require("@vechain/connex-framework");
const connex_driver_nodejs_1 = require("@vechain/connex.driver-nodejs");
const debug = require('debug')('sharp:exec');
const networks = {
'0x00000000851caf3cfdb6e899cf5958bfb1ac3413d346d43539627e6be7ec1b4a': 'Mainnet',
'0x000000000b2bce3c70bc649a02749e8687721b09ed2e15997f466536b20bb127': 'Testnet',
'0x00000000973ceb7f343a58b08f0693d6701a5fd354ff73d7058af3fba222aea4': 'Solo'
};
exports.execScript = (file, endpoint, requires) => __awaiter(this, void 0, void 0, function* () {
const filePath = path.join(process.cwd(), file);
try {
fs.accessSync(filePath, fs.constants.F_OK | fs.constants.R_OK);
for (const r of requires) {
let mPath = r;
if (fs.existsSync(path.resolve(mPath)) || fs.existsSync(path.resolve(`${mPath}.js`))) {
mPath = path.resolve(mPath);
debug(`resolved ${r} to ${mPath}`);
}
require(mPath);
debug('loaded require: ', mPath);
}
debug('prepare connex env');
const wallet = new connex_driver_nodejs_1.SimpleWallet();
const driver = yield connex_driver_nodejs_1.Driver.connect(new connex_driver_nodejs_1.SimpleNet(endpoint), wallet);
const connex = new connex_framework_1.Framework(connex_framework_1.Framework.guardDriver(driver));
global.connex = connex;
global.wallet = wallet;
}
catch (e) {
throw new Error('Prepare failed: ' + e.message);
}
debug('execute script');
const printNetInfo = () => {
const geneID = global.connex.thor.genesis.id;
const netName = networks[geneID] ? networks[geneID] : 'UnKnown';
process.stderr.write(`Connected to ${netName}(#0....${geneID.substr(-8)}) @ ${endpoint}`);
process.stderr.write('\n');
};
process.env.THOR_REST = endpoint;
const con = yield Promise.resolve().then(() => require(filePath));
if (typeof con === 'function') {
debug('module.exports = function');
printNetInfo();
yield con();
}
else if (typeof con.default === 'function') {
debug('export default function');
printNetInfo();
yield con.default();
}
else {
throw new Error('Cannot locate the task in the script');
}
debug('execute finished');
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlYy1zY3JpcHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZXhlYy1zY3JpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLHlCQUF3QjtBQUN4Qiw2QkFBNEI7QUFDNUIsZ0VBQXFEO0FBQ3JELHdFQUErRTtBQUMvRSxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUE7QUFFNUMsTUFBTSxRQUFRLEdBQWdDO0lBQzFDLG9FQUFvRSxFQUFFLFNBQVM7SUFDL0Usb0VBQW9FLEVBQUUsU0FBUztJQUMvRSxvRUFBb0UsRUFBRSxNQUFNO0NBQy9FLENBQUE7QUFFWSxRQUFBLFVBQVUsR0FBRyxDQUFPLElBQVksRUFBRSxRQUFnQixFQUFFLFFBQWtCLEVBQUUsRUFBRTtJQUNuRixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUUvQyxJQUFJO1FBQ0EsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUU5RCxLQUFLLE1BQU0sQ0FBQyxJQUFJLFFBQVEsRUFBRTtZQUN0QixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUE7WUFDYixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFDbEYsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQzNCLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQyxDQUFBO2FBQ3JDO1lBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ2QsS0FBSyxDQUFDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxDQUFBO1NBQ25DO1FBRUQsS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUE7UUFDM0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxtQ0FBWSxFQUFFLENBQUE7UUFDakMsTUFBTSxNQUFNLEdBQUcsTUFBTSw2QkFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLGdDQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDcEUsTUFBTSxNQUFNLEdBQUcsSUFBSSw0QkFBUyxDQUFDLDRCQUFTLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7UUFFM0QsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7UUFDdEIsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7S0FDekI7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNSLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0tBQ2xEO0lBRUQsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUE7SUFFdkIsTUFBTSxZQUFZLEdBQUcsR0FBRyxFQUFFO1FBQ3RCLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUE7UUFDNUMsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtRQUUvRCxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsT0FBTyxVQUFVLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxRQUFRLEVBQUUsQ0FBQyxDQUFBO1FBQ3pGLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzlCLENBQUMsQ0FBQTtJQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQTtJQUNoQyxNQUFNLEdBQUcsR0FBRywyQ0FBYSxRQUFRLEVBQUMsQ0FBQTtJQUNsQyxJQUFJLE9BQU8sR0FBRyxLQUFLLFVBQVUsRUFBRTtRQUMzQixLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQTtRQUNsQyxZQUFZLEVBQUUsQ0FBQTtRQUNkLE1BQU0sR0FBRyxFQUFFLENBQUE7S0FDZDtTQUFNLElBQUksT0FBTyxHQUFHLENBQUMsT0FBTyxLQUFLLFVBQVUsRUFBRTtRQUMxQyxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQTtRQUNoQyxZQUFZLEVBQUUsQ0FBQTtRQUNkLE1BQU0sR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFBO0tBQ3RCO1NBQU07UUFDSCxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUE7S0FDMUQ7SUFDRCxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtBQUM3QixDQUFDLENBQUEsQ0FBQSJ9