diff --git a/challenge/index.ts b/challenge/index.ts index e459cef..20ac863 100644 --- a/challenge/index.ts +++ b/challenge/index.ts @@ -1,16 +1,16 @@ import algosdk from "algosdk"; -import * as algokit from '@algorandfoundation/algokit-utils'; +import * as algokit from "@algorandfoundation/algokit-utils"; // Set up algod client -const algodClient = algokit.getAlgoClient() +const algodClient = algokit.getAlgoClient(); // Retrieve 2 accounts from localnet kmd -const sender = await algokit.getLocalNetDispenserAccount(algodClient) +const sender = await algokit.getLocalNetDispenserAccount(algodClient); const receiver = await algokit.mnemonicAccountFromEnvironment( - {name: 'RECEIVER', fundWith: algokit.algos(100)}, - algodClient, - ) + { name: "RECEIVER", fundWith: algokit.algos(100) }, + algodClient +); /* TODO: edit code below @@ -27,25 +27,31 @@ When solved correctly, the console should print out the following: const suggestedParams = await algodClient.getTransactionParams().do(); const ptxn1 = algosdk.makePaymentTxnWithSuggestedParamsFromObject({ - from: sender.addr, - suggestedParams, - to: receiver.addr, - amount: 1000000,// 1 ALGO + from: sender.addr, + suggestedParams, + to: receiver.addr, + amount: 1000000, // 1 ALGO }); /// const ptxn2 = algosdk.makePaymentTxnWithSuggestedParamsFromObject({ - from: sender.addr, - suggestedParams, - to: receiver.addr, - amount: 2000000, // 2 ALGOs + from: sender.addr, + suggestedParams, + to: receiver.addr, + amount: 2000000, // 2 ALGOs }); -const atc = new algosdk.AtomicTransactionComposer() -atc.addTransaction({txn: ptxn1, signer: sender}) -atc.addTransaction({txn: ptxn2, signer: sender}) +const senderSigner = algosdk.makeBasicAccountTransactionSigner(sender); -const result = await algokit.sendAtomicTransactionComposer({atc:atc, sendParams: {suppressLog:true}}, algodClient) -console.log(`The first payment transaction sent ${result.transactions[0].amount} microAlgos and the second payment transaction sent ${result.transactions[1].amount} microAlgos`) +const atc = new algosdk.AtomicTransactionComposer(); +atc.addTransaction({ txn: ptxn1, signer: senderSigner }); +atc.addTransaction({ txn: ptxn2, signer: senderSigner }); +const result = await algokit.sendAtomicTransactionComposer( + { atc: atc, sendParams: { suppressLog: true } }, + algodClient +); +console.log( + `The first payment transaction sent ${result.transactions[0].amount} microAlgos and the second payment transaction sent ${result.transactions[1].amount} microAlgos` +);