UNPKG

@broxus/js-bridge-essentials

Version:

Bridge JavaScript Essentials library

81 lines (80 loc) 4.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TokenTransferSolTvmEventUtils = exports.TokenTransferSolTvmStatus = void 0; const js_core_1 = require("@broxus/js-core"); const contracts_1 = require("../../models/token-transfer-sol-tvm-event/contracts"); var TokenTransferSolTvmStatus; (function (TokenTransferSolTvmStatus) { TokenTransferSolTvmStatus["Initializing"] = "0"; TokenTransferSolTvmStatus["Pending"] = "1"; TokenTransferSolTvmStatus["Confirmed"] = "2"; TokenTransferSolTvmStatus["Rejected"] = "3"; })(TokenTransferSolTvmStatus || (exports.TokenTransferSolTvmStatus = TokenTransferSolTvmStatus = {})); /** * @deprecated Use SolTvmBaseEventUtils instead */ class TokenTransferSolTvmEventUtils { static async getEventInitData(connection, eventAddress, cachedState) { const state = cachedState ?? await (0, js_core_1.getFullContractState)(connection, eventAddress); const result = await (0, contracts_1.tokenTransferSolTvmEventContract)(connection, eventAddress) .methods.getEventInitData({ answerId: 0 }) .call({ cachedState: state, responsible: true }); return { configuration: result.value0.configuration, staking: result.value0.staking, voteData: { accountSeed: result.value0.voteData.accountSeed, blockTime: result.value0.voteData.blockTime, eventData: result.value0.voteData.eventData, slot: result.value0.voteData.slot, txSignature: result.value0.voteData.txSignature, }, }; } static async getDecodedData(connection, eventAddress, cachedState) { const state = cachedState ?? await (0, js_core_1.getFullContractState)(connection, eventAddress); const result = await (0, contracts_1.tokenTransferSolTvmEventContract)(connection, eventAddress) .methods.getDecodedData({ answerId: 0 }) .call({ cachedState: state, responsible: true }); return { receiverAddress: result.receiver_addr, senderAddress: result.sender_addr, tokens: result.tokens, }; } static async getDetails(connection, eventAddress, cachedState) { const state = cachedState ?? await (0, js_core_1.getFullContractState)(connection, eventAddress); const result = await (0, contracts_1.tokenTransferSolTvmEventContract)(connection, eventAddress) .methods.getDetails({ answerId: 0 }) .call({ cachedState: state, responsible: true }); return { balance: result.balance, confirms: result._confirms, empty: result.empty, eventInitData: { configuration: result._eventInitData.configuration, staking: result._eventInitData.staking, voteData: { accountSeed: result._eventInitData.voteData.accountSeed, blockTime: result._eventInitData.voteData.blockTime, eventData: result._eventInitData.voteData.eventData, slot: result._eventInitData.voteData.slot, txSignature: result._eventInitData.voteData.txSignature, }, }, initializer: result._initializer, meta: result._meta, rejects: result._rejects, requiredVotes: Number(result._requiredVotes), status: result._status, }; } static async roundNumber(connection, eventAddress, cachedState) { const state = cachedState ?? await (0, js_core_1.getFullContractState)(connection, eventAddress); const result = await (0, contracts_1.tokenTransferSolTvmEventContract)(connection, eventAddress) .methods.round_number() .call({ cachedState: state }); return Number(result.round_number); } } exports.TokenTransferSolTvmEventUtils = TokenTransferSolTvmEventUtils;