UNPKG

@ton-actions/tondev-contest

Version:

TON Dev Environment

62 lines 2.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.runCommand = exports.findControllerAndCommandByAlias = exports.controllers = void 0; const clang_1 = require("./clang"); const solidity_1 = require("./solidity"); // import {TestSuite} from "./ts"; const js_1 = require("./js"); const se_1 = require("./se"); const se_nd_1 = require("./se-nd"); const tonos_cli_1 = require("./tonos-cli"); const ts4_1 = require("./ts4"); const core_1 = require("../core"); const signer_1 = require("./signer"); const network_1 = require("./network"); const contract_1 = require("./contract"); exports.controllers = [ clang_1.Clang, solidity_1.Solidity, se_1.SE, se_nd_1.SENonDocker, network_1.NetworkTool, signer_1.SignerTool, contract_1.Contract, js_1.JsApps, tonos_cli_1.TONOS, ts4_1.TestSuite4, ]; function findControllerAndCommandByAlias(alias) { alias = alias.trim().toLowerCase(); for (const controller of exports.controllers) { for (const command of controller.commands) { if (controller.alias && command.alias) { if (`${controller.alias}${command.alias}` === alias) { return { controller, command, }; } } } } return undefined; } exports.findControllerAndCommandByAlias = findControllerAndCommandByAlias; async function runCommand(terminal, name, args) { const [controllerName, commandName] = name .toLowerCase() .split(" ") .map(x => x.trim()) .filter(x => x !== ""); const controller = exports.controllers.find(x => core_1.matchName(x, controllerName)); if (!controller) { throw new Error(`Controller ${controllerName} not found`); } const command = controller.commands.find(x => core_1.matchName(x, commandName)); if (!command) { throw new Error(`Command ${commandName} not found in controller ${controllerName}`); } await command.run(terminal, args); } exports.runCommand = runCommand; //# sourceMappingURL=index.js.map