|
@@ -1,9 +1,14 @@
|
|
|
import {
|
|
|
APIRequester,
|
|
|
bcs,
|
|
|
+ Coin,
|
|
|
+ Height,
|
|
|
LCDClient,
|
|
|
MnemonicKey,
|
|
|
Msg,
|
|
|
+ MsgCreateBridge,
|
|
|
+ MsgSetBridgeInfo,
|
|
|
+ MsgTransfer,
|
|
|
Wallet,
|
|
|
} from '@initia/initia.js'
|
|
|
import { getProxyUrl } from './utils'
|
|
@@ -11,6 +16,7 @@ import { getProxyUrl } from './utils'
|
|
|
export abstract class BaseClient {
|
|
|
key: MnemonicKey
|
|
|
lcd: LCDClient
|
|
|
+ tur: LCDClient
|
|
|
wallet: Wallet
|
|
|
protected constructor(mnemonic: string, useProxy: boolean = false) {
|
|
|
this.key = new MnemonicKey({
|
|
@@ -26,6 +32,14 @@ export abstract class BaseClient {
|
|
|
useProxy ? requester : null,
|
|
|
)
|
|
|
|
|
|
+ this.tur = new LCDClient(
|
|
|
+ 'https://maze-rest-c9796789-107d-49ab-b6de-059724d2a91d.ue1-prod.newmetric.xyz/',
|
|
|
+ {
|
|
|
+ chainId: 'birdee-1',
|
|
|
+ },
|
|
|
+ useProxy ? requester : null,
|
|
|
+ )
|
|
|
+
|
|
|
this.wallet = new Wallet(this.lcd, this.key)
|
|
|
}
|
|
|
|
|
@@ -41,6 +55,10 @@ export abstract class BaseClient {
|
|
|
const balances = await this.lcd.bank.balance(this.key.accAddress)
|
|
|
return balances[0].toArray()
|
|
|
}
|
|
|
+ async checkTurBalance() {
|
|
|
+ const balances = await this.tur.bank.balance(this.key.accAddress)
|
|
|
+ console.log(JSON.stringify(balances))
|
|
|
+ }
|
|
|
|
|
|
async getUsdcAmount() {
|
|
|
const tokens = await this.checkBalance()
|
|
@@ -49,23 +67,51 @@ export abstract class BaseClient {
|
|
|
}
|
|
|
|
|
|
async bridge() {
|
|
|
+ const msgs = [
|
|
|
+ new MsgTransfer(
|
|
|
+ 'transfer', // port
|
|
|
+ 'channel-0', // src channel
|
|
|
+ new Coin('utuc', 1000000), // amount
|
|
|
+ this.key.accAddress, // sender
|
|
|
+ '0x42cd8467b1c86e59bf319e5664a09b6b5840bb3fac64f5ce690b5041c530565a',
|
|
|
+ // receiver
|
|
|
+ // you have to provide one of timeout
|
|
|
+ new Height(0, 0), // timeout height
|
|
|
+ '1716264011493000000', // timeout timestamp
|
|
|
+ '{"move":{"message":{"module_address":"0x42cd8467b1c86e59bf319e5664a09b6b5840bb3fac64f5ce690b5041c530565a","module_name":"swap_transfer","function_name":"mixed_route_swap_to","type_args":[],"args":["KxToiwb36zAB/GsetggCNYVVpN+xpO02UHMJotdmzk0=","AA==","QEIPAAAAAAA=","AbguDwAAAAAA","AAAAAAAAAAAAAAAAIzfL288YfTPUDoedDWdgWzL+KVg="]}}}',
|
|
|
+ ),
|
|
|
+ ]
|
|
|
+
|
|
|
+ const signedTx = await this.wallet.createAndSignTx({ msgs })
|
|
|
+
|
|
|
+ await this.tur.tx.broadcastSync(signedTx).then(res => console.log(res))
|
|
|
+ // send(broadcast) tx
|
|
|
+ // await lcd.tx.broadcastSync(signedTx).then(res => console.log(res))
|
|
|
// {
|
|
|
- // "move": {
|
|
|
- // "message": {
|
|
|
- // "module_address": "0x42cd8467b1c86e59bf319e5664a09b6b5840bb3fac64f5ce690b5041c530565a",
|
|
|
- // "module_name": "swap_transfer",
|
|
|
- // "function_name": "mixed_route_swap_to",
|
|
|
- // "type_args": [],
|
|
|
- // "args": [
|
|
|
- // "KxToiwb36zAB/GsetggCNYVVpN+xpO02UHMJotdmzk0=",
|
|
|
- // "AQIBACBjlv8aKTjnJqzBAbnFQUuAXZpgXAPI4IMk9cDIgH98vA==",
|
|
|
- // "QEIPAAAAAAA=",
|
|
|
- // "ASQqBwAAAAAA",
|
|
|
- // "AAAAAAAAAAAAAAAAIzfL288YfTPUDoedDWdgWzL+KVg="
|
|
|
- // ]
|
|
|
- // }
|
|
|
+ // height: 0,
|
|
|
+ // txhash: '162AA29DE237BD060EFEFFA862DBD07ECD1C562EBFDD965AD6C34DF856B53DC2',
|
|
|
+ // raw_log: '[]'
|
|
|
// }
|
|
|
- // }
|
|
|
- // {"move":{"message":{"module_address":"0x42cd8467b1c86e59bf319e5664a09b6b5840bb3fac64f5ce690b5041c530565a","module_name":"swap_transfer","function_name":"mixed_route_swap_to","type_args":[],"args":["KxToiwb36zAB/GsetggCNYVVpN+xpO02UHMJotdmzk0=","AQIBACBjlv8aKTjnJqzBAbnFQUuAXZpgXAPI4IMk9cDIgH98vA==","QEIPAAAAAAA=","ASQqBwAAAAAA","AAAAAAAAAAAAAAAAIzfL288YfTPUDoedDWdgWzL+KVg="]}}}
|
|
|
}
|
|
|
+
|
|
|
+ // const bridgeMsg = new MsgCreateBridge(this.key.accAddress)
|
|
|
+ // new MsgSetBridgeInfo(this.key.accAddress, {})
|
|
|
+ // {
|
|
|
+ // "move": {
|
|
|
+ // "message": {
|
|
|
+ // "module_address": "0x42cd8467b1c86e59bf319e5664a09b6b5840bb3fac64f5ce690b5041c530565a",
|
|
|
+ // "module_name": "swap_transfer",
|
|
|
+ // "function_name": "mixed_route_swap_to",
|
|
|
+ // "type_args": [],
|
|
|
+ // "args": [
|
|
|
+ // "KxToiwb36zAB/GsetggCNYVVpN+xpO02UHMJotdmzk0=",
|
|
|
+ // "AQIBACBjlv8aKTjnJqzBAbnFQUuAXZpgXAPI4IMk9cDIgH98vA==",
|
|
|
+ // "QEIPAAAAAAA=",
|
|
|
+ // "ASQqBwAAAAAA",
|
|
|
+ // "AAAAAAAAAAAAAAAAIzfL288YfTPUDoedDWdgWzL+KVg="
|
|
|
+ // ]
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // {"move":{"message":{"module_address":"0x42cd8467b1c86e59bf319e5664a09b6b5840bb3fac64f5ce690b5041c530565a","module_name":"swap_transfer","function_name":"mixed_route_swap_to","type_args":[],"args":["KxToiwb36zAB/GsetggCNYVVpN+xpO02UHMJotdmzk0=","AQIBACBjlv8aKTjnJqzBAbnFQUuAXZpgXAPI4IMk9cDIgH98vA==","QEIPAAAAAAA=","ASQqBwAAAAAA","AAAAAAAAAAAAAAAAIzfL288YfTPUDoedDWdgWzL+KVg="]}}}
|
|
|
}
|