@dydxprotocol/v4-client-js 1.0.25 → 1.0.26

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.
@@ -1,30 +1,41 @@
1
1
  import { PageRequest } from '@dydxprotocol/v4-proto/src/codegen/cosmos/base/query/v1beta1/pagination';
2
2
  import { BroadcastOptions, DenomConfig } from './types';
3
3
  export * from '../lib/constants';
4
+ /**
5
+ * Disclaimer: Note that as of the date hereof, the testnet and dYdX Chain deployment by DYDX
6
+ * token holders are the only known deployments of the dYdX v4 software, and other deployment
7
+ * options may be added.
8
+ * For more information, please see https://dydx.exchange/dydx-chain-front-end-options
9
+ */
4
10
  export declare const DEV_CHAIN_ID = "dydxprotocol-testnet";
5
11
  export declare const STAGING_CHAIN_ID = "dydxprotocol-testnet";
6
12
  export declare const TESTNET_CHAIN_ID = "dydx-testnet-4";
7
13
  export declare const LOCAL_CHAIN_ID = "localdydxprotocol";
14
+ export declare const MAINNET_CHAIN_ID = "dydx-mainnet-1";
8
15
  export declare enum IndexerApiHost {
9
16
  TESTNET = "https://dydx-testnet.imperator.co",
10
- LOCAL = "http://localhost:3002"
17
+ LOCAL = "http://localhost:3002",
18
+ MAINNET = "https://indexer.dydx.trade"
11
19
  }
12
20
  export declare enum IndexerWSHost {
13
21
  TESTNET = "wss://dydx-testnet.imperator.co/v4/ws",
14
- LOCAL = "ws://localhost:3003"
22
+ LOCAL = "ws://localhost:3003",
23
+ MAINNET = "wss://indexer.dydx.trade/v4/ws"
15
24
  }
16
25
  export declare enum FaucetApiHost {
17
26
  TESTNET = "https://faucet.v4testnet.dydx.exchange"
18
27
  }
19
28
  export declare enum ValidatorApiHost {
20
- TESTNET = "https://test-dydx.kingnodes.com",
21
- LOCAL = "http://localhost:26657"
29
+ TESTNET = "https://dydx-ops-rest.kingnodes.com:443",
30
+ LOCAL = "http://localhost:26657",
31
+ MAINNET = "https://dydx-ops-rpc.kingnodes.com:443"
22
32
  }
23
33
  export declare enum NetworkId {
24
- TESTNET = "dydx-testnet-4"
34
+ TESTNET = "dydx-testnet-4",
35
+ MAINNET = "dydx-mainnet-1"
25
36
  }
26
- export declare const NETWORK_ID_MAINNET: string | null;
27
37
  export declare const NETWORK_ID_TESTNET: string;
38
+ export declare const NETWORK_ID_MAINNET: string;
28
39
  export declare const TYPE_URL_MSG_SEND = "/cosmos.bank.v1beta1.MsgSend";
29
40
  export declare const TYPE_URL_MSG_SUBMIT_PROPOSAL = "/cosmos.gov.v1.MsgSubmitProposal";
30
41
  export declare const TYPE_URL_MSG_PLACE_ORDER = "/dydxprotocol.clob.MsgPlaceOrder";
@@ -111,5 +122,6 @@ export declare class Network {
111
122
  constructor(env: string, indexerConfig: IndexerConfig, validatorConfig: ValidatorConfig);
112
123
  static testnet(): Network;
113
124
  static local(): Network;
125
+ static mainnet(): Network;
114
126
  getString(): string;
115
127
  }
@@ -17,26 +17,36 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
17
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.Network = exports.ValidatorConfig = exports.IndexerConfig = exports.PAGE_REQUEST = exports.SHORT_BLOCK_FORWARD = exports.SHORT_BLOCK_WINDOW = exports.MAX_MEMO_CHARACTERS = exports.DEFAULT_API_TIMEOUT = exports.TimePeriod = exports.PositionStatus = exports.TickerType = exports.OrderStatus = exports.OrderExecution = exports.OrderTimeInForce = exports.OrderSide = exports.OrderType = exports.MarketStatisticDay = exports.DELAYMSG_MODULE_ADDRESS = exports.GOV_MODULE_ADDRESS = exports.TYPE_URL_MSG_DEPOSIT_TO_SUBACCOUNT = exports.TYPE_URL_MSG_WITHDRAW_FROM_SUBACCOUNT = exports.TYPE_URL_MSG_CREATE_TRANSFER = exports.TYPE_URL_MSG_CREATE_ORACLE_MARKET = exports.TYPE_URL_MSG_CREATE_PERPETUAL = exports.TYPE_URL_MSG_DELAY_MESSAGE = exports.TYPE_URL_MSG_UPDATE_CLOB_PAIR = exports.TYPE_URL_MSG_CREATE_CLOB_PAIR = exports.TYPE_URL_MSG_CANCEL_ORDER = exports.TYPE_URL_MSG_PLACE_ORDER = exports.TYPE_URL_MSG_SUBMIT_PROPOSAL = exports.TYPE_URL_MSG_SEND = exports.NETWORK_ID_TESTNET = exports.NETWORK_ID_MAINNET = exports.NetworkId = exports.ValidatorApiHost = exports.FaucetApiHost = exports.IndexerWSHost = exports.IndexerApiHost = exports.LOCAL_CHAIN_ID = exports.TESTNET_CHAIN_ID = exports.STAGING_CHAIN_ID = exports.DEV_CHAIN_ID = void 0;
20
+ exports.Network = exports.ValidatorConfig = exports.IndexerConfig = exports.PAGE_REQUEST = exports.SHORT_BLOCK_FORWARD = exports.SHORT_BLOCK_WINDOW = exports.MAX_MEMO_CHARACTERS = exports.DEFAULT_API_TIMEOUT = exports.TimePeriod = exports.PositionStatus = exports.TickerType = exports.OrderStatus = exports.OrderExecution = exports.OrderTimeInForce = exports.OrderSide = exports.OrderType = exports.MarketStatisticDay = exports.DELAYMSG_MODULE_ADDRESS = exports.GOV_MODULE_ADDRESS = exports.TYPE_URL_MSG_DEPOSIT_TO_SUBACCOUNT = exports.TYPE_URL_MSG_WITHDRAW_FROM_SUBACCOUNT = exports.TYPE_URL_MSG_CREATE_TRANSFER = exports.TYPE_URL_MSG_CREATE_ORACLE_MARKET = exports.TYPE_URL_MSG_CREATE_PERPETUAL = exports.TYPE_URL_MSG_DELAY_MESSAGE = exports.TYPE_URL_MSG_UPDATE_CLOB_PAIR = exports.TYPE_URL_MSG_CREATE_CLOB_PAIR = exports.TYPE_URL_MSG_CANCEL_ORDER = exports.TYPE_URL_MSG_PLACE_ORDER = exports.TYPE_URL_MSG_SUBMIT_PROPOSAL = exports.TYPE_URL_MSG_SEND = exports.NETWORK_ID_MAINNET = exports.NETWORK_ID_TESTNET = exports.NetworkId = exports.ValidatorApiHost = exports.FaucetApiHost = exports.IndexerWSHost = exports.IndexerApiHost = exports.MAINNET_CHAIN_ID = exports.LOCAL_CHAIN_ID = exports.TESTNET_CHAIN_ID = exports.STAGING_CHAIN_ID = exports.DEV_CHAIN_ID = void 0;
21
21
  const long_1 = __importDefault(require("long"));
22
22
  __exportStar(require("../lib/constants"), exports);
23
+ /**
24
+ * Disclaimer: Note that as of the date hereof, the testnet and dYdX Chain deployment by DYDX
25
+ * token holders are the only known deployments of the dYdX v4 software, and other deployment
26
+ * options may be added.
27
+ * For more information, please see https://dydx.exchange/dydx-chain-front-end-options
28
+ */
23
29
  // Chain ID
24
30
  exports.DEV_CHAIN_ID = 'dydxprotocol-testnet';
25
31
  exports.STAGING_CHAIN_ID = 'dydxprotocol-testnet';
26
32
  exports.TESTNET_CHAIN_ID = 'dydx-testnet-4';
27
33
  exports.LOCAL_CHAIN_ID = 'localdydxprotocol';
34
+ // For the deployment by DYDX token holders
35
+ exports.MAINNET_CHAIN_ID = 'dydx-mainnet-1';
28
36
  // ------------ API URLs ------------
29
37
  var IndexerApiHost;
30
38
  (function (IndexerApiHost) {
31
39
  IndexerApiHost["TESTNET"] = "https://dydx-testnet.imperator.co";
32
40
  IndexerApiHost["LOCAL"] = "http://localhost:3002";
33
- // TODO: Add MAINNET
41
+ // For the deployment by DYDX token holders
42
+ IndexerApiHost["MAINNET"] = "https://indexer.dydx.trade";
34
43
  })(IndexerApiHost = exports.IndexerApiHost || (exports.IndexerApiHost = {}));
35
44
  var IndexerWSHost;
36
45
  (function (IndexerWSHost) {
37
46
  IndexerWSHost["TESTNET"] = "wss://dydx-testnet.imperator.co/v4/ws";
38
- // TODO: Add MAINNET
39
47
  IndexerWSHost["LOCAL"] = "ws://localhost:3003";
48
+ // For the deployment by DYDX token holders
49
+ IndexerWSHost["MAINNET"] = "wss://indexer.dydx.trade/v4/ws";
40
50
  })(IndexerWSHost = exports.IndexerWSHost || (exports.IndexerWSHost = {}));
41
51
  var FaucetApiHost;
42
52
  (function (FaucetApiHost) {
@@ -44,18 +54,21 @@ var FaucetApiHost;
44
54
  })(FaucetApiHost = exports.FaucetApiHost || (exports.FaucetApiHost = {}));
45
55
  var ValidatorApiHost;
46
56
  (function (ValidatorApiHost) {
47
- ValidatorApiHost["TESTNET"] = "https://test-dydx.kingnodes.com";
48
- // TODO: Add MAINNET
57
+ ValidatorApiHost["TESTNET"] = "https://dydx-ops-rest.kingnodes.com:443";
49
58
  ValidatorApiHost["LOCAL"] = "http://localhost:26657";
59
+ // For the deployment by DYDX token holders
60
+ ValidatorApiHost["MAINNET"] = "https://dydx-ops-rpc.kingnodes.com:443";
50
61
  })(ValidatorApiHost = exports.ValidatorApiHost || (exports.ValidatorApiHost = {}));
51
62
  // ------------ Network IDs ------------
52
63
  var NetworkId;
53
64
  (function (NetworkId) {
54
65
  NetworkId["TESTNET"] = "dydx-testnet-4";
55
- // TODO: Add MAINNET
66
+ // For the deployment by DYDX token holders
67
+ NetworkId["MAINNET"] = "dydx-mainnet-1";
56
68
  })(NetworkId = exports.NetworkId || (exports.NetworkId = {}));
57
- exports.NETWORK_ID_MAINNET = null;
58
69
  exports.NETWORK_ID_TESTNET = 'dydxprotocol-testnet';
70
+ // For the deployment by DYDX token holders
71
+ exports.NETWORK_ID_MAINNET = 'dydx-mainnet-1';
59
72
  // ------------ MsgType URLs ------------
60
73
  // Default CosmosSDK
61
74
  // x/bank
@@ -208,10 +221,21 @@ class Network {
208
221
  }, undefined, 'Client Example');
209
222
  return new Network('local', indexerConfig, validatorConfig);
210
223
  }
211
- // TODO: Add mainnet(): Network
224
+ // For the deployment by DYDX token holders.
225
+ static mainnet() {
226
+ const indexerConfig = new IndexerConfig(IndexerApiHost.MAINNET, IndexerWSHost.MAINNET);
227
+ const validatorConfig = new ValidatorConfig(ValidatorApiHost.MAINNET, exports.MAINNET_CHAIN_ID, {
228
+ CHAINTOKEN_DENOM: 'adydx',
229
+ USDC_DENOM: 'ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5',
230
+ USDC_GAS_DENOM: 'uusdc',
231
+ USDC_DECIMALS: 6,
232
+ CHAINTOKEN_DECIMALS: 18,
233
+ }, undefined, 'Client Example');
234
+ return new Network('mainnet', indexerConfig, validatorConfig);
235
+ }
212
236
  getString() {
213
237
  return this.env;
214
238
  }
215
239
  }
216
240
  exports.Network = Network;
217
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NsaWVudHMvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsZ0RBQXdCO0FBSXhCLG1EQUFpQztBQUVqQyxXQUFXO0FBQ0UsUUFBQSxZQUFZLEdBQUcsc0JBQXNCLENBQUM7QUFDdEMsUUFBQSxnQkFBZ0IsR0FBRyxzQkFBc0IsQ0FBQztBQUMxQyxRQUFBLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDO0FBQ3BDLFFBQUEsY0FBYyxHQUFHLG1CQUFtQixDQUFDO0FBRWxELHFDQUFxQztBQUNyQyxJQUFZLGNBSVg7QUFKRCxXQUFZLGNBQWM7SUFDeEIsK0RBQTZDLENBQUE7SUFDN0MsaURBQStCLENBQUE7SUFDL0Isb0JBQW9CO0FBQ3RCLENBQUMsRUFKVyxjQUFjLEdBQWQsc0JBQWMsS0FBZCxzQkFBYyxRQUl6QjtBQUVELElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUN2QixrRUFBaUQsQ0FBQTtJQUNqRCxvQkFBb0I7SUFDcEIsOENBQTZCLENBQUE7QUFDL0IsQ0FBQyxFQUpXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBSXhCO0FBRUQsSUFBWSxhQUVYO0FBRkQsV0FBWSxhQUFhO0lBQ3ZCLG1FQUFrRCxDQUFBO0FBQ3BELENBQUMsRUFGVyxhQUFhLEdBQWIscUJBQWEsS0FBYixxQkFBYSxRQUV4QjtBQUVELElBQVksZ0JBSVg7QUFKRCxXQUFZLGdCQUFnQjtJQUMxQiwrREFBMkMsQ0FBQTtJQUMzQyxvQkFBb0I7SUFDcEIsb0RBQWdDLENBQUE7QUFDbEMsQ0FBQyxFQUpXLGdCQUFnQixHQUFoQix3QkFBZ0IsS0FBaEIsd0JBQWdCLFFBSTNCO0FBRUQsd0NBQXdDO0FBRXhDLElBQVksU0FHWDtBQUhELFdBQVksU0FBUztJQUNuQix1Q0FBMEIsQ0FBQTtJQUMxQixvQkFBb0I7QUFDdEIsQ0FB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
241
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NsaWVudHMvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsZ0RBQXdCO0FBSXhCLG1EQUFpQztBQUVqQzs7Ozs7R0FLRztBQUVILFdBQVc7QUFDRSxRQUFBLFlBQVksR0FBRyxzQkFBc0IsQ0FBQztBQUN0QyxRQUFBLGdCQUFnQixHQUFHLHNCQUFzQixDQUFDO0FBQzFDLFFBQUEsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUM7QUFDcEMsUUFBQSxjQUFjLEdBQUcsbUJBQW1CLENBQUM7QUFDbEQsMkNBQTJDO0FBQzlCLFFBQUEsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUM7QUFFakQscUNBQXFDO0FBQ3JDLElBQVksY0FLWDtBQUxELFdBQVksY0FBYztJQUN4QiwrREFBNkMsQ0FBQTtJQUM3QyxpREFBK0IsQ0FBQTtJQUMvQiwyQ0FBMkM7SUFDM0Msd0RBQXNDLENBQUE7QUFDeEMsQ0FBQyxFQUxXLGNBQWMsR0FBZCxzQkFBYyxLQUFkLHNCQUFjLFFBS3pCO0FBRUQsSUFBWSxhQUtYO0FBTEQsV0FBWSxhQUFhO0lBQ3ZCLGtFQUFpRCxDQUFBO0lBQ2pELDhDQUE2QixDQUFBO0lBQzdCLDJDQUEyQztJQUMzQywyREFBMEMsQ0FBQTtBQUM1QyxDQUFDLEVBTFcsYUFBYSxHQUFiLHFCQUFhLEtBQWIscUJBQWEsUUFLeEI7QUFFRCxJQUFZLGFBRVg7QUFGRCxXQUFZLGFBQWE7SUFDdkIsbUVBQWtELENBQUE7QUFDcEQsQ0FBQyxFQUZXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBRXhCO0FBRUQsSUFBWSxnQkFLWDtBQUxELFdBQVksZ0JBQWdCO0lBQzFCLHVFQUFtRCxDQUFBO0lBQ25ELG9EQUFnQyxDQUFBO0lBQ2hDLDJDQUEyQztJQUMzQyxzRUFBa0QsQ0FBQTtBQUNwRCxDQUFDLEVBTFcsZ0JBQWdC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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dydxprotocol/v4-client-js",
3
- "version": "1.0.25",
3
+ "version": "1.0.26",
4
4
  "description": "General client library for the new dYdX system (v4 decentralized)",
5
5
  "main": "build/src/index.js",
6
6
  "scripts": {
@@ -5,23 +5,34 @@ import { BroadcastOptions, DenomConfig } from './types';
5
5
 
6
6
  export * from '../lib/constants';
7
7
 
8
+ /**
9
+ * Disclaimer: Note that as of the date hereof, the testnet and dYdX Chain deployment by DYDX
10
+ * token holders are the only known deployments of the dYdX v4 software, and other deployment
11
+ * options may be added.
12
+ * For more information, please see https://dydx.exchange/dydx-chain-front-end-options
13
+ */
14
+
8
15
  // Chain ID
9
16
  export const DEV_CHAIN_ID = 'dydxprotocol-testnet';
10
17
  export const STAGING_CHAIN_ID = 'dydxprotocol-testnet';
11
18
  export const TESTNET_CHAIN_ID = 'dydx-testnet-4';
12
19
  export const LOCAL_CHAIN_ID = 'localdydxprotocol';
20
+ // For the deployment by DYDX token holders
21
+ export const MAINNET_CHAIN_ID = 'dydx-mainnet-1';
13
22
 
14
23
  // ------------ API URLs ------------
15
24
  export enum IndexerApiHost {
16
25
  TESTNET = 'https://dydx-testnet.imperator.co',
17
- LOCAL = 'http://localhost:3002'
18
- // TODO: Add MAINNET
26
+ LOCAL = 'http://localhost:3002',
27
+ // For the deployment by DYDX token holders
28
+ MAINNET = 'https://indexer.dydx.trade'
19
29
  }
20
30
 
21
31
  export enum IndexerWSHost {
22
32
  TESTNET = 'wss://dydx-testnet.imperator.co/v4/ws',
23
- // TODO: Add MAINNET
24
- LOCAL = 'ws://localhost:3003'
33
+ LOCAL = 'ws://localhost:3003',
34
+ // For the deployment by DYDX token holders
35
+ MAINNET = 'wss://indexer.dydx.trade/v4/ws',
25
36
  }
26
37
 
27
38
  export enum FaucetApiHost {
@@ -29,19 +40,22 @@ export enum FaucetApiHost {
29
40
  }
30
41
 
31
42
  export enum ValidatorApiHost {
32
- TESTNET = 'https://test-dydx.kingnodes.com',
33
- // TODO: Add MAINNET
34
- LOCAL = 'http://localhost:26657'
43
+ TESTNET = 'https://dydx-ops-rest.kingnodes.com:443',
44
+ LOCAL = 'http://localhost:26657',
45
+ // For the deployment by DYDX token holders
46
+ MAINNET = 'https://dydx-ops-rpc.kingnodes.com:443'
35
47
  }
36
48
 
37
49
  // ------------ Network IDs ------------
38
50
 
39
51
  export enum NetworkId {
40
52
  TESTNET = 'dydx-testnet-4',
41
- // TODO: Add MAINNET
53
+ // For the deployment by DYDX token holders
54
+ MAINNET = 'dydx-mainnet-1'
42
55
  }
43
- export const NETWORK_ID_MAINNET: string | null = null;
44
56
  export const NETWORK_ID_TESTNET: string = 'dydxprotocol-testnet';
57
+ // For the deployment by DYDX token holders
58
+ export const NETWORK_ID_MAINNET: string = 'dydx-mainnet-1';
45
59
 
46
60
  // ------------ MsgType URLs ------------
47
61
  // Default CosmosSDK
@@ -237,7 +251,22 @@ export class Network {
237
251
  return new Network('local', indexerConfig, validatorConfig);
238
252
  }
239
253
 
240
- // TODO: Add mainnet(): Network
254
+ // For the deployment by DYDX token holders.
255
+ static mainnet(): Network {
256
+ const indexerConfig = new IndexerConfig(
257
+ IndexerApiHost.MAINNET,
258
+ IndexerWSHost.MAINNET,
259
+ );
260
+ const validatorConfig = new ValidatorConfig(ValidatorApiHost.MAINNET, MAINNET_CHAIN_ID,
261
+ {
262
+ CHAINTOKEN_DENOM: 'adydx',
263
+ USDC_DENOM: 'ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5',
264
+ USDC_GAS_DENOM: 'uusdc',
265
+ USDC_DECIMALS: 6,
266
+ CHAINTOKEN_DECIMALS: 18,
267
+ }, undefined, 'Client Example');
268
+ return new Network('mainnet', indexerConfig, validatorConfig);
269
+ }
241
270
 
242
271
  getString(): string {
243
272
  return this.env;