From bcf7f45b44bd0b8d40be00afdc62740a794f92a2 Mon Sep 17 00:00:00 2001 From: abefernan <44572727+abefernan@users.noreply.github.com> Date: Mon, 5 Jun 2023 08:21:31 +0200 Subject: [PATCH] Add TxMsgTransfer helpers --- lib/txMsgHelpers.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/lib/txMsgHelpers.ts b/lib/txMsgHelpers.ts index c9da8ec..e4e3bbc 100644 --- a/lib/txMsgHelpers.ts +++ b/lib/txMsgHelpers.ts @@ -10,6 +10,7 @@ import { TxMsgRedelegate, TxMsgSend, TxMsgSetWithdrawAddress, + TxMsgTransfer, TxMsgUndelegate, } from "../types/txMsg"; @@ -85,6 +86,18 @@ const isTxMsgCreateVestingAccount = (msg: TxMsg | EncodeObject): msg is TxMsgCre !!msg.value.endTime && typeof msg.value.delayed === "boolean"; +const isTxMsgTransfer = (msg: TxMsg | EncodeObject): msg is TxMsgTransfer => + msg.typeUrl === "/ibc.applications.transfer.v1.MsgTransfer" && + "value" in msg && + "sourcePort" in msg.value && + "sourceChannel" in msg.value && + "sender" in msg.value && + "receiver" in msg.value && + !!msg.value.sourcePort && + !!msg.value.sourceChannel && + !!msg.value.sender && + !!msg.value.receiver; + const gasOfMsg = (msgType: MsgType): number => { switch (msgType) { case "send": @@ -101,6 +114,8 @@ const gasOfMsg = (msgType: MsgType): number => { return 100_000; case "createVestingAccount": return 100_000; + case "msgTransfer": + return 100_000; default: throw new Error("Unknown msg type"); } @@ -148,6 +163,7 @@ export { isTxMsgClaimRewards, isTxMsgSetWithdrawAddress, isTxMsgCreateVestingAccount, + isTxMsgTransfer, gasOfMsg, gasOfTx, dbTxFromJson,