UNPKG

tonweb

Version:

TonWeb - JavaScript API for TON blockchain

69 lines (52 loc) 2.46 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Wallet Example</title> </head> <body> <script src="../dist/tonweb.js"></script> <script> async function example() { const nacl = TonWeb.utils.nacl; // use nacl library for key pairs const tonweb = new TonWeb(); const keyPair = nacl.sign.keyPair(); // create new random key pair let secretKey = keyPair.secretKey; let wallet = tonweb.wallet.create({publicKey: keyPair.publicKey}); // create interface to wallet smart contract (wallet v3 by default) // OR wallet = tonweb.wallet.create({address: 'EQDjVXa_oltdBP64Nc__p397xLCvGm2IcZ1ba7anSW0NAkeP'}); // if your know only address at this moment secretKey = TonWeb.utils.hexToBytes('cdd624b8c960fc419d207689dd4c3bcadca7a0df53b664f97ac06454efe90c4b1dc1391e4affae5fa96b194b97de179926d791107846d80dacf700a9db1e8f7c'); const address = await wallet.getAddress(); console.log('address=', address.toString(true, true, true, false)); const seqno = await wallet.methods.seqno().call(); // call get-method `seqno` of wallet smart contract console.log('seqno=', seqno); // DEPLOY const deploy = wallet.deploy(secretKey); // deploy method const deployFee = await deploy.estimateFee() // get estimate fee of deploy console.log(deployFee); const deploySended = await deploy.send() // deploy wallet contract to blockchain console.log(deploySended); const deployQuery = await deploy.getQuery(); // get deploy query Cell console.log(deployQuery); // TRANSFER COINS const transfer = wallet.methods.transfer( { secretKey: keyPair.secretKey, toAddress: 'EQDjVXa_oltdBP64Nc__p397xLCvGm2IcZ1ba7anSW0NAkeP', amount: TonWeb.utils.toNano(0.01), // 0.01 TON seqno: seqno, payload: 'Hello', sendMode: 3, } ); const transferFee = await transfer.estimateFee(); // get estimate fee of transfer console.log(transferFee); const transferSended = await transfer.send(); // send transfer query to blockchain console.log(transferSended); const transferQuery = await transfer.getQuery(); // get transfer query Cell console.log(transferQuery); } example(); </script> </body> </html>