Skip to content

Commit

Permalink
Merge pull request #4 from cosmology-tech/use-interchain-react
Browse files Browse the repository at this point in the history
Use interchain react
  • Loading branch information
sdqede authored Dec 23, 2024
2 parents a2a43c8 + 1728195 commit 38c56d0
Showing 1 changed file with 34 additions and 19 deletions.
53 changes: 34 additions & 19 deletions components/SendMsg.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@ import { Box, Text, Button, Link } from "@interchain-ui/react";
import { useState } from "react";
import { useChain } from "@interchain-kit/react";
import { defaultAssetList, defaultChain, defaultChainName } from "@/config";
import { createSend } from 'interchainjs/cosmos/bank/v1beta1/tx.rpc.func'
import useBalance from "@/hooks/useBalance";
import { useSend } from "interchain-react/cosmos/bank/v1beta1/tx.rpc.func";
import { defaultContext } from "@tanstack/react-query";

export default function SendMsg() {
const coin = defaultAssetList?.assets[0];
Expand All @@ -23,7 +24,26 @@ export default function SendMsg() {
const [txHash, setTxHash] = useState<string | null>(null);
const [error, setError] = useState<string | null>(null);

const send = createSend(signingClient)
const { mutate: send, isSuccess: isSendSuccess } = useSend({
clientResolver: signingClient,
options: {
context: defaultContext,
onSuccess: (data) => {
console.log('signAndBroadcast', data)
if (data.code===0) {
setTxHash((data as any).hash);
} else {
setError(data.rawLog||JSON.stringify(data||{}));
}
setSending(false);
},
onError: (error) => {
console.error('signAndBroadcast', error)
setError(error.message);
setSending(false);
}
},
});

const {
balance
Expand All @@ -46,23 +66,18 @@ export default function SendMsg() {
gas: "1000000",
};

send(address, {
fromAddress: address,
toAddress: address,
amount: [{ denom, amount: '1' }]
}, fee, 'using interchainjs')
.then((data) => {
console.log('signAndBroadcast', data)
if (data.code===0) {
setTxHash((data as any).hash);
} else {
setError(data.rawLog||JSON.stringify(data||{}));
}
setSending(false);
}).catch((error) => {
console.log('signAndBroadcast', error)
setError(error.message || 'Unknown error');
setSending(false);
send({
signerAddress: address,
message: {
fromAddress: address,
toAddress: address,
amount: [{
denom,
amount: '1',
}]
},
fee,
memo: 'Send from interchain-react'
})
}

Expand Down

0 comments on commit 38c56d0

Please sign in to comment.