@broxus/js-bridge-essentials
Version:
Bridge JavaScript Essentials library
84 lines (83 loc) • 4.24 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TokenTransferEvmTvmEventUtils = exports.TokenTransferEvmTvmStatus = void 0;
const js_core_1 = require("@broxus/js-core");
const contracts_1 = require("../../models/token-transfer-evm-tvm-event/contracts");
var TokenTransferEvmTvmStatus;
(function (TokenTransferEvmTvmStatus) {
TokenTransferEvmTvmStatus["Initializing"] = "0";
TokenTransferEvmTvmStatus["Pending"] = "1";
TokenTransferEvmTvmStatus["Confirmed"] = "2";
TokenTransferEvmTvmStatus["Rejected"] = "3";
})(TokenTransferEvmTvmStatus || (exports.TokenTransferEvmTvmStatus = TokenTransferEvmTvmStatus = {}));
/**
* @deprecated Use EvmTvmBaseEventUtils instead
*/
class TokenTransferEvmTvmEventUtils {
static async getEventInitData(connection, eventAddress, cachedState) {
const state = cachedState ?? await (0, js_core_1.getFullContractState)(connection, eventAddress);
const result = await (0, contracts_1.tokenTransferEvmTvmEventContract)(connection, eventAddress)
.methods.getEventInitData({ answerId: 0 })
.call({ cachedState: state, responsible: true });
return {
chainId: result.value0.chainId,
configuration: result.value0.configuration,
staking: result.value0.staking,
voteData: {
eventBlock: Number(result.value0.voteData.eventBlock),
eventBlockNumber: Number(result.value0.voteData.eventBlockNumber),
eventData: result.value0.voteData.eventData,
eventIndex: Number(result.value0.voteData.eventIndex),
eventTransaction: result.value0.voteData.eventTransaction,
},
};
}
static async getDecodedData(connection, eventAddress, cachedState) {
const state = cachedState ?? await (0, js_core_1.getFullContractState)(connection, eventAddress);
const result = await (0, contracts_1.tokenTransferEvmTvmEventContract)(connection, eventAddress)
.methods.getDecodedData({ answerId: 0 })
.call({ cachedState: state, responsible: true });
return {
addr: result.owner_addr,
ownerAddress: result.owner_address,
tokens: result.tokens,
wid: result.wid,
};
}
static async getDetails(connection, eventAddress, cachedState) {
const state = cachedState ?? await (0, js_core_1.getFullContractState)(connection, eventAddress);
const result = await (0, contracts_1.tokenTransferEvmTvmEventContract)(connection, eventAddress)
.methods.getDetails({ answerId: 0 })
.call({ cachedState: state, responsible: true });
return {
balance: result.balance,
confirms: result._confirms,
empty: result.empty,
eventInitData: {
chainId: result._eventInitData.chainId,
configuration: result._eventInitData.configuration,
staking: result._eventInitData.staking,
voteData: {
eventBlock: Number(result._eventInitData.voteData.eventBlock),
eventBlockNumber: Number(result._eventInitData.voteData.eventBlockNumber),
eventData: result._eventInitData.voteData.eventData,
eventIndex: Number(result._eventInitData.voteData.eventIndex),
eventTransaction: result._eventInitData.voteData.eventTransaction,
},
},
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.tokenTransferEvmTvmEventContract)(connection, eventAddress)
.methods.round_number()
.call({ cachedState: state });
return Number(result.round_number);
}
}
exports.TokenTransferEvmTvmEventUtils = TokenTransferEvmTvmEventUtils;