@dydxprotocol/v4-client-js 3.2.0 → 3.4.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/CHANGELOG.md +2 -3
- package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/affiliates.js +1 -1
- package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.js +11 -3
- package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/transfer.js +62 -2
- package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.js +28 -2
- package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.rpc.msg.js +7 -1
- package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.js +73 -2
- package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.lcd.js +7 -1
- package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.rpc.Query.js +10 -1
- package/build/cjs/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/stats.js +124 -15
- package/build/cjs/src/clients/composite-client.js +5 -5
- package/build/cjs/src/clients/lib/axios/types.js +1 -1
- package/build/cjs/src/clients/modules/rest.js +9 -1
- package/build/cjs/src/clients/modules/utility.js +9 -1
- package/build/cjs/src/clients/types.js +1 -1
- package/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/affiliates.d.ts +6 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/affiliates.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/affiliates.js +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.d.ts +3 -0
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/affiliates/query.js +11 -3
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bundle.d.ts +35 -4
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bundle.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rpc.query.d.ts +1 -0
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rpc.query.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/transfer.d.ts +30 -0
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/transfer.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/transfer.js +61 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.d.ts +17 -0
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.js +27 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.rpc.msg.d.ts +8 -2
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.rpc.msg.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.rpc.msg.js +9 -3
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.d.ts +29 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.js +73 -2
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.lcd.d.ts +2 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.lcd.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.lcd.js +7 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.rpc.Query.d.ts +5 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.rpc.Query.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.rpc.Query.js +11 -2
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/stats.d.ts +54 -12
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/stats.d.ts.map +1 -1
- package/build/esm/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/stats.js +121 -14
- package/build/esm/src/clients/composite-client.d.ts +5 -2
- package/build/esm/src/clients/composite-client.d.ts.map +1 -1
- package/build/esm/src/clients/composite-client.js +5 -5
- package/build/esm/src/clients/lib/axios/types.d.ts +5 -0
- package/build/esm/src/clients/lib/axios/types.d.ts.map +1 -1
- package/build/esm/src/clients/lib/axios/types.js +1 -1
- package/build/esm/src/clients/modules/rest.d.ts +1 -0
- package/build/esm/src/clients/modules/rest.d.ts.map +1 -1
- package/build/esm/src/clients/modules/rest.js +9 -1
- package/build/esm/src/clients/modules/utility.d.ts +6 -1
- package/build/esm/src/clients/modules/utility.d.ts.map +1 -1
- package/build/esm/src/clients/modules/utility.js +9 -1
- package/build/esm/src/clients/types.d.ts +2 -0
- package/build/esm/src/clients/types.d.ts.map +1 -1
- package/build/esm/src/clients/types.js +1 -1
- package/build/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/clients/composite-client.ts +16 -1
- package/src/clients/lib/axios/types.ts +7 -0
- package/src/clients/modules/rest.ts +10 -0
- package/src/clients/modules/utility.ts +10 -0
- package/src/clients/types.ts +4 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dydxprotocol/v4-client-js",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"description": "General client library for the new dYdX system (v4 decentralized)",
|
|
5
5
|
"main": "build/cjs/src/index.js",
|
|
6
6
|
"module": "build/esm/src/index.js",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"@cosmjs/stargate": "^0.32.1",
|
|
53
53
|
"@cosmjs/tendermint-rpc": "^0.32.1",
|
|
54
54
|
"@cosmjs/utils": "^0.32.1",
|
|
55
|
-
"@dydxprotocol/v4-proto": "9.
|
|
55
|
+
"@dydxprotocol/v4-proto": "9.5.0",
|
|
56
56
|
"@osmonauts/lcd": "^0.6.0",
|
|
57
57
|
"@scure/bip32": "^1.1.5",
|
|
58
58
|
"@scure/bip39": "^1.1.1",
|
|
@@ -45,7 +45,7 @@ import { UserError } from './lib/errors';
|
|
|
45
45
|
import { generateRegistry } from './lib/registry';
|
|
46
46
|
import LocalWallet from './modules/local-wallet';
|
|
47
47
|
import { SubaccountInfo } from './subaccount';
|
|
48
|
-
import { BroadcastMode, OrderBatch } from './types';
|
|
48
|
+
import { BroadcastMode, IBuilderCodeParameters, ITwapParameters, OrderBatch } from './types';
|
|
49
49
|
import { ValidatorClient } from './validator-client';
|
|
50
50
|
|
|
51
51
|
// Required for encoding and decoding queries that are of type Long.
|
|
@@ -86,6 +86,9 @@ export type PlaceOrderPayload = {
|
|
|
86
86
|
marketInfo?: MarketInfo;
|
|
87
87
|
currentHeight?: number;
|
|
88
88
|
goodTilBlock?: number;
|
|
89
|
+
twapParameters?: ITwapParameters;
|
|
90
|
+
builderCodeParameters?: IBuilderCodeParameters;
|
|
91
|
+
orderRouterAddress?: string;
|
|
89
92
|
};
|
|
90
93
|
|
|
91
94
|
export type CancelRawOrderPayload = {
|
|
@@ -422,6 +425,9 @@ export class CompositeClient {
|
|
|
422
425
|
goodTilBlock?: number,
|
|
423
426
|
memo?: string,
|
|
424
427
|
broadcastMode?: BroadcastMode,
|
|
428
|
+
twapParameters?: ITwapParameters,
|
|
429
|
+
builderCodeParameters?: IBuilderCodeParameters,
|
|
430
|
+
orderRouterAddress?: string,
|
|
425
431
|
): Promise<BroadcastTxAsyncResponse | BroadcastTxSyncResponse | IndexedTx> {
|
|
426
432
|
const msgs: Promise<EncodeObject[]> = new Promise((resolve) => {
|
|
427
433
|
const msg = this.placeOrderMessage(
|
|
@@ -441,6 +447,9 @@ export class CompositeClient {
|
|
|
441
447
|
marketInfo,
|
|
442
448
|
currentHeight,
|
|
443
449
|
goodTilBlock,
|
|
450
|
+
twapParameters,
|
|
451
|
+
builderCodeParameters,
|
|
452
|
+
orderRouterAddress,
|
|
444
453
|
);
|
|
445
454
|
msg
|
|
446
455
|
.then((it) => resolve([it]))
|
|
@@ -506,6 +515,9 @@ export class CompositeClient {
|
|
|
506
515
|
marketInfo?: MarketInfo,
|
|
507
516
|
currentHeight?: number,
|
|
508
517
|
goodTilBlock?: number,
|
|
518
|
+
twapParameters?: ITwapParameters,
|
|
519
|
+
builderCodeParameters?: IBuilderCodeParameters,
|
|
520
|
+
orderRouterAddress?: string,
|
|
509
521
|
): Promise<EncodeObject> {
|
|
510
522
|
const orderFlags = calculateOrderFlags(type, timeInForce);
|
|
511
523
|
|
|
@@ -561,6 +573,9 @@ export class CompositeClient {
|
|
|
561
573
|
clientMetadata,
|
|
562
574
|
conditionalType,
|
|
563
575
|
conditionalOrderTriggerSubticks,
|
|
576
|
+
twapParameters,
|
|
577
|
+
builderCodeParameters,
|
|
578
|
+
orderRouterAddress,
|
|
564
579
|
);
|
|
565
580
|
}
|
|
566
581
|
|
|
@@ -1,6 +1,13 @@
|
|
|
1
|
+
import type { AxiosResponseHeaders } from 'axios';
|
|
2
|
+
|
|
1
3
|
export enum RequestMethod {
|
|
2
4
|
POST = 'POST',
|
|
3
5
|
PUT = 'PUT',
|
|
4
6
|
GET = 'GET',
|
|
5
7
|
DELETE = 'DELETE',
|
|
6
8
|
}
|
|
9
|
+
|
|
10
|
+
export interface AxiosResponseWithGeoHeaders<Data> {
|
|
11
|
+
data: Data;
|
|
12
|
+
headers: AxiosResponseHeaders;
|
|
13
|
+
}
|
|
@@ -28,6 +28,16 @@ export default class RestClient {
|
|
|
28
28
|
return response.data;
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
+
async getWithResponseHeaders(requestPath: string, params: {} = {}): Promise<Data> {
|
|
32
|
+
const url = `${this.host}${generateQueryPath(requestPath, params)}`;
|
|
33
|
+
const response = await this.axiosInstance.get(url);
|
|
34
|
+
|
|
35
|
+
return {
|
|
36
|
+
data: response.data,
|
|
37
|
+
headers: response.headers,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
31
41
|
async post(
|
|
32
42
|
requestPath: string,
|
|
33
43
|
params: {} = {},
|
|
@@ -2,6 +2,7 @@ import type {
|
|
|
2
2
|
ComplianceResponse,
|
|
3
3
|
ComplianceV2Response,
|
|
4
4
|
HeightResponse,
|
|
5
|
+
HeightResponseWithHeaders,
|
|
5
6
|
TimeResponse,
|
|
6
7
|
} from '../types';
|
|
7
8
|
import RestClient from './rest';
|
|
@@ -25,6 +26,15 @@ export default class UtilityClient extends RestClient {
|
|
|
25
26
|
return this.get(uri);
|
|
26
27
|
}
|
|
27
28
|
|
|
29
|
+
/**
|
|
30
|
+
* @description Get the block height of the most recent block processed by the Indexer
|
|
31
|
+
* @returns {HeightResponse} block height and time
|
|
32
|
+
*/
|
|
33
|
+
async getHeightWithHeaders(): Promise<HeightResponseWithHeaders> {
|
|
34
|
+
const uri = '/v4/height';
|
|
35
|
+
return this.getWithResponseHeaders(uri);
|
|
36
|
+
}
|
|
37
|
+
|
|
28
38
|
/**
|
|
29
39
|
* @description Screen an address to see if it is restricted
|
|
30
40
|
* @param {string} address evm or dydx address
|
package/src/clients/types.ts
CHANGED
|
@@ -9,6 +9,8 @@ import { PerpetualMarketType } from '@dydxprotocol/v4-proto/src/codegen/dydxprot
|
|
|
9
9
|
import BigNumber from 'bignumber.js';
|
|
10
10
|
import Long from 'long';
|
|
11
11
|
|
|
12
|
+
import { AxiosResponseWithGeoHeaders } from './lib/axios/types';
|
|
13
|
+
|
|
12
14
|
export type Integer = BigNumber;
|
|
13
15
|
|
|
14
16
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -119,6 +121,8 @@ export interface HeightResponse {
|
|
|
119
121
|
time: string;
|
|
120
122
|
}
|
|
121
123
|
|
|
124
|
+
export type HeightResponseWithHeaders = AxiosResponseWithGeoHeaders<HeightResponse>;
|
|
125
|
+
|
|
122
126
|
export interface ComplianceResponse {
|
|
123
127
|
restricted: boolean;
|
|
124
128
|
reason?: string;
|