UNPKG

@martiandao/aptos-web3-bip44.js

Version:
108 lines (84 loc) 5.9 kB
@martiandao/aptos-web3-bip44.js / [Exports](modules.md) # Martian aptos-web3.js Docs # Introduction web3.js library for Aptos @martiandao/aptos-web3.js is an npm module which allows developers to communicate with the Aptos core code. This module is built on top of [Typescript SDK of Aptos](https://github.com/aptos-labs/aptos-core/tree/main/ecosystem/typescript/sdk). # Import ``` npm i @martiandao/aptos-web3-bip44.js.js ``` # Supported functions 1. createWallet: create a new wallet 2. importWallet: import an existing wallet 3. airdrop: airdrop test coins into an account 4. getBalance: get the balance of an account 5. transfer: transfer coins from one account to another 6. getSentEvents: get Sent events of an account 7. getReceivedEvents: get Received events of an account 8. createNFTCollection: create an NFT collection 9. createNFT: create an NFT 10. offerNFT: offer an NFT to a receiver 11. claimNFT: claim an NFT offered by a sender 12. cancelNFTOffer: cancel an outgoing NFT offer 13. getEventStreams: get events of a particular handle struct and field name from the [event stream](https://fullnode.devnet.aptoslabs.com/spec.html#/operations/get_events_by_event_handle) 14. getTokenIds: get the tokenIds of all the tokens that an account holds 15. getTokens: get the tokens that an account holds 16. rotateAuthKey: rotate authentication key ## Functions and their args, return values and description | Name | Argument: [name: type] | Returns | Description | | --- | --- | --- | --- | | createWallet | None | "code": string "address key": string | This method is used to create new wallet. It returns “code” which is a secret phrase and “address key” which is public address of the wallet | | importWallet | code: string | "address key": string | This method is used to import wallet from mnemonic/secret phrase. It returns “address key” which is public address of the wallet | | airdrop | code: string amount: number | None | This method is used to add coins in the wallet. | | getBalance | address: string | balance: Integer | This method is used to get available balance of any address. It returns integer | | transfer | code: string recipient_address: string amount: number | None | This method is used to transfer fund from one account to another. It returns Nothing | | getSentEvents | address: string | [Click Here](https://fullnode.devnet.aptoslabs.com/accounts/e1acaa6eadbde51a0070327f095a1253deb1bbe919369b971621156fa18bd770/events/0x1::TestCoin::TransferEvents/sent_events)| This method is used to fetch sent events done by the wallet. Please hit the url given in the returns field to see what it return | | getReceivedEvents | address: string |[Click Here](https://fullnode.devnet.aptoslabs.com/accounts/e1acaa6eadbde51a0070327f095a1253deb1bbe919369b971621156fa18bd770/events/0x1::TestCoin::TransferEvents/received_events) | This method is used to fetch received events to the wallet. Please hit the url given in the returns field to see what it return | | createNFTCollection | code: string name: string description: string uri: string | hash: string | This method is used to create collection inside the wallet/account. It returns submission hash | | createNFT | code: string collection_name: string name: string description: string supply: number uri: string | hash: string | This method is used to create nft inside collection. It returns submission hash | | offerNFT | code: string receiver_address: string creator_address: string collection_name: string token_name: string amount: number | hash: string | This method is used to offer nft to another address. | | claimNFT | code: string sender_address: string creator_address: string collection_name: string token_name: string | hash: string | This method is used to claim nft offered | | getEventStream | address: string event_handle_struct: string field_name: string | response: object | This is used to get the events | | getTokenIds | address: string | tokenIds: list of objects | This is used to get the token IDs of an account | | getEventStream | address: string | tokens: list of objects | This is used to get the tokens of an account | | rotateAuthKey | code: string new_auth_key: string | hash: string | This method is used to rotate the authentication key. The new private/ public key pair used to derive the new auth key will be used to sign the account after this function call completes | # Usage Example Wallet ``` const aptosWeb3 = require('@martiandao/aptos-web3.js'); const walletClient = new aptosWeb3.WalletClient(); async function main() { // create new wallet (10 test tokens airdropped by default) console.log("\n=== Wallet Creation ==="); const wallet = await walletClient.createWallet(); const address = wallet['address key']; const signingKey = wallet['code']; console.log('Address:', address); console.log('Secret recovery phrase:', signingKey); // airdrop test tokens console.log("\n=== Airdrop ==="); await walletClient.airdrop(wallet['code'],5000); console.log('Balance:', await walletClient.getBalance(address)); // transfer tokens console.log("\n=== Transfer ==="); const receiver_address = "d27307a2ccf76b4694c2b8f2ddf032fd487dbc82cb32e8b264026a9aee14df8d"; await walletClient.transfer(signingKey, receiver_address, 420); console.log('Balance:', await walletClient.getBalance(address)); // get wallet transaction history console.log("\n=== Wallet history ==="); const received_history = await walletClient.getReceivedEvents(address); const sent_history = await walletClient.getSentEvents(address); console.log('Received History:', received_history); console.log('Sent History:', sent_history); } main() ``` # To Build ``` npm install npm run build ``` # Tests Jest tests allow to test whether each function is working as it supposed to. ``` npm run test ```