1.7.0-beta.12 • Published 4 months ago
@xpla/xpla v1.7.0-beta.12
@xpla/xpla
Transaction codec and client to communicate with any xpla blockchain.
Usage
Install
npm install @xpla/xpla
Example
Taking direct
signing mode as example.
import { EthSecp256k1Auth } from "@interchainjs/auth/ethSecp256k1"
import { HDPath } from "@interchainjs/types";
import { Network } from "@xpla/xpla/defaults"
import { DirectSigner } from "@xpla/xpla/signers/direct"
import { toEncoders } from "@interchainjs/cosmos/utils"
import { MsgSend } from "@xpla/xplajs/cosmos/bank/v1beta1/tx"
import { StdFee } from "@interchainjs/types"
import { MessageComposer } from "@xpla/xplajs/cosmos/bank/v1beta1/tx.registry"
const [auth] = EthSecp256k1Auth.fromMnemonic("<MNEMONIC>", [HDPath.eth().toString()])
const signer = new DirectSigner(auth, toEncoders(MsgSend), Network.Testnet.rpc)
const msg = MsgSend.fromPartial({
amount: [{amount: "1", denom: "axpla"}],
fromAddress: wallet.accounts[0].address,
toAddress: "xpla1888g76xr3phk7qkfknnn8hvxyzfj0e2vuh4jmw"
})
const fee: StdFee = {
amount: [{amount: "28000000000000000", denom: "axpla"}],
gas: "100000"
}
const { send } = MessageComposer.fromPartial
const msgs = [send(msg)]
const fee: StdFee = await signer.signAndBroadcast({messages: [msgs]})
const res = await signer.signAndBroadcast({messages: [msgs], fee})
console.log(res.hash) // the hash of TxRaw
Taking amino
signing mode as example.
import { EthSecp256k1Auth } from "@interchainjs/auth/ethSecp256k1"
import { HDPath } from "@interchainjs/types";
import { Network } from "@xpla/xpla/defaults"
import { AminoSigner } from "@xpla/xpla/signers/amino"
import { toEncoders } from "@interchainjs/cosmos/utils"
import { MsgSend } from "@xpla/xplajs/cosmos/bank/v1beta1/tx"
import { StdFee } from "@interchainjs/types"
import { MessageComposer } from "@xpla/xplajs/cosmos/bank/v1beta1/tx.registry"
const [auth] = EthSecp256k1Auth.fromMnemonic("<MNEMONIC>", [HDPath.eth().toString()])
const signer = new AminoSigner(auth, toEncoders(MsgSend), toConverters(MsgSend), Network.Testnet.rpc)
const msg = MsgSend.fromPartial({
amount: [{amount: "1", denom: "axpla"}],
fromAddress: wallet.accounts[0].address,
toAddress: "xpla1888g76xr3phk7qkfknnn8hvxyzfj0e2vuh4jmw"
})
const fee: StdFee = {
amount: [{amount: "28000000000000000", denom: "axpla"}],
gas: "100000"
}
const { send } = MessageComposer.fromPartial
const msgs = [send(msg)]
const fee: StdFee = await signer.signAndBroadcast({messages: [msgs]})
const res = await signer.signAndBroadcast({messages: [msgs], fee})
console.log(res.hash) // the hash of TxRaw
- See @interchainjs/auth to construct
<AUTH>
Implementations
- direct signer from
@interchainjs/xpla/signers/direct
- amino signer from
@interchainjs/xpla/signers/amino
License
MIT License (MIT) & Apache License
1.7.0-beta.12
4 months ago
1.7.0-beta.11
4 months ago
1.7.0-beta.10
6 months ago
1.7.0-beta.7
6 months ago
1.7.0-beta.6
6 months ago
1.7.0-beta.5
6 months ago
1.7.0-beta.4
6 months ago
1.7.0-beta.3
6 months ago
1.7.0-beta.2
6 months ago
1.7.0-beta.1
6 months ago