@dydxprotocol/v4-client-js 0.40.3 → 0.41.0
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/__native__/__ios__/v4-native-client.js +9 -58
- package/__tests__/modules/client/AccountEndpoints.test.ts +1 -1
- package/__tests__/modules/client/FaucetEndpoint.test.ts +1 -1
- package/__tests__/modules/client/MarketsEndpoints.test.ts +1 -1
- package/__tests__/modules/client/Transfers.test.ts +1 -1
- package/__tests__/modules/client/UtilityEndpoints.test.ts +1 -1
- package/__tests__/modules/client/ValidatorGetEndpoints.test.ts +1 -1
- package/__tests__/modules/client/ValidatorPostEndpoints.test.ts +1 -1
- package/build/__tests__/modules/client/AccountEndpoints.test.js +1 -1
- package/build/__tests__/modules/client/FaucetEndpoint.test.js +1 -1
- package/build/__tests__/modules/client/MarketsEndpoints.test.js +1 -1
- package/build/__tests__/modules/client/Transfers.test.js +1 -1
- package/build/__tests__/modules/client/UtilityEndpoints.test.js +1 -1
- package/build/__tests__/modules/client/ValidatorGetEndpoints.test.js +1 -1
- package/build/__tests__/modules/client/ValidatorPostEndpoints.test.js +1 -1
- package/build/examples/account_endpoints.js +1 -1
- package/build/examples/composite_example.js +1 -1
- package/build/examples/faucet_endpoint.js +1 -1
- package/build/examples/long_term_order_cancel_example.js +1 -1
- package/build/examples/markets_endpoints.js +1 -1
- package/build/examples/native_examples.js +6 -18
- package/build/examples/short_term_order_cancel_example.js +1 -1
- package/build/examples/short_term_order_composite_example.js +1 -1
- package/build/examples/test.js +1 -1
- package/build/examples/transfer_example_deposit.js +2 -3
- package/build/examples/transfer_example_send.js +2 -3
- package/build/examples/transfer_example_subaccount_transfer.js +2 -3
- package/build/examples/transfer_example_withdraw.js +2 -2
- package/build/examples/transfer_example_withdraw_other.js +2 -3
- package/build/examples/utility_endpoints.js +1 -1
- package/build/examples/validator_get_example.js +1 -1
- package/build/examples/validator_post_example.js +1 -1
- package/build/examples/websocket_example.js +1 -1
- package/build/src/clients/constants.d.ts +0 -12
- package/build/src/clients/constants.js +1 -33
- package/build/src/clients/faucet-client.d.ts +1 -1
- package/build/src/clients/faucet-client.js +1 -1
- package/build/src/clients/native.d.ts +3 -7
- package/build/src/clients/native.js +7 -24
- package/examples/account_endpoints.ts +1 -1
- package/examples/composite_example.ts +1 -1
- package/examples/faucet_endpoint.ts +1 -1
- package/examples/long_term_order_cancel_example.ts +1 -1
- package/examples/markets_endpoints.ts +1 -1
- package/examples/native_examples.ts +2 -18
- package/examples/short_term_order_cancel_example.ts +1 -1
- package/examples/short_term_order_composite_example.ts +1 -1
- package/examples/test.ts +1 -1
- package/examples/transfer_example_deposit.ts +1 -3
- package/examples/transfer_example_send.ts +1 -3
- package/examples/transfer_example_subaccount_transfer.ts +1 -3
- package/examples/transfer_example_withdraw.ts +2 -2
- package/examples/transfer_example_withdraw_other.ts +1 -3
- package/examples/utility_endpoints.ts +1 -1
- package/examples/validator_get_example.ts +1 -1
- package/examples/validator_post_example.ts +1 -1
- package/examples/websocket_example.ts +1 -1
- package/package.json +1 -1
- package/src/clients/constants.ts +0 -42
- package/src/clients/faucet-client.ts +1 -1
- package/src/clients/native.ts +5 -25
|
@@ -1,8 +1,7 @@
|
|
|
1
|
+
import { Network } from '../src/clients/constants';
|
|
1
2
|
import { UserError } from '../src/clients/lib/errors';
|
|
2
3
|
import {
|
|
3
|
-
Environment,
|
|
4
4
|
connect,
|
|
5
|
-
connectNetwork,
|
|
6
5
|
connectWallet,
|
|
7
6
|
deposit,
|
|
8
7
|
getAccountBalances,
|
|
@@ -34,7 +33,7 @@ async function test(): Promise<void> {
|
|
|
34
33
|
const wallet = await connectWallet(DYDX_TEST_MNEMONIC);
|
|
35
34
|
console.log(wallet);
|
|
36
35
|
|
|
37
|
-
const address = await connect(
|
|
36
|
+
const address = await connect(Network.testnet(), DYDX_TEST_MNEMONIC);
|
|
38
37
|
console.log(address);
|
|
39
38
|
|
|
40
39
|
const payload = `{ "address": "${DYDX_TEST_ADDRESS}" }`;
|
|
@@ -113,21 +112,6 @@ async function test(): Promise<void> {
|
|
|
113
112
|
|
|
114
113
|
tx = await withdrawToIBC(0, '13', encoded);
|
|
115
114
|
console.log(tx);
|
|
116
|
-
|
|
117
|
-
const connected = await connectNetwork(JSON.stringify({
|
|
118
|
-
indexerUrl: 'https://indexer.v4staging.dydx.exchange',
|
|
119
|
-
websocketUrl: 'wss://indexer.v4staging.dydx.exchange/v4/ws',
|
|
120
|
-
validatorUrl: 'https://validator.v4staging.dydx.exchange',
|
|
121
|
-
chainId: 'dydxprotocol-testnet',
|
|
122
|
-
faucetUrl: 'https://faucet.v4staging.dydx.exchange',
|
|
123
|
-
USDC_DENOM: 'ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5',
|
|
124
|
-
USDC_DECIMALS: 6,
|
|
125
|
-
USDC_GAS_DENOM: 'uusdc',
|
|
126
|
-
CHAINTOKEN_DENOM: 'adv4tnt',
|
|
127
|
-
CHAINTOKEN_DECIMALS: 18,
|
|
128
|
-
}));
|
|
129
|
-
console.log(connected);
|
|
130
|
-
|
|
131
115
|
} catch (error) {
|
|
132
116
|
console.log(error.message);
|
|
133
117
|
}
|
|
@@ -11,7 +11,7 @@ import { DYDX_TEST_MNEMONIC, MAX_CLIENT_ID } from './constants';
|
|
|
11
11
|
async function test(): Promise<void> {
|
|
12
12
|
const wallet = await LocalWallet.fromMnemonic(DYDX_TEST_MNEMONIC, BECH32_PREFIX);
|
|
13
13
|
console.log(wallet);
|
|
14
|
-
const network = Network.
|
|
14
|
+
const network = Network.testnet();
|
|
15
15
|
const client = await CompositeClient.connect(network);
|
|
16
16
|
console.log('**Client**');
|
|
17
17
|
console.log(client);
|
|
@@ -18,7 +18,7 @@ async function sleep(ms: number): Promise<void> {
|
|
|
18
18
|
async function test(): Promise<void> {
|
|
19
19
|
const wallet = await LocalWallet.fromMnemonic(DYDX_TEST_MNEMONIC, BECH32_PREFIX);
|
|
20
20
|
console.log(wallet);
|
|
21
|
-
const network = Network.
|
|
21
|
+
const network = Network.testnet();
|
|
22
22
|
const client = await CompositeClient.connect(network);
|
|
23
23
|
console.log('**Client**');
|
|
24
24
|
console.log(client);
|
package/examples/test.ts
CHANGED
|
@@ -16,7 +16,7 @@ async function sleep(ms: number): Promise<void> {
|
|
|
16
16
|
async function test(): Promise<void> {
|
|
17
17
|
const wallet = await LocalWallet.fromMnemonic(DYDX_TEST_MNEMONIC, BECH32_PREFIX);
|
|
18
18
|
console.log(wallet);
|
|
19
|
-
const network = Network.
|
|
19
|
+
const network = Network.testnet();
|
|
20
20
|
const client = await CompositeClient.connect(network);
|
|
21
21
|
console.log('**Client**');
|
|
22
22
|
console.log(client);
|
|
@@ -7,13 +7,11 @@ import { Subaccount } from '../src/clients/subaccount';
|
|
|
7
7
|
import { ValidatorClient } from '../src/clients/validator-client';
|
|
8
8
|
import { DYDX_TEST_MNEMONIC } from './constants';
|
|
9
9
|
|
|
10
|
-
// TODO: Test after staging deploy latest transfer contracts.
|
|
11
|
-
|
|
12
10
|
async function test(): Promise<void> {
|
|
13
11
|
const wallet = await LocalWallet.fromMnemonic(DYDX_TEST_MNEMONIC, BECH32_PREFIX);
|
|
14
12
|
console.log(wallet);
|
|
15
13
|
|
|
16
|
-
const client = await ValidatorClient.connect(Network.
|
|
14
|
+
const client = await ValidatorClient.connect(Network.testnet().validatorConfig);
|
|
17
15
|
console.log('**Client**');
|
|
18
16
|
console.log(client);
|
|
19
17
|
|
|
@@ -10,8 +10,6 @@ import { Subaccount } from '../src/clients/subaccount';
|
|
|
10
10
|
import { ValidatorClient } from '../src/clients/validator-client';
|
|
11
11
|
import { DYDX_TEST_MNEMONIC } from './constants';
|
|
12
12
|
|
|
13
|
-
// TODO: Test after staging deploy latest transfer contracts.
|
|
14
|
-
|
|
15
13
|
async function test(): Promise<void> {
|
|
16
14
|
const wallet = await LocalWallet.fromMnemonic(
|
|
17
15
|
DYDX_TEST_MNEMONIC,
|
|
@@ -19,7 +17,7 @@ async function test(): Promise<void> {
|
|
|
19
17
|
);
|
|
20
18
|
console.log(wallet);
|
|
21
19
|
|
|
22
|
-
const client = await ValidatorClient.connect(Network.
|
|
20
|
+
const client = await ValidatorClient.connect(Network.testnet().validatorConfig);
|
|
23
21
|
console.log('**Client**');
|
|
24
22
|
console.log(client);
|
|
25
23
|
|
|
@@ -7,13 +7,11 @@ import { Subaccount } from '../src/clients/subaccount';
|
|
|
7
7
|
import { ValidatorClient } from '../src/clients/validator-client';
|
|
8
8
|
import { DYDX_TEST_MNEMONIC } from './constants';
|
|
9
9
|
|
|
10
|
-
// TODO: Test after staging deploy latest transfer contracts.
|
|
11
|
-
|
|
12
10
|
async function test(): Promise<void> {
|
|
13
11
|
const wallet = await LocalWallet.fromMnemonic(DYDX_TEST_MNEMONIC, BECH32_PREFIX);
|
|
14
12
|
console.log(wallet);
|
|
15
13
|
|
|
16
|
-
const client = await ValidatorClient.connect(Network.
|
|
14
|
+
const client = await ValidatorClient.connect(Network.testnet().validatorConfig);
|
|
17
15
|
console.log('**Client**');
|
|
18
16
|
console.log(client);
|
|
19
17
|
|
|
@@ -7,13 +7,13 @@ import { Subaccount } from '../src/clients/subaccount';
|
|
|
7
7
|
import { ValidatorClient } from '../src/clients/validator-client';
|
|
8
8
|
import { DYDX_TEST_MNEMONIC } from './constants';
|
|
9
9
|
|
|
10
|
-
// TODO: Test after
|
|
10
|
+
// TODO: Test after testnet deploy latest transfer contracts.
|
|
11
11
|
|
|
12
12
|
async function test(): Promise<void> {
|
|
13
13
|
const wallet = await LocalWallet.fromMnemonic(DYDX_TEST_MNEMONIC, BECH32_PREFIX);
|
|
14
14
|
console.log(wallet);
|
|
15
15
|
|
|
16
|
-
const client = await ValidatorClient.connect(Network.
|
|
16
|
+
const client = await ValidatorClient.connect(Network.testnet().validatorConfig);
|
|
17
17
|
console.log('**Client**');
|
|
18
18
|
console.log(client);
|
|
19
19
|
|
|
@@ -10,13 +10,11 @@ import { Subaccount } from '../src/clients/subaccount';
|
|
|
10
10
|
import { ValidatorClient } from '../src/clients/validator-client';
|
|
11
11
|
import { DYDX_TEST_MNEMONIC } from './constants';
|
|
12
12
|
|
|
13
|
-
// TODO: Test after staging deploy latest transfer contracts.
|
|
14
|
-
|
|
15
13
|
async function test(): Promise<void> {
|
|
16
14
|
const wallet = await LocalWallet.fromMnemonic(DYDX_TEST_MNEMONIC, BECH32_PREFIX);
|
|
17
15
|
console.log(wallet);
|
|
18
16
|
|
|
19
|
-
const client = await ValidatorClient.connect(Network.
|
|
17
|
+
const client = await ValidatorClient.connect(Network.testnet().validatorConfig);
|
|
20
18
|
console.log('**Client**');
|
|
21
19
|
console.log(client);
|
|
22
20
|
|
|
@@ -6,7 +6,7 @@ import { Network } from '../src/clients/constants';
|
|
|
6
6
|
import { IndexerClient } from '../src/clients/indexer-client';
|
|
7
7
|
|
|
8
8
|
async function test(): Promise<void> {
|
|
9
|
-
const client = new IndexerClient(Network.
|
|
9
|
+
const client = new IndexerClient(Network.testnet().indexerConfig);
|
|
10
10
|
|
|
11
11
|
// Get indexer server time
|
|
12
12
|
try {
|
|
@@ -3,7 +3,7 @@ import { ValidatorClient } from '../src/clients/validator-client';
|
|
|
3
3
|
import { DYDX_TEST_ADDRESS } from './constants';
|
|
4
4
|
|
|
5
5
|
async function test(): Promise<void> {
|
|
6
|
-
const client = await ValidatorClient.connect(Network.
|
|
6
|
+
const client = await ValidatorClient.connect(Network.testnet().validatorConfig);
|
|
7
7
|
|
|
8
8
|
try {
|
|
9
9
|
const account = await client.get.getAccount(DYDX_TEST_ADDRESS);
|
|
@@ -33,7 +33,7 @@ async function test(): Promise<void> {
|
|
|
33
33
|
const wallet = await LocalWallet.fromMnemonic(DYDX_TEST_MNEMONIC, BECH32_PREFIX);
|
|
34
34
|
console.log(wallet);
|
|
35
35
|
|
|
36
|
-
const client = await ValidatorClient.connect(Network.
|
|
36
|
+
const client = await ValidatorClient.connect(Network.testnet().validatorConfig);
|
|
37
37
|
console.log('**Client**');
|
|
38
38
|
console.log(client);
|
|
39
39
|
|
package/package.json
CHANGED
package/src/clients/constants.ts
CHANGED
|
@@ -12,28 +12,20 @@ export const TESTNET_CHAIN_ID = 'dydx-testnet-4';
|
|
|
12
12
|
|
|
13
13
|
// ------------ API URLs ------------
|
|
14
14
|
export enum IndexerApiHost {
|
|
15
|
-
DEV = 'https://indexer.v4dev.dydx.exchange',
|
|
16
|
-
STAGING = 'https://indexer.v4staging.dydx.exchange',
|
|
17
15
|
TESTNET = 'https://dydx-testnet.imperator.co',
|
|
18
16
|
// TODO: Add MAINNET
|
|
19
17
|
}
|
|
20
18
|
|
|
21
19
|
export enum IndexerWSHost {
|
|
22
|
-
DEV = 'wss://indexer.v4dev.dydx.exchange/v4/ws',
|
|
23
|
-
STAGING = 'wss://indexer.v4staging.dydx.exchange/v4/ws',
|
|
24
20
|
TESTNET = 'wss://dydx-testnet.imperator.co/v4/ws',
|
|
25
21
|
// TODO: Add MAINNET
|
|
26
22
|
}
|
|
27
23
|
|
|
28
24
|
export enum FaucetApiHost {
|
|
29
|
-
DEV = 'https://faucet.v4dev.expotrading.com',
|
|
30
|
-
STAGING = 'https://faucet.v4staging.dydx.exchange',
|
|
31
25
|
TESTNET = 'https://faucet.v4testnet.dydx.exchange',
|
|
32
26
|
}
|
|
33
27
|
|
|
34
28
|
export enum ValidatorApiHost {
|
|
35
|
-
DEV = 'https://validator.v4dev.dydx.exchange',
|
|
36
|
-
STAGING = 'https://validator.v4staging.dydx.exchange',
|
|
37
29
|
TESTNET = 'https://dydx-testnet-archive.allthatnode.com',
|
|
38
30
|
// TODO: Add MAINNET
|
|
39
31
|
}
|
|
@@ -41,8 +33,6 @@ export enum ValidatorApiHost {
|
|
|
41
33
|
// ------------ Network IDs ------------
|
|
42
34
|
|
|
43
35
|
export enum NetworkId {
|
|
44
|
-
DEV = 'dydxprotocol-testnet',
|
|
45
|
-
STAGING = 'dydxprotocol-testnet',
|
|
46
36
|
TESTNET = 'dydx-testnet-4',
|
|
47
37
|
// TODO: Add MAINNET
|
|
48
38
|
}
|
|
@@ -174,38 +164,6 @@ export class Network {
|
|
|
174
164
|
public validatorConfig: ValidatorConfig,
|
|
175
165
|
) {}
|
|
176
166
|
|
|
177
|
-
static dev(): Network {
|
|
178
|
-
const indexerConfig = new IndexerConfig(
|
|
179
|
-
IndexerApiHost.DEV,
|
|
180
|
-
IndexerWSHost.DEV,
|
|
181
|
-
);
|
|
182
|
-
const validatorConfig = new ValidatorConfig(ValidatorApiHost.DEV, DEV_CHAIN_ID,
|
|
183
|
-
{
|
|
184
|
-
CHAINTOKEN_DENOM: 'adv4tnt',
|
|
185
|
-
USDC_DENOM: 'ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5',
|
|
186
|
-
USDC_GAS_DENOM: 'uusdc',
|
|
187
|
-
USDC_DECIMALS: 6,
|
|
188
|
-
CHAINTOKEN_DECIMALS: 18,
|
|
189
|
-
});
|
|
190
|
-
return new Network('dev', indexerConfig, validatorConfig);
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
static staging(): Network {
|
|
194
|
-
const indexerConfig = new IndexerConfig(
|
|
195
|
-
IndexerApiHost.STAGING,
|
|
196
|
-
IndexerWSHost.STAGING,
|
|
197
|
-
);
|
|
198
|
-
const validatorConfig = new ValidatorConfig(ValidatorApiHost.STAGING, STAGING_CHAIN_ID,
|
|
199
|
-
{
|
|
200
|
-
CHAINTOKEN_DENOM: 'adv4tnt',
|
|
201
|
-
USDC_DENOM: 'ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5',
|
|
202
|
-
USDC_GAS_DENOM: 'uusdc',
|
|
203
|
-
USDC_DECIMALS: 6,
|
|
204
|
-
CHAINTOKEN_DECIMALS: 18,
|
|
205
|
-
});
|
|
206
|
-
return new Network('staging', indexerConfig, validatorConfig);
|
|
207
|
-
}
|
|
208
|
-
|
|
209
167
|
static testnet(): Network {
|
|
210
168
|
const indexerConfig = new IndexerConfig(
|
|
211
169
|
IndexerApiHost.TESTNET,
|
|
@@ -3,7 +3,7 @@ import RestClient from './modules/rest';
|
|
|
3
3
|
|
|
4
4
|
export class FaucetClient extends RestClient {
|
|
5
5
|
/**
|
|
6
|
-
* @description For
|
|
6
|
+
* @description For testnet only, add USDC to an subaccount
|
|
7
7
|
*
|
|
8
8
|
* @returns The HTTP response.
|
|
9
9
|
*/
|
package/src/clients/native.ts
CHANGED
|
@@ -31,32 +31,12 @@ declare global {
|
|
|
31
31
|
var wallet: LocalWallet;
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
/* this should match the definitions in Abacus */
|
|
35
|
-
export enum Environment {
|
|
36
|
-
staging = 'dydxprotocol-staging',
|
|
37
|
-
testnet = 'dydxprotocol-testnet-2',
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
function network(env: Environment): Network {
|
|
41
|
-
switch (env) {
|
|
42
|
-
case Environment.staging:
|
|
43
|
-
return Network.staging();
|
|
44
|
-
|
|
45
|
-
case Environment.testnet:
|
|
46
|
-
return Network.testnet();
|
|
47
|
-
|
|
48
|
-
default:
|
|
49
|
-
throw new UserError('invalid environment');
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
|
|
53
34
|
export async function connectClient(
|
|
54
|
-
|
|
35
|
+
network: Network,
|
|
55
36
|
): Promise<string> {
|
|
56
37
|
try {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
return encodeJson(config);
|
|
38
|
+
globalThis.client = await CompositeClient.connect(network);
|
|
39
|
+
return encodeJson(network);
|
|
60
40
|
} catch (e) {
|
|
61
41
|
return wrappedError(e);
|
|
62
42
|
}
|
|
@@ -129,11 +109,11 @@ export async function connectWallet(
|
|
|
129
109
|
}
|
|
130
110
|
|
|
131
111
|
export async function connect(
|
|
132
|
-
|
|
112
|
+
network: Network,
|
|
133
113
|
mnemonic: string,
|
|
134
114
|
): Promise<string> {
|
|
135
115
|
try {
|
|
136
|
-
await connectClient(
|
|
116
|
+
await connectClient(network);
|
|
137
117
|
return connectWallet(mnemonic);
|
|
138
118
|
} catch (e) {
|
|
139
119
|
return wrappedError(e);
|