1.0.2 • Published 9 months ago
@catton/connect v1.0.2
Catton connect TON
How to use
Connect with TonConnectUI
import {getHttpEndpoint} from '@orbs-network/ton-access'
import {Address, Cell, JettonWallet, toNano, TonClient} from '@ton/ton'
import {TonConnectUI} from '@tonconnect/ui'
import {useTonConnectUI} from '@tonconnect/ui-react'
import {networkProvider} from '@catton/connect'
async function init() {
/** Init TonConnectUI */
// const tonConnectUI = new TonConnectUI() // manual init
const [tonConnectUI, setOptions] = useTonConnectUI() // from @tonconnect/ui-react
const endpoint = await getHttpEndpoint({network: 'testnet'})
const tonClient = new TonClient({endpoint})
const network = networkProvider(tonClient, tonConnectUI)
await network.connect()
// send message with max 4 messages
network.internals([
{
to: Address.parse('address_1'),
value: toNano('1'),
body: Cell.EMPTY,
},
{
to: Address.parse('address_2'),
value: toNano('2'),
body: Cell.EMPTY,
},
])
const wallet = network.open(JettonWallet.create(Address.parse('jetton_wallet_address')))
const balance = await wallet.getBalance()
console.log(balance)
return network
}
Connect with TonConnect
import {getHttpEndpoint} from '@orbs-network/ton-access'
import {TonClient} from '@ton/ton'
import {networkProvider} from '@catton/connect'
async function init() {
const endpoint = await getHttpEndpoint({network: 'testnet'})
const tonClient = new TonClient({endpoint})
const network = networkProvider(tonClient)
await network.connect()
}
Connect with Mnemonic
import {getHttpEndpoint} from '@orbs-network/ton-access'
import {TonClient} from '@ton/ton'
import {mnemonicToPrivateKey} from '@ton/crypto'
import {networkProvider} from '@catton/connect'
async function init() {
const MNEMONIC = process.env.MNEMONIC ?? ''
const keypair = await mnemonicToPrivateKey(MNEMONIC.split(' '))
const endpoint = await getHttpEndpoint({network: 'testnet'})
const tonClient = new TonClient({endpoint})
const network = networkProvider(tonClient, {version: 'v5r1', secretKey: keypair.secretKey})
await network.connect()
console.log(network.sender().address?.toString())
console.log(network.sender().address?.toString({testOnly: true, urlSafe: true, bounceable: false}))
console.log(network.sender().address?.toString({testOnly: false, urlSafe: true, bounceable: false}))
}