@ritbit/v4-client-js 2.4.1 → 2.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/src/clients/composite-client.js +10 -9
- package/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/build/esm/src/clients/composite-client.d.ts +3 -3
- package/build/esm/src/clients/composite-client.d.ts.map +1 -1
- package/build/esm/src/clients/composite-client.js +10 -9
- package/build/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +11 -3
- package/.env +0 -1
- package/.eslintignore +0 -2
- package/.eslintrc.js +0 -15
- package/.gitleaks.toml +0 -24
- package/.gitleaksignore +0 -1
- package/.nvmrc +0 -1
- package/.prettierignore +0 -3
- package/.prettierrc.json +0 -6
- package/.releaserc +0 -10
- package/.vscode/launch.json +0 -11
- package/__native__/__ios__/v4-native-client.js +0 -251395
- package/__native__/__ios__/v4-native-client.js.map +0 -1
- package/__tests__/clients/composite-client.test.ts +0 -140
- package/__tests__/helpers/baseClients.ts +0 -23
- package/__tests__/helpers/constants.ts +0 -131
- package/__tests__/lib/helpers.test.ts +0 -55
- package/__tests__/lib/util.test.ts +0 -77
- package/__tests__/lib/validation.test.ts +0 -289
- package/__tests__/modules/client/AccountEndpoints.test.ts +0 -236
- package/__tests__/modules/client/FaucetEndpoint.test.ts +0 -14
- package/__tests__/modules/client/MarketsEndpoints.test.ts +0 -84
- package/__tests__/modules/client/Transfers.test.ts +0 -44
- package/__tests__/modules/client/UtilityEndpoints.test.ts +0 -29
- package/__tests__/modules/client/ValidatorGetEndpoints.test.ts +0 -50
- package/__tests__/modules/client/ValidatorPostEndpoints.test.ts +0 -52
- package/__tests__/modules/client/constants.ts +0 -5
- package/__tests__/modules/onboarding.test.ts +0 -66
- package/build/cjs/__tests__/clients/composite-client.test.js +0 -130
- package/build/cjs/__tests__/helpers/baseClients.js +0 -29
- package/build/cjs/__tests__/helpers/constants.js +0 -110
- package/build/cjs/__tests__/lib/helpers.test.js +0 -46
- package/build/cjs/__tests__/lib/util.test.js +0 -67
- package/build/cjs/__tests__/lib/validation.test.js +0 -254
- package/build/cjs/__tests__/modules/client/AccountEndpoints.test.js +0 -171
- package/build/cjs/__tests__/modules/client/FaucetEndpoint.test.js +0 -15
- package/build/cjs/__tests__/modules/client/MarketsEndpoints.test.js +0 -69
- package/build/cjs/__tests__/modules/client/Transfers.test.js +0 -44
- package/build/cjs/__tests__/modules/client/UtilityEndpoints.test.js +0 -28
- package/build/cjs/__tests__/modules/client/ValidatorGetEndpoints.test.js +0 -46
- package/build/cjs/__tests__/modules/client/ValidatorPostEndpoints.test.js +0 -53
- package/build/cjs/__tests__/modules/client/constants.js +0 -7
- package/build/cjs/__tests__/modules/onboarding.test.js +0 -50
- package/build/cjs/examples/account_endpoints.js +0 -129
- package/build/cjs/examples/batch_cancel_orders_example.js +0 -93
- package/build/cjs/examples/composite_example.js +0 -50
- package/build/cjs/examples/constants.js +0 -35
- package/build/cjs/examples/faucet_endpoint.js +0 -23
- package/build/cjs/examples/gov_add_new_market.js +0 -77
- package/build/cjs/examples/human_readable_orders.json +0 -86
- package/build/cjs/examples/human_readable_short_term_orders.json +0 -42
- package/build/cjs/examples/json-encoding.js +0 -32
- package/build/cjs/examples/long_term_order_cancel_example.js +0 -63
- package/build/cjs/examples/markets_endpoints.js +0 -134
- package/build/cjs/examples/native_examples.js +0 -112
- package/build/cjs/examples/noble_example.js +0 -88
- package/build/cjs/examples/optimal_node.js +0 -70
- package/build/cjs/examples/permissioned_keys_example.js +0 -104
- package/build/cjs/examples/raw_orders.json +0 -130
- package/build/cjs/examples/short_term_order_cancel_example.js +0 -54
- package/build/cjs/examples/short_term_order_composite_example.js +0 -68
- package/build/cjs/examples/test.js +0 -50
- package/build/cjs/examples/transfer_example_deposit.js +0 -29
- package/build/cjs/examples/transfer_example_send.js +0 -42
- package/build/cjs/examples/transfer_example_subaccount_transfer.js +0 -29
- package/build/cjs/examples/transfer_example_withdraw.js +0 -30
- package/build/cjs/examples/transfer_example_withdraw_other.js +0 -42
- package/build/cjs/examples/utility_endpoints.js +0 -42
- package/build/cjs/examples/validator_get_example.js +0 -158
- package/build/cjs/examples/validator_post_example.js +0 -76
- package/build/cjs/examples/wallet_address.js +0 -22
- package/build/cjs/examples/websocket_example.js +0 -36
- package/build/cjs/examples/websocket_orderbook_example.js +0 -196
- package/build/esm/__tests__/clients/composite-client.test.d.ts +0 -2
- package/build/esm/__tests__/clients/composite-client.test.d.ts.map +0 -1
- package/build/esm/__tests__/clients/composite-client.test.js +0 -128
- package/build/esm/__tests__/helpers/baseClients.d.ts +0 -19
- package/build/esm/__tests__/helpers/baseClients.d.ts.map +0 -1
- package/build/esm/__tests__/helpers/baseClients.js +0 -22
- package/build/esm/__tests__/helpers/constants.d.ts +0 -19
- package/build/esm/__tests__/helpers/constants.d.ts.map +0 -1
- package/build/esm/__tests__/helpers/constants.js +0 -104
- package/build/esm/__tests__/lib/helpers.test.d.ts +0 -2
- package/build/esm/__tests__/lib/helpers.test.d.ts.map +0 -1
- package/build/esm/__tests__/lib/helpers.test.js +0 -41
- package/build/esm/__tests__/lib/util.test.d.ts +0 -2
- package/build/esm/__tests__/lib/util.test.d.ts.map +0 -1
- package/build/esm/__tests__/lib/util.test.js +0 -65
- package/build/esm/__tests__/lib/validation.test.d.ts +0 -2
- package/build/esm/__tests__/lib/validation.test.d.ts.map +0 -1
- package/build/esm/__tests__/lib/validation.test.js +0 -249
- package/build/esm/__tests__/modules/client/AccountEndpoints.test.d.ts +0 -2
- package/build/esm/__tests__/modules/client/AccountEndpoints.test.d.ts.map +0 -1
- package/build/esm/__tests__/modules/client/AccountEndpoints.test.js +0 -169
- package/build/esm/__tests__/modules/client/FaucetEndpoint.test.d.ts +0 -2
- package/build/esm/__tests__/modules/client/FaucetEndpoint.test.d.ts.map +0 -1
- package/build/esm/__tests__/modules/client/FaucetEndpoint.test.js +0 -13
- package/build/esm/__tests__/modules/client/MarketsEndpoints.test.d.ts +0 -2
- package/build/esm/__tests__/modules/client/MarketsEndpoints.test.d.ts.map +0 -1
- package/build/esm/__tests__/modules/client/MarketsEndpoints.test.js +0 -66
- package/build/esm/__tests__/modules/client/Transfers.test.d.ts +0 -2
- package/build/esm/__tests__/modules/client/Transfers.test.d.ts.map +0 -1
- package/build/esm/__tests__/modules/client/Transfers.test.js +0 -39
- package/build/esm/__tests__/modules/client/UtilityEndpoints.test.d.ts +0 -2
- package/build/esm/__tests__/modules/client/UtilityEndpoints.test.d.ts.map +0 -1
- package/build/esm/__tests__/modules/client/UtilityEndpoints.test.js +0 -26
- package/build/esm/__tests__/modules/client/ValidatorGetEndpoints.test.d.ts +0 -2
- package/build/esm/__tests__/modules/client/ValidatorGetEndpoints.test.d.ts.map +0 -1
- package/build/esm/__tests__/modules/client/ValidatorGetEndpoints.test.js +0 -44
- package/build/esm/__tests__/modules/client/ValidatorPostEndpoints.test.d.ts +0 -2
- package/build/esm/__tests__/modules/client/ValidatorPostEndpoints.test.d.ts.map +0 -1
- package/build/esm/__tests__/modules/client/ValidatorPostEndpoints.test.js +0 -48
- package/build/esm/__tests__/modules/client/constants.d.ts +0 -4
- package/build/esm/__tests__/modules/client/constants.d.ts.map +0 -1
- package/build/esm/__tests__/modules/client/constants.js +0 -4
- package/build/esm/__tests__/modules/onboarding.test.d.ts +0 -2
- package/build/esm/__tests__/modules/onboarding.test.d.ts.map +0 -1
- package/build/esm/__tests__/modules/onboarding.test.js +0 -48
- package/build/esm/examples/account_endpoints.d.ts +0 -5
- package/build/esm/examples/account_endpoints.d.ts.map +0 -1
- package/build/esm/examples/account_endpoints.js +0 -127
- package/build/esm/examples/batch_cancel_orders_example.d.ts +0 -2
- package/build/esm/examples/batch_cancel_orders_example.d.ts.map +0 -1
- package/build/esm/examples/batch_cancel_orders_example.js +0 -88
- package/build/esm/examples/composite_example.d.ts +0 -2
- package/build/esm/examples/composite_example.d.ts.map +0 -1
- package/build/esm/examples/composite_example.js +0 -45
- package/build/esm/examples/constants.d.ts +0 -13
- package/build/esm/examples/constants.d.ts.map +0 -1
- package/build/esm/examples/constants.js +0 -29
- package/build/esm/examples/faucet_endpoint.d.ts +0 -5
- package/build/esm/examples/faucet_endpoint.d.ts.map +0 -1
- package/build/esm/examples/faucet_endpoint.js +0 -21
- package/build/esm/examples/gov_add_new_market.d.ts +0 -2
- package/build/esm/examples/gov_add_new_market.d.ts.map +0 -1
- package/build/esm/examples/gov_add_new_market.js +0 -72
- package/build/esm/examples/human_readable_orders.json +0 -86
- package/build/esm/examples/human_readable_short_term_orders.json +0 -42
- package/build/esm/examples/json-encoding.d.ts +0 -2
- package/build/esm/examples/json-encoding.d.ts.map +0 -1
- package/build/esm/examples/json-encoding.js +0 -27
- package/build/esm/examples/long_term_order_cancel_example.d.ts +0 -2
- package/build/esm/examples/long_term_order_cancel_example.d.ts.map +0 -1
- package/build/esm/examples/long_term_order_cancel_example.js +0 -58
- package/build/esm/examples/markets_endpoints.d.ts +0 -5
- package/build/esm/examples/markets_endpoints.d.ts.map +0 -1
- package/build/esm/examples/markets_endpoints.js +0 -131
- package/build/esm/examples/native_examples.d.ts +0 -2
- package/build/esm/examples/native_examples.d.ts.map +0 -1
- package/build/esm/examples/native_examples.js +0 -110
- package/build/esm/examples/noble_example.d.ts +0 -2
- package/build/esm/examples/noble_example.d.ts.map +0 -1
- package/build/esm/examples/noble_example.js +0 -83
- package/build/esm/examples/optimal_node.d.ts +0 -2
- package/build/esm/examples/optimal_node.d.ts.map +0 -1
- package/build/esm/examples/optimal_node.js +0 -68
- package/build/esm/examples/permissioned_keys_example.d.ts +0 -2
- package/build/esm/examples/permissioned_keys_example.d.ts.map +0 -1
- package/build/esm/examples/permissioned_keys_example.js +0 -99
- package/build/esm/examples/raw_orders.json +0 -130
- package/build/esm/examples/short_term_order_cancel_example.d.ts +0 -2
- package/build/esm/examples/short_term_order_cancel_example.d.ts.map +0 -1
- package/build/esm/examples/short_term_order_cancel_example.js +0 -49
- package/build/esm/examples/short_term_order_composite_example.d.ts +0 -2
- package/build/esm/examples/short_term_order_composite_example.d.ts.map +0 -1
- package/build/esm/examples/short_term_order_composite_example.js +0 -63
- package/build/esm/examples/test.d.ts +0 -2
- package/build/esm/examples/test.d.ts.map +0 -1
- package/build/esm/examples/test.js +0 -45
- package/build/esm/examples/transfer_example_deposit.d.ts +0 -2
- package/build/esm/examples/transfer_example_deposit.d.ts.map +0 -1
- package/build/esm/examples/transfer_example_deposit.js +0 -24
- package/build/esm/examples/transfer_example_send.d.ts +0 -2
- package/build/esm/examples/transfer_example_send.d.ts.map +0 -1
- package/build/esm/examples/transfer_example_send.js +0 -37
- package/build/esm/examples/transfer_example_subaccount_transfer.d.ts +0 -2
- package/build/esm/examples/transfer_example_subaccount_transfer.d.ts.map +0 -1
- package/build/esm/examples/transfer_example_subaccount_transfer.js +0 -24
- package/build/esm/examples/transfer_example_withdraw.d.ts +0 -2
- package/build/esm/examples/transfer_example_withdraw.d.ts.map +0 -1
- package/build/esm/examples/transfer_example_withdraw.js +0 -25
- package/build/esm/examples/transfer_example_withdraw_other.d.ts +0 -2
- package/build/esm/examples/transfer_example_withdraw_other.d.ts.map +0 -1
- package/build/esm/examples/transfer_example_withdraw_other.js +0 -37
- package/build/esm/examples/utility_endpoints.d.ts +0 -5
- package/build/esm/examples/utility_endpoints.d.ts.map +0 -1
- package/build/esm/examples/utility_endpoints.js +0 -40
- package/build/esm/examples/validator_get_example.d.ts +0 -2
- package/build/esm/examples/validator_get_example.d.ts.map +0 -1
- package/build/esm/examples/validator_get_example.js +0 -156
- package/build/esm/examples/validator_post_example.d.ts +0 -2
- package/build/esm/examples/validator_post_example.d.ts.map +0 -1
- package/build/esm/examples/validator_post_example.js +0 -71
- package/build/esm/examples/wallet_address.d.ts +0 -2
- package/build/esm/examples/wallet_address.d.ts.map +0 -1
- package/build/esm/examples/wallet_address.js +0 -17
- package/build/esm/examples/websocket_example.d.ts +0 -2
- package/build/esm/examples/websocket_example.d.ts.map +0 -1
- package/build/esm/examples/websocket_example.js +0 -34
- package/build/esm/examples/websocket_orderbook_example.d.ts +0 -2
- package/build/esm/examples/websocket_orderbook_example.d.ts.map +0 -1
- package/build/esm/examples/websocket_orderbook_example.js +0 -194
- package/commitlint.config.js +0 -8
- package/examples/account_endpoints.ts +0 -129
- package/examples/batch_cancel_orders_example.ts +0 -130
- package/examples/composite_example.ts +0 -65
- package/examples/constants.ts +0 -42
- package/examples/faucet_endpoint.ts +0 -24
- package/examples/gov_add_new_market.json +0 -64
- package/examples/gov_add_new_market.ts +0 -95
- package/examples/human_readable_orders.json +0 -86
- package/examples/human_readable_short_term_orders.json +0 -42
- package/examples/json-encoding.ts +0 -33
- package/examples/long_term_order_cancel_example.ts +0 -87
- package/examples/markets_endpoints.ts +0 -134
- package/examples/native_examples.ts +0 -151
- package/examples/noble_example.ts +0 -107
- package/examples/optimal_node.ts +0 -70
- package/examples/permissioned_keys_example.ts +0 -162
- package/examples/raw_orders.json +0 -130
- package/examples/short_term_order_cancel_example.ts +0 -68
- package/examples/short_term_order_composite_example.ts +0 -80
- package/examples/test.ts +0 -65
- package/examples/transfer_example_deposit.ts +0 -28
- package/examples/transfer_example_send.ts +0 -60
- package/examples/transfer_example_subaccount_transfer.ts +0 -29
- package/examples/transfer_example_withdraw.ts +0 -31
- package/examples/transfer_example_withdraw_other.ts +0 -60
- package/examples/utility_endpoints.ts +0 -42
- package/examples/validator_get_example.ts +0 -160
- package/examples/validator_post_example.ts +0 -81
- package/examples/wallet_address.ts +0 -18
- package/examples/websocket_example.ts +0 -44
- package/examples/websocket_orderbook_example.ts +0 -239
- package/jest.config.js +0 -12
- package/jest.globalSetup.js +0 -5
- package/jest.setup.js +0 -1
- package/ritbit-v4-client-js-2.4.0.tgz +0 -0
- package/scripts/bump_version.sh +0 -16
- package/scripts/generate-cctp-protos.sh +0 -41
- package/scripts/mobile_build_pack.sh +0 -5
- package/scripts/publish-if-not-exists.sh +0 -21
- package/src/clients/composite-client.ts +0 -1469
- package/src/clients/constants.ts +0 -361
- package/src/clients/faucet-client.ts +0 -48
- package/src/clients/helpers/chain-helpers.ts +0 -231
- package/src/clients/helpers/request-helpers.ts +0 -71
- package/src/clients/indexer-client.ts +0 -61
- package/src/clients/lib/axios/axiosRequest.ts +0 -41
- package/src/clients/lib/axios/errors.ts +0 -41
- package/src/clients/lib/axios/index.ts +0 -7
- package/src/clients/lib/axios/types.ts +0 -6
- package/src/clients/lib/cctpProto.ts +0 -4197
- package/src/clients/lib/errors.ts +0 -63
- package/src/clients/lib/registry.ts +0 -93
- package/src/clients/modules/account.ts +0 -438
- package/src/clients/modules/composer.ts +0 -669
- package/src/clients/modules/get.ts +0 -791
- package/src/clients/modules/local-wallet.ts +0 -79
- package/src/clients/modules/markets.ts +0 -76
- package/src/clients/modules/post.ts +0 -1043
- package/src/clients/modules/proto-includes.ts +0 -34
- package/src/clients/modules/rest.ts +0 -40
- package/src/clients/modules/signer.ts +0 -139
- package/src/clients/modules/tendermintClient.ts +0 -168
- package/src/clients/modules/utility.ts +0 -47
- package/src/clients/modules/vault.ts +0 -23
- package/src/clients/native.ts +0 -1689
- package/src/clients/noble-client.ts +0 -108
- package/src/clients/socket-client.ts +0 -331
- package/src/clients/subaccount.ts +0 -57
- package/src/clients/types.ts +0 -191
- package/src/clients/validator-client.ts +0 -106
- package/src/index.ts +0 -19
- package/src/lib/constants.ts +0 -28
- package/src/lib/errors.ts +0 -38
- package/src/lib/helpers.ts +0 -99
- package/src/lib/onboarding.ts +0 -96
- package/src/lib/trading-key-utils.ts +0 -136
- package/src/lib/utils.ts +0 -84
- package/src/lib/validation.ts +0 -197
- package/src/network_optimizer.ts +0 -132
- package/src/types.ts +0 -44
- package/tasks.json +0 -16
- package/tsconfig.base.json +0 -21
- package/tsconfig.cjs.json +0 -10
- package/tsconfig.eslint.json +0 -14
- package/tsconfig.esm.json +0 -11
- package/tsconfig.json +0 -6
- package/webpack.config.js +0 -56
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import { PerpetualMarketType } from '@ritbit/v4-proto/src/codegen/ritbit/perpetuals/perpetual';
|
|
2
|
-
import Long from 'long';
|
|
3
|
-
|
|
4
|
-
import { GovAddNewMarketParams, LocalWallet, ProposalStatus } from '../src';
|
|
5
|
-
import { CompositeClient } from '../src/clients/composite-client';
|
|
6
|
-
import { BECH32_PREFIX, Network } from '../src/clients/constants';
|
|
7
|
-
import { getGovAddNewMarketSummary, getGovAddNewMarketTitle, sleep } from '../src/lib/utils';
|
|
8
|
-
import { LOCAL_MNEMONIC } from './constants';
|
|
9
|
-
|
|
10
|
-
const INITIAL_DEPOSIT_AMOUNT = 10_000_000_000_000; // 10,000 whole native tokens.
|
|
11
|
-
const MOCK_DATA: GovAddNewMarketParams = {
|
|
12
|
-
// common
|
|
13
|
-
id: 34,
|
|
14
|
-
ticker: 'BONK-USD',
|
|
15
|
-
|
|
16
|
-
// x/prices
|
|
17
|
-
priceExponent: -14,
|
|
18
|
-
minExchanges: 3,
|
|
19
|
-
minPriceChange: 4_000,
|
|
20
|
-
exchangeConfigJson: JSON.stringify({
|
|
21
|
-
exchanges: [
|
|
22
|
-
{ exchangeName: 'Binance', ticker: 'BONKUSDT', adjustByMarket: 'USDT-USD' },
|
|
23
|
-
{ exchangeName: 'Bybit', ticker: 'BONKUSDT', adjustByMarket: 'USDT-USD' },
|
|
24
|
-
{ exchangeName: 'CoinbasePro', ticker: 'BONK-USD' },
|
|
25
|
-
{ exchangeName: 'Kucoin', ticker: 'BONK-USDT', adjustByMarket: 'USDT-USD' },
|
|
26
|
-
{ exchangeName: 'Okx', ticker: 'BONK-USDT', adjustByMarket: 'USDT-USD' },
|
|
27
|
-
{ exchangeName: 'Mexc', ticker: 'BONK_USDT', adjustByMarket: 'USDT-USD' },
|
|
28
|
-
],
|
|
29
|
-
}),
|
|
30
|
-
|
|
31
|
-
// x/perpetuals
|
|
32
|
-
liquidityTier: 2,
|
|
33
|
-
atomicResolution: -1,
|
|
34
|
-
marketType: PerpetualMarketType.PERPETUAL_MARKET_TYPE_CROSS,
|
|
35
|
-
|
|
36
|
-
// x/clob
|
|
37
|
-
quantumConversionExponent: -9,
|
|
38
|
-
stepBaseQuantums: Long.fromNumber(1_000_000),
|
|
39
|
-
subticksPerTick: 1_000_000,
|
|
40
|
-
|
|
41
|
-
// x/delaymsg
|
|
42
|
-
delayBlocks: 5,
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
// To run this test:
|
|
46
|
-
// npm run build && node build/examples/gov_add_new_market.js
|
|
47
|
-
//
|
|
48
|
-
// Confirmed that the proposals have the exact same content.
|
|
49
|
-
// 1. submit using an example json file
|
|
50
|
-
// ritbitd tx gov submit-proposal gov_add_new_market.json \
|
|
51
|
-
// --from alice --keyring-backend test --gas auto --fees 9553225000000000adv4tnt
|
|
52
|
-
// ritbitd query gov proposals
|
|
53
|
-
// 2. submit using the file's mock data
|
|
54
|
-
// npm run build && node build/examples/gov_add_new_market.js
|
|
55
|
-
// ritbitd query gov proposals
|
|
56
|
-
// 3. then compare the two proposals and ensure they match
|
|
57
|
-
async function test(): Promise<void> {
|
|
58
|
-
console.log('**Start**');
|
|
59
|
-
|
|
60
|
-
const wallet = await LocalWallet.fromMnemonic(LOCAL_MNEMONIC, BECH32_PREFIX);
|
|
61
|
-
console.log(wallet);
|
|
62
|
-
|
|
63
|
-
const network = Network.local();
|
|
64
|
-
const client = await CompositeClient.connect(network);
|
|
65
|
-
console.log('**Client**');
|
|
66
|
-
console.log(client);
|
|
67
|
-
|
|
68
|
-
const tx = await client.submitGovAddNewMarketProposal(
|
|
69
|
-
wallet,
|
|
70
|
-
MOCK_DATA,
|
|
71
|
-
getGovAddNewMarketTitle(MOCK_DATA.ticker),
|
|
72
|
-
getGovAddNewMarketSummary(MOCK_DATA.ticker, MOCK_DATA.delayBlocks),
|
|
73
|
-
BigInt(INITIAL_DEPOSIT_AMOUNT).toString(),
|
|
74
|
-
);
|
|
75
|
-
console.log('**Tx**');
|
|
76
|
-
console.log(tx);
|
|
77
|
-
|
|
78
|
-
await sleep(5000);
|
|
79
|
-
|
|
80
|
-
const depositProposals = await client.validatorClient.get.getAllGovProposals(
|
|
81
|
-
ProposalStatus.PROPOSAL_STATUS_DEPOSIT_PERIOD,
|
|
82
|
-
);
|
|
83
|
-
console.log('**Deposit Proposals**');
|
|
84
|
-
console.log(depositProposals);
|
|
85
|
-
|
|
86
|
-
const votingProposals = await client.validatorClient.get.getAllGovProposals(
|
|
87
|
-
ProposalStatus.PROPOSAL_STATUS_VOTING_PERIOD,
|
|
88
|
-
);
|
|
89
|
-
console.log('**Voting Proposals**');
|
|
90
|
-
console.log(votingProposals);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
test().catch((error) => {
|
|
94
|
-
console.error(error);
|
|
95
|
-
});
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"type": "LIMIT",
|
|
4
|
-
"timeInForce": "GTT",
|
|
5
|
-
"postOnly": true,
|
|
6
|
-
"side": "BUY",
|
|
7
|
-
"price": 40000
|
|
8
|
-
},
|
|
9
|
-
{
|
|
10
|
-
"type": "LIMIT",
|
|
11
|
-
"timeInForce": "GTT",
|
|
12
|
-
"postOnly": true,
|
|
13
|
-
"side": "SELL",
|
|
14
|
-
"price": 1000
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
"type": "LIMIT",
|
|
18
|
-
"timeInForce": "GTT",
|
|
19
|
-
"postOnly": false,
|
|
20
|
-
"side": "BUY",
|
|
21
|
-
"price": 40000
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"type": "LIMIT",
|
|
25
|
-
"timeInForce": "GTT",
|
|
26
|
-
"postOnly": false,
|
|
27
|
-
"side": "SELL",
|
|
28
|
-
"price": 1000
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
"type": "LIMIT",
|
|
32
|
-
"timeInForce": "IOC",
|
|
33
|
-
"postOnly": true,
|
|
34
|
-
"side": "BUY",
|
|
35
|
-
"price": 40000
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
"type": "LIMIT",
|
|
39
|
-
"timeInForce": "IOC",
|
|
40
|
-
"postOnly": true,
|
|
41
|
-
"side": "SELL",
|
|
42
|
-
"price": 1000
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
"type": "LIMIT",
|
|
46
|
-
"timeInForce": "IOC",
|
|
47
|
-
"postOnly": false,
|
|
48
|
-
"side": "BUY",
|
|
49
|
-
"price": 40000
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
"type": "LIMIT",
|
|
53
|
-
"timeInForce": "IOC",
|
|
54
|
-
"postOnly": false,
|
|
55
|
-
"side": "SELL",
|
|
56
|
-
"price": 1000
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
"type": "LIMIT",
|
|
60
|
-
"timeInForce": "FOK",
|
|
61
|
-
"postOnly": true,
|
|
62
|
-
"side": "BUY",
|
|
63
|
-
"price": 40000
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
"type": "LIMIT",
|
|
67
|
-
"timeInForce": "FOK",
|
|
68
|
-
"postOnly": true,
|
|
69
|
-
"side": "SELL",
|
|
70
|
-
"price": 1000
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
"type": "LIMIT",
|
|
74
|
-
"timeInForce": "FOK",
|
|
75
|
-
"postOnly": false,
|
|
76
|
-
"side": "BUY",
|
|
77
|
-
"price": 40000
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
"type": "LIMIT",
|
|
81
|
-
"timeInForce": "FOK",
|
|
82
|
-
"postOnly": false,
|
|
83
|
-
"side": "SELL",
|
|
84
|
-
"price": 1000
|
|
85
|
-
}
|
|
86
|
-
]
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"timeInForce": "DEFAULT",
|
|
4
|
-
"side": "BUY",
|
|
5
|
-
"price": 40000
|
|
6
|
-
},
|
|
7
|
-
{
|
|
8
|
-
"timeInForce": "DEFAULT",
|
|
9
|
-
"side": "SELL",
|
|
10
|
-
"price": 1000
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
"timeInForce": "FOK",
|
|
14
|
-
"side": "BUY",
|
|
15
|
-
"price": 1000
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
"timeInForce": "FOK",
|
|
19
|
-
"side": "SELL",
|
|
20
|
-
"price": 40000
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
"timeInForce": "IOC",
|
|
24
|
-
"side": "BUY",
|
|
25
|
-
"price": 40000
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
"timeInForce": "IOC",
|
|
29
|
-
"side": "SELL",
|
|
30
|
-
"price": 1000
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
"timeInForce": "POST_ONLY",
|
|
34
|
-
"side": "BUY",
|
|
35
|
-
"price": 1000
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
"timeInForce": "POST_ONLY",
|
|
39
|
-
"side": "SELL",
|
|
40
|
-
"price": 40000
|
|
41
|
-
}
|
|
42
|
-
]
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import BigNumber from 'bignumber.js';
|
|
2
|
-
import Long from 'long';
|
|
3
|
-
|
|
4
|
-
import { encodeJson } from '../src/lib/helpers';
|
|
5
|
-
|
|
6
|
-
const longValue = Long.fromInt(1, true);
|
|
7
|
-
const objWithLong = {
|
|
8
|
-
longValue,
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
const jsonedWithLong = encodeJson(objWithLong);
|
|
12
|
-
console.log(jsonedWithLong);
|
|
13
|
-
|
|
14
|
-
const bigNumberValue = BigNumber(1);
|
|
15
|
-
const objWithBigNumber = {
|
|
16
|
-
bigNumberValue,
|
|
17
|
-
};
|
|
18
|
-
const jsonedWithBigNumber = encodeJson(objWithBigNumber);
|
|
19
|
-
console.log(jsonedWithBigNumber);
|
|
20
|
-
|
|
21
|
-
const buffer = Buffer.from('this is a tést');
|
|
22
|
-
const objWithBuffer = {
|
|
23
|
-
buffer,
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
// Object.keys(objWithBuffer).forEach((k) => {
|
|
27
|
-
// console.log(k, objWithBuffer[k]); // ERROR!!
|
|
28
|
-
// });
|
|
29
|
-
const isBuffer2 = objWithBuffer.buffer instanceof Uint8Array;
|
|
30
|
-
console.log(isBuffer2);
|
|
31
|
-
|
|
32
|
-
const jsonedWithBuffer = encodeJson(objWithBuffer);
|
|
33
|
-
console.log(jsonedWithBuffer);
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { BECH32_PREFIX, OrderFlags } from '../src';
|
|
2
|
-
import { CompositeClient } from '../src/clients/composite-client';
|
|
3
|
-
import {
|
|
4
|
-
Network,
|
|
5
|
-
OrderExecution,
|
|
6
|
-
OrderSide,
|
|
7
|
-
OrderTimeInForce,
|
|
8
|
-
OrderType,
|
|
9
|
-
} from '../src/clients/constants';
|
|
10
|
-
import LocalWallet from '../src/clients/modules/local-wallet';
|
|
11
|
-
import { SubaccountInfo } from '../src/clients/subaccount';
|
|
12
|
-
import { randomInt } from '../src/lib/utils';
|
|
13
|
-
import { TEST_MNEMONIC, MAX_CLIENT_ID } from './constants';
|
|
14
|
-
|
|
15
|
-
async function sleep(ms: number): Promise<void> {
|
|
16
|
-
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
async function test(): Promise<void> {
|
|
20
|
-
const wallet = await LocalWallet.fromMnemonic(TEST_MNEMONIC, BECH32_PREFIX);
|
|
21
|
-
console.log(wallet);
|
|
22
|
-
const network = Network.testnet();
|
|
23
|
-
const client = await CompositeClient.connect(network);
|
|
24
|
-
console.log('**Client**');
|
|
25
|
-
console.log(client);
|
|
26
|
-
const subaccount = SubaccountInfo.forLocalWallet(wallet, 0);
|
|
27
|
-
|
|
28
|
-
/*
|
|
29
|
-
Note this example places a stateful order.
|
|
30
|
-
Programmatic traders should generally not use stateful orders for following reasons:
|
|
31
|
-
- Stateful orders received out of order by validators will fail sequence number validation
|
|
32
|
-
and be dropped.
|
|
33
|
-
- Stateful orders have worse time priority since they are only matched after they are included
|
|
34
|
-
on the block.
|
|
35
|
-
- Stateful order rate limits are more restrictive than Short-Term orders, specifically max 2 per
|
|
36
|
-
block / 20 per 100 blocks.
|
|
37
|
-
- Stateful orders can only be canceled after they’ve been included in a block.
|
|
38
|
-
*/
|
|
39
|
-
const longTermOrderClientId = randomInt(MAX_CLIENT_ID);
|
|
40
|
-
try {
|
|
41
|
-
// place a long term order
|
|
42
|
-
const tx = await client.placeOrder(
|
|
43
|
-
subaccount,
|
|
44
|
-
'ETH-USD',
|
|
45
|
-
OrderType.LIMIT,
|
|
46
|
-
OrderSide.SELL,
|
|
47
|
-
40000,
|
|
48
|
-
0.01,
|
|
49
|
-
longTermOrderClientId,
|
|
50
|
-
OrderTimeInForce.GTT,
|
|
51
|
-
60,
|
|
52
|
-
OrderExecution.DEFAULT,
|
|
53
|
-
false,
|
|
54
|
-
false,
|
|
55
|
-
);
|
|
56
|
-
console.log('**Long Term Order Tx**');
|
|
57
|
-
console.log(tx.hash);
|
|
58
|
-
} catch (error) {
|
|
59
|
-
console.log('**Long Term Order Failed**');
|
|
60
|
-
console.log(error.message);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
await sleep(5000); // wait for placeOrder to complete
|
|
64
|
-
|
|
65
|
-
try {
|
|
66
|
-
// cancel the long term order
|
|
67
|
-
const tx = await client.cancelOrder(
|
|
68
|
-
subaccount,
|
|
69
|
-
longTermOrderClientId,
|
|
70
|
-
OrderFlags.LONG_TERM,
|
|
71
|
-
'ETH-USD',
|
|
72
|
-
0,
|
|
73
|
-
120,
|
|
74
|
-
);
|
|
75
|
-
console.log('**Cancel Long Term Order Tx**');
|
|
76
|
-
console.log(tx);
|
|
77
|
-
} catch (error) {
|
|
78
|
-
console.log('**Cancel Long Term Order Failed**');
|
|
79
|
-
console.log(error.message);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
test()
|
|
84
|
-
.then(() => {})
|
|
85
|
-
.catch((error) => {
|
|
86
|
-
console.log(error.message);
|
|
87
|
-
});
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Simple JS example demostrating accessing market data with Indexer REST endpoints
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { Network } from '../src/clients/constants';
|
|
6
|
-
import { IndexerClient } from '../src/clients/indexer-client';
|
|
7
|
-
|
|
8
|
-
// ------------ Markets ------------
|
|
9
|
-
export const MARKET_BTC_USD: string = 'BTC-USD';
|
|
10
|
-
|
|
11
|
-
async function test(): Promise<void> {
|
|
12
|
-
const client = new IndexerClient(Network.testnet().indexerConfig);
|
|
13
|
-
|
|
14
|
-
// Get perp markets
|
|
15
|
-
try {
|
|
16
|
-
const response = await client.markets.getPerpetualMarkets();
|
|
17
|
-
console.log(response);
|
|
18
|
-
console.log('markets');
|
|
19
|
-
const btcMarket = response.markets['BTC-USD'];
|
|
20
|
-
const btcMarketStatus = btcMarket.status;
|
|
21
|
-
console.log(btcMarketStatus);
|
|
22
|
-
} catch (error) {
|
|
23
|
-
console.log(error.message);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
try {
|
|
27
|
-
const response = await client.markets.getPerpetualMarkets(MARKET_BTC_USD);
|
|
28
|
-
console.log(response);
|
|
29
|
-
console.log('markets');
|
|
30
|
-
const btcMarket = response.markets['BTC-USD'];
|
|
31
|
-
const btcMarketStatus = btcMarket.status;
|
|
32
|
-
console.log(btcMarketStatus);
|
|
33
|
-
} catch (error) {
|
|
34
|
-
console.log(error.message);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
// Get sparklines
|
|
38
|
-
try {
|
|
39
|
-
const response = await client.markets.getPerpetualMarketSparklines();
|
|
40
|
-
console.log(response);
|
|
41
|
-
console.log('sparklines');
|
|
42
|
-
const btcSparklines = response['BTC-USD'];
|
|
43
|
-
console.log(btcSparklines);
|
|
44
|
-
} catch (error) {
|
|
45
|
-
console.log(error.message);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
// Get perp market trades
|
|
49
|
-
try {
|
|
50
|
-
const response = await client.markets.getPerpetualMarketTrades(MARKET_BTC_USD);
|
|
51
|
-
console.log(response);
|
|
52
|
-
console.log('trades');
|
|
53
|
-
const trades = response.trades;
|
|
54
|
-
console.log(trades);
|
|
55
|
-
} catch (error) {
|
|
56
|
-
console.log(error.message);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
// Get perp market orderbook
|
|
60
|
-
try {
|
|
61
|
-
const response = await client.markets.getPerpetualMarketOrderbook(MARKET_BTC_USD);
|
|
62
|
-
console.log(response);
|
|
63
|
-
console.log('orderbook');
|
|
64
|
-
const asks = response.asks;
|
|
65
|
-
const bids = response.bids;
|
|
66
|
-
if (asks.length > 0) {
|
|
67
|
-
const asks0 = asks[0];
|
|
68
|
-
const asks0Price = asks0.price;
|
|
69
|
-
const asks0Size = asks0.size;
|
|
70
|
-
console.log(asks0Price);
|
|
71
|
-
console.log(asks0Size);
|
|
72
|
-
}
|
|
73
|
-
if (bids.length > 0) {
|
|
74
|
-
const bids0 = bids[0];
|
|
75
|
-
const bids0Price = bids0.price;
|
|
76
|
-
const bids0Size = bids0.size;
|
|
77
|
-
console.log(bids0Price);
|
|
78
|
-
console.log(bids0Size);
|
|
79
|
-
}
|
|
80
|
-
const trades = response.trades;
|
|
81
|
-
console.log(trades);
|
|
82
|
-
} catch (error) {
|
|
83
|
-
console.log(error.message);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
// Get perp market candles
|
|
87
|
-
try {
|
|
88
|
-
const response = await client.markets.getPerpetualMarketCandles(MARKET_BTC_USD, '1MIN');
|
|
89
|
-
console.log(response);
|
|
90
|
-
console.log('candles');
|
|
91
|
-
const candles = response.candles;
|
|
92
|
-
if (candles.length > 0) {
|
|
93
|
-
const candles0 = candles[0];
|
|
94
|
-
const startedAt = candles0.startedAt;
|
|
95
|
-
const low = candles0.low;
|
|
96
|
-
const high = candles0.high;
|
|
97
|
-
const open = candles0.open;
|
|
98
|
-
const close = candles0.close;
|
|
99
|
-
const baseTokenVolume = candles0.baseTokenVolume;
|
|
100
|
-
const usdVolume = candles0.usdVolume;
|
|
101
|
-
const trades = candles0.trades;
|
|
102
|
-
console.log(startedAt);
|
|
103
|
-
console.log(low);
|
|
104
|
-
console.log(high);
|
|
105
|
-
console.log(open);
|
|
106
|
-
console.log(close);
|
|
107
|
-
console.log(baseTokenVolume);
|
|
108
|
-
console.log(usdVolume);
|
|
109
|
-
console.log(trades);
|
|
110
|
-
}
|
|
111
|
-
} catch (error) {
|
|
112
|
-
console.log(error.message);
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
// Get perp market historical funding rates
|
|
116
|
-
try {
|
|
117
|
-
const response = await client.markets.getPerpetualMarketHistoricalFunding(MARKET_BTC_USD);
|
|
118
|
-
console.log(response);
|
|
119
|
-
console.log('historical funding');
|
|
120
|
-
const historicalFunding = response.historicalFunding;
|
|
121
|
-
if (historicalFunding.length > 0) {
|
|
122
|
-
const historicalFunding0 = historicalFunding[0];
|
|
123
|
-
console.log(historicalFunding0);
|
|
124
|
-
}
|
|
125
|
-
} catch (error) {
|
|
126
|
-
console.log(error.message);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
test()
|
|
131
|
-
.then(() => {})
|
|
132
|
-
.catch((error) => {
|
|
133
|
-
console.log(error.message);
|
|
134
|
-
});
|
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
import { Network } from '../src/clients/constants';
|
|
2
|
-
import { UserError } from '../src/clients/lib/errors';
|
|
3
|
-
import {
|
|
4
|
-
connect,
|
|
5
|
-
connectWallet,
|
|
6
|
-
deposit,
|
|
7
|
-
faucet,
|
|
8
|
-
getAccountBalances,
|
|
9
|
-
getOptimalNode,
|
|
10
|
-
getUserStats,
|
|
11
|
-
simulateDeposit,
|
|
12
|
-
simulateTransferNativeToken,
|
|
13
|
-
simulateWithdraw,
|
|
14
|
-
transferNativeToken,
|
|
15
|
-
withdraw,
|
|
16
|
-
withdrawToIBC,
|
|
17
|
-
wrappedError,
|
|
18
|
-
getMegavaultOwnerShares,
|
|
19
|
-
depositToMegavault,
|
|
20
|
-
withdrawFromMegavault,
|
|
21
|
-
} from '../src/clients/native';
|
|
22
|
-
import { TEST_ADDRESS, TEST_MNEMONIC } from './constants';
|
|
23
|
-
|
|
24
|
-
async function test(): Promise<void> {
|
|
25
|
-
try {
|
|
26
|
-
const paramsInJson = `{
|
|
27
|
-
"endpointUrls":[
|
|
28
|
-
"https://dydx-testnet.nodefleet.org",
|
|
29
|
-
"https://test-dydx-rpc.kingnodes.com",
|
|
30
|
-
"https://dydx-rpc.liquify.com/api=8878132/dydx"
|
|
31
|
-
],
|
|
32
|
-
"chainId":"dydx-testnet-4"
|
|
33
|
-
}`;
|
|
34
|
-
const result = await getOptimalNode(paramsInJson);
|
|
35
|
-
console.log(result);
|
|
36
|
-
|
|
37
|
-
const wallet = await connectWallet(TEST_MNEMONIC);
|
|
38
|
-
console.log(wallet);
|
|
39
|
-
|
|
40
|
-
const params3 = `
|
|
41
|
-
{"subaccountNumber":0,"amount":100.0}
|
|
42
|
-
`;
|
|
43
|
-
const result3 = await faucet(params3);
|
|
44
|
-
console.log(result3);
|
|
45
|
-
|
|
46
|
-
const address = await connect(Network.testnet(), TEST_MNEMONIC);
|
|
47
|
-
console.log(address);
|
|
48
|
-
|
|
49
|
-
const payload = `{ "address": "${TEST_ADDRESS}" }`;
|
|
50
|
-
const userStats = await getUserStats(payload);
|
|
51
|
-
console.log(userStats);
|
|
52
|
-
|
|
53
|
-
const balances1 = await getAccountBalances();
|
|
54
|
-
console.log(balances1);
|
|
55
|
-
|
|
56
|
-
const vaultOwnerShares = await getMegavaultOwnerShares(payload);
|
|
57
|
-
console.log(vaultOwnerShares);
|
|
58
|
-
|
|
59
|
-
const depositResult = await depositToMegavault(0, 2);
|
|
60
|
-
console.log(depositResult);
|
|
61
|
-
|
|
62
|
-
const withdrawResult = await withdrawFromMegavault(0, 1, 0);
|
|
63
|
-
console.log(withdrawResult);
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
const sendTokenPayload = {
|
|
67
|
-
subaccountNumber: 0,
|
|
68
|
-
amount: '10', // Dydx Token
|
|
69
|
-
recipient: 'dydx15ndn9c895f8ntck25qughtuck9spv2d9svw5qx',
|
|
70
|
-
};
|
|
71
|
-
const fees = await simulateTransferNativeToken(JSON.stringify(sendTokenPayload));
|
|
72
|
-
console.log(fees);
|
|
73
|
-
|
|
74
|
-
let tx = await transferNativeToken(JSON.stringify(sendTokenPayload));
|
|
75
|
-
console.log(tx);
|
|
76
|
-
|
|
77
|
-
let balances = await getAccountBalances();
|
|
78
|
-
console.log(balances);
|
|
79
|
-
|
|
80
|
-
const simulatePayload = {
|
|
81
|
-
subaccountNumber: 0,
|
|
82
|
-
amount: 20, // In USDC i.e. $20.00
|
|
83
|
-
};
|
|
84
|
-
let stdFee = await simulateWithdraw(JSON.stringify(simulatePayload));
|
|
85
|
-
console.log(stdFee);
|
|
86
|
-
|
|
87
|
-
const withdrawlPayload = {
|
|
88
|
-
subaccountNumber: 0,
|
|
89
|
-
amount: 20,
|
|
90
|
-
};
|
|
91
|
-
tx = await withdraw(JSON.stringify(withdrawlPayload));
|
|
92
|
-
console.log(tx);
|
|
93
|
-
|
|
94
|
-
balances = await getAccountBalances();
|
|
95
|
-
console.log(balances);
|
|
96
|
-
|
|
97
|
-
await new Promise((resolve) => setTimeout(resolve, 1000));
|
|
98
|
-
|
|
99
|
-
const depositPayload = {
|
|
100
|
-
subaccountNumber: 0,
|
|
101
|
-
amount: 20,
|
|
102
|
-
};
|
|
103
|
-
const stringVal = JSON.stringify(depositPayload);
|
|
104
|
-
|
|
105
|
-
stdFee = await simulateDeposit(stringVal);
|
|
106
|
-
console.log(stdFee);
|
|
107
|
-
|
|
108
|
-
tx = await deposit(stringVal);
|
|
109
|
-
console.log(tx);
|
|
110
|
-
|
|
111
|
-
const squidPayload = `
|
|
112
|
-
{
|
|
113
|
-
"msgTypeUrl": "/ibc.applications.transfer.v1.MsgTransfer",
|
|
114
|
-
"msg": {
|
|
115
|
-
"sourcePort": "transfer",
|
|
116
|
-
"sourceChannel": "channel-0",
|
|
117
|
-
"token": {
|
|
118
|
-
"denom": "ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5",
|
|
119
|
-
"amount": "10000000"
|
|
120
|
-
},
|
|
121
|
-
"sender": "dydx16zfx8g4jg9vels3rsvcym490tkn5la304c57e9",
|
|
122
|
-
"receiver": "noble16zfx8g4jg9vels3rsvcym490tkn5la305z0jpu",
|
|
123
|
-
"timeoutTimestamp": {
|
|
124
|
-
"low": -1208865792,
|
|
125
|
-
"high": 393844701,
|
|
126
|
-
"unsigned": false
|
|
127
|
-
},
|
|
128
|
-
"memo": "{\\"forward\\":{\\"receiver\\":\\"osmo1zl9ztmwe2wcdvv9std8xn06mdaqaqm789rutmazfh3z869zcax4sv0ctqw\\",\\"port\\":\\"transfer\\",\\"channel\\":\\"channel-10\\",\\"next\\":{\\"wasm\\":{\\"contract\\":\\"osmo1zl9ztmwe2wcdvv9std8xn06mdaqaqm789rutmazfh3z869zcax4sv0ctqw\\",\\"msg\\":{\\"swap_with_action\\":{\\"swap_msg\\":{\\"token_out_min_amount\\":\\"26039154\\",\\"path\\":[{\\"pool_id\\":\\"46\\",\\"token_out_denom\\":\\"ibc/6F34E1BD664C36CE49ACC28E60D62559A5F96C4F9A6CCE4FC5A67B2852E24CFE\\"}]},\\"after_swap_action\\":{\\"ibc_transfer\\":{\\"receiver\\":\\"axelar1dv4u5k73pzqrxlzujxg3qp8kvc3pje7jtdvu72npnt5zhq05ejcsn5qme5\\",\\"channel\\":\\"channel-3\\",\\"next_memo\\":{\\"destination_chain\\":\\"ethereum-2\\",\\"destination_address\\":\\"0x481A2AAE41cd34832dDCF5A79404538bb2c02bC8\\",\\"payload\\":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,49,218,140,19,124,78,181,10,51,8,133,105,138,128,201,57,254,53,175,138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,37,77,6,243,59,220,91,142,224,91,46,164,114,16,126,48,2,38,101,154,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,37,77,6,243,59,220,91,142,224,91,46,164,114,16,126,48,2,38,101,154,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,9,94,167,179,0,0,0,0,0,0,0,0,0,0,0,0,122,37,13,86,48,180,207,83,151,57,223,44,93,172,180,198,89,242,72,141,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,37,77,6,243,59,220,91,142,224,91,46,164,114,16,126,48,2,38,101,154,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,122,37,13,86,48,180,207,83,151,57,223,44,93,172,180,198,89,242,72,141,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,4,24,203,175,229,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,148,53,113,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,29,55,213,140,136,107,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,0,0,0,0,0,0,0,0,0,0,0,0,49,218,140,19,124,78,181,10,51,8,133,105,138,128,201,57,254,53,175,138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,137,180,65,29,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,37,77,6,243,59,220,91,142,224,91,46,164,114,16,126,48,2,38,101,154,0,0,0,0,0,0,0,0,0,0,0,0,180,251,242,113,20,63,79,191,123,145,165,222,211,24,5,228,43,34,8,214,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,37,77,6,243,59,220,91,142,224,91,46,164,114,16,126,48,2,38,101,154,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],\\"type\\":2}}},\\"local_fallback_address\\":\\"osmo16zfx8g4jg9vels3rsvcym490tkn5la3056f20q\\"}}}}}}"
|
|
129
|
-
}
|
|
130
|
-
}`;
|
|
131
|
-
console.log(squidPayload);
|
|
132
|
-
|
|
133
|
-
const encode = (str: string): string => Buffer.from(str, 'binary').toString('base64');
|
|
134
|
-
const encoded = encode(squidPayload);
|
|
135
|
-
|
|
136
|
-
tx = await withdrawToIBC(0, '13', encoded);
|
|
137
|
-
console.log(tx);
|
|
138
|
-
} catch (error) {
|
|
139
|
-
console.log(error.message);
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
test()
|
|
144
|
-
.then(() => {})
|
|
145
|
-
.catch((error) => {
|
|
146
|
-
console.log(error.message);
|
|
147
|
-
});
|
|
148
|
-
|
|
149
|
-
const error = new UserError('client is not connected. Call connectClient() first');
|
|
150
|
-
const text = wrappedError(error);
|
|
151
|
-
console.log(text);
|