@simbachain/simbats
Version:
TypeScript SDK for SIMBA Chain
45 lines • 1.79 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SimbaContractSync = void 0;
const config_1 = require("./config");
const simba_contract_1 = require("./simba_contract");
const request_handler_1 = require("./request_handler");
const simba_sync_1 = require("./simba_sync");
/**
* extends SimbaContract, for submitting synchronous contract methods
*/
class SimbaContractSync extends simba_contract_1.SimbaContract {
constructor(baseApiUrl, appName, contractName) {
super(baseApiUrl, appName, contractName);
this.paramsRestricted = null;
this.baseApiUrl = baseApiUrl;
this.appName = appName;
this.contractName = contractName;
this.requestHandler = new request_handler_1.RequestHandler(this.baseApiUrl);
this.simbaSync = new simba_sync_1.SimbaSync(this.baseApiURL);
}
/**
* submit method synchronously
* @param methodName
* @param inputs
* @param filePaths
* @param validateParams
* @returns {Promise<AxiosResponse<any> | Record<any, any>>}
*/
async submitMethod(methodName, inputs, filePaths, validateParams = true) {
const params = {
methodName,
inputs,
filePaths,
};
config_1.SimbaConfig.log.debug(`:: SIMBA : ENTER : params : ${JSON.stringify(params)}`);
if (validateParams && inputs) {
await this.validateParams(methodName, inputs);
}
const res = await this.simbaSync.submitContractMethod(this.appName, this.contractName, methodName, inputs, filePaths);
config_1.SimbaConfig.log.debug(`:: SIMBA : EXIT : res : ${res}`);
return res;
}
}
exports.SimbaContractSync = SimbaContractSync;
//# sourceMappingURL=simba_contract_sync.js.map