Skip to content

Commit

Permalink
signing transactions
Browse files Browse the repository at this point in the history
  • Loading branch information
jaredcosulich committed Apr 13, 2023
1 parent b73cd06 commit 98c94c6
Show file tree
Hide file tree
Showing 4 changed files with 72 additions and 5 deletions.
65 changes: 65 additions & 0 deletions components/SignTransaction.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
import { useCallback, useEffect, useState } from 'react'

import { ethos , TransactionBlock} from 'ethos-connect';
import { ErrorMessage, SuccessMessage } from '.';
import { ETHOS_EXAMPLE_CONTRACT } from '../lib/constants';

const SignTransaction = () => {
const { wallet } = ethos.useWallet();

const [signSuccess, setSignSuccess] = useState(false);
const [signError, setSignError] = useState(false);

const signTransaction = useCallback(async () => {
const transactionBlock = new TransactionBlock();
transactionBlock.moveCall({
target: `${ETHOS_EXAMPLE_CONTRACT}::ethos_example_nft::mint_to_sender`,
arguments: [
transactionBlock.pure("Ethos Example NFT"),
transactionBlock.pure("A sample NFT from Ethos Wallet."),
transactionBlock.pure("https://ethoswallet.xyz/assets/images/ethos-email-logo.png"),
]
})

const response = await wallet?.signTransactionBlock({ transactionBlock });
if (!response) {
setSignError(true);
} else {
console.log("Sign result: ", response)
setSignSuccess(true);
}

}, [wallet]);

const reset = useCallback(() => {
setSignSuccess(false);
setSignError(false);
}, [])

useEffect(() => {
reset();
}, [reset])

return (
<div className='flex flex-col gap-6'>
{signSuccess && (
<SuccessMessage reset={reset}>
Check the developer console to see the result.
</SuccessMessage>
)}
{signError && (
<ErrorMessage reset={reset}>
Signing did not work. See the developer console for additional information.
</ErrorMessage>
)}
<button
className="mx-auto px-5 py-3 border border-transparent text-base font-medium rounded-md text-white bg-indigo-600 hover:bg-indigo-700"
onClick={signTransaction}
>
Sign transaction
</button>
</div>
)
}

export default SignTransaction;
2 changes: 2 additions & 0 deletions components/WalletActions.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { useCallback, useState } from 'react';
import { PrimaryButton, Modify, MergeCoins, Sign, Transfer, Transfer2, Clone, Burn, MintCoin, BurnCoin } from '.';
import SignTransaction from './SignTransaction';

const WalletActions = () => {
const [showActions, setShowActions] = useState(false);
Expand All @@ -16,6 +17,7 @@ const WalletActions = () => {
{showActions && (
<div className='grid grid-cols-2 gap-6 pt-6'>
<Sign />
<SignTransaction />
<Clone />
<Transfer />
{/* <Transfer2 /> */}
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"dependencies": {
"@heroicons/react": "^1.0.6",
"@mysten/sui.js": "^0.32.1",
"ethos-connect": "^0.0.134",
"ethos-connect": "^0.0.136",
"next": "^13.2.4",
"react": "^18.2.0",
"react-dom": "^18.2.0",
Expand Down
8 changes: 4 additions & 4 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -1474,10 +1474,10 @@ esutils@^2.0.2:
resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==

ethos-connect@^0.0.134:
version "0.0.134"
resolved "https://registry.yarnpkg.com/ethos-connect/-/ethos-connect-0.0.134.tgz#ce3bf1e05fc112d41526a368adc99b0513ab6e2b"
integrity sha512-BjeNqz3R44B+pgw6t1A1rw9PB30cEi9wpxM2/ljo6s14OYKo41zSko2DYwQoBRN2sYPudsHUBs17f8NDV/WvlA==
ethos-connect@^0.0.136:
version "0.0.136"
resolved "https://registry.yarnpkg.com/ethos-connect/-/ethos-connect-0.0.136.tgz#85574a78f38cb96bb6cd588c6296b6f6b22aa51c"
integrity sha512-m1UbhyqWxv/KYa3Rz+8VaiWMm41EAxfeg+dtSVIMhG5okNTB5+SmJPQJbrdpOBRWFoNXtiJg1EwHpWlR9vKA3Q==
dependencies:
"@mysten/sui.js" "^0.32.1"
"@mysten/wallet-adapter-all-wallets" "^0.5.3"
Expand Down

0 comments on commit 98c94c6

Please sign in to comment.