@dydxprotocol/v4-client-js 1.0.15 → 1.0.17
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/examples/gov_add_new_market.d.ts +1 -0
- package/build/examples/gov_add_new_market.js +75 -0
- package/build/src/clients/composite-client.d.ts +13 -1
- package/build/src/clients/composite-client.js +44 -1
- package/build/src/clients/constants.d.ts +14 -0
- package/build/src/clients/constants.js +28 -2
- package/build/src/clients/lib/registry.js +19 -7
- package/build/src/clients/modules/composer.d.ts +11 -1
- package/build/src/clients/modules/composer.js +131 -7
- package/build/src/clients/modules/get.d.ts +11 -1
- package/build/src/clients/modules/get.js +23 -1
- package/build/src/clients/modules/proto-includes.d.ts +6 -1
- package/build/src/clients/modules/proto-includes.js +8 -3
- package/build/src/clients/types.d.ts +14 -0
- package/build/src/clients/types.js +1 -1
- package/build/src/lib/utils.d.ts +15 -0
- package/build/src/lib/utils.js +23 -2
- package/examples/gov_add_new_market.json +64 -0
- package/examples/gov_add_new_market.ts +93 -0
- package/package.json +1 -1
- package/src/clients/composite-client.ts +97 -2
- package/src/clients/constants.ts +42 -8
- package/src/clients/lib/registry.ts +34 -7
- package/src/clients/modules/composer.ts +218 -7
- package/src/clients/modules/get.ts +36 -3
- package/src/clients/modules/proto-includes.ts +8 -3
- package/src/clients/types.ts +26 -0
- package/src/lib/utils.ts +24 -0
|
@@ -4,12 +4,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.Composer = void 0;
|
|
7
|
+
const clob_pair_1 = require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/clob_pair");
|
|
7
8
|
const long_1 = __importDefault(require("long"));
|
|
8
9
|
const protobufjs_1 = __importDefault(require("protobufjs"));
|
|
10
|
+
const constants_1 = require("../constants");
|
|
9
11
|
const proto_includes_1 = require("./proto-includes");
|
|
10
12
|
protobufjs_1.default.util.Long = long_1.default;
|
|
11
13
|
protobufjs_1.default.configure();
|
|
12
14
|
class Composer {
|
|
15
|
+
// ------------ x/clob ------------
|
|
13
16
|
composeMsgPlaceOrder(address, subaccountNumber, clientId, clobPairId, orderFlags, goodTilBlock, goodTilBlockTime, side, quantums, subticks, timeInForce, reduceOnly, clientMetadata, conditionType = proto_includes_1.Order_ConditionType.CONDITION_TYPE_UNSPECIFIED, conditionalOrderTriggerSubticks = long_1.default.fromInt(0)) {
|
|
14
17
|
this.validateGoodTilBlockAndTime(orderFlags, goodTilBlock, goodTilBlockTime);
|
|
15
18
|
const subaccountId = {
|
|
@@ -39,7 +42,7 @@ class Composer {
|
|
|
39
42
|
order,
|
|
40
43
|
};
|
|
41
44
|
return {
|
|
42
|
-
typeUrl:
|
|
45
|
+
typeUrl: constants_1.TYPE_URL_MSG_PLACE_ORDER,
|
|
43
46
|
value: msg,
|
|
44
47
|
};
|
|
45
48
|
}
|
|
@@ -61,10 +64,51 @@ class Composer {
|
|
|
61
64
|
goodTilBlockTime: goodTilBlock === 0 ? goodTilBlockTime : undefined,
|
|
62
65
|
};
|
|
63
66
|
return {
|
|
64
|
-
typeUrl:
|
|
67
|
+
typeUrl: constants_1.TYPE_URL_MSG_CANCEL_ORDER,
|
|
65
68
|
value: msg,
|
|
66
69
|
};
|
|
67
70
|
}
|
|
71
|
+
composeMsgCreateClobPair(clobId, perpetualId, quantumConversionExponent, stepBaseQuantums, subticksPerTick) {
|
|
72
|
+
const msg = {
|
|
73
|
+
// uses x/gov module account since creating the clob pair is a governance action.
|
|
74
|
+
authority: constants_1.GOV_MODULE_ADDRESS,
|
|
75
|
+
clobPair: {
|
|
76
|
+
id: clobId,
|
|
77
|
+
perpetualClobMetadata: {
|
|
78
|
+
perpetualId,
|
|
79
|
+
},
|
|
80
|
+
quantumConversionExponent,
|
|
81
|
+
stepBaseQuantums,
|
|
82
|
+
subticksPerTick,
|
|
83
|
+
status: clob_pair_1.ClobPair_Status.STATUS_INITIALIZING,
|
|
84
|
+
},
|
|
85
|
+
};
|
|
86
|
+
return {
|
|
87
|
+
typeUrl: constants_1.TYPE_URL_MSG_CREATE_CLOB_PAIR,
|
|
88
|
+
value: msg,
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
composeMsgUpdateClobPair(clobId, perpetualId, quantumConversionExponent, stepBaseQuantums, subticksPerTick) {
|
|
92
|
+
const msg = {
|
|
93
|
+
// uses x/delaymsg module account since updating the clob pair is a delayedmsg action.
|
|
94
|
+
authority: constants_1.DELAYMSG_MODULE_ADDRESS,
|
|
95
|
+
clobPair: {
|
|
96
|
+
id: clobId,
|
|
97
|
+
perpetualClobMetadata: {
|
|
98
|
+
perpetualId,
|
|
99
|
+
},
|
|
100
|
+
quantumConversionExponent,
|
|
101
|
+
stepBaseQuantums,
|
|
102
|
+
subticksPerTick,
|
|
103
|
+
status: clob_pair_1.ClobPair_Status.STATUS_ACTIVE,
|
|
104
|
+
},
|
|
105
|
+
};
|
|
106
|
+
return {
|
|
107
|
+
typeUrl: constants_1.TYPE_URL_MSG_UPDATE_CLOB_PAIR,
|
|
108
|
+
value: msg,
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
// ------------ x/sending ------------
|
|
68
112
|
composeMsgTransfer(address, subaccountNumber, recipientAddress, recipientSubaccountNumber, assetId, amount) {
|
|
69
113
|
const sender = {
|
|
70
114
|
owner: address,
|
|
@@ -84,7 +128,7 @@ class Composer {
|
|
|
84
128
|
transfer,
|
|
85
129
|
};
|
|
86
130
|
return {
|
|
87
|
-
typeUrl:
|
|
131
|
+
typeUrl: constants_1.TYPE_URL_MSG_CREATE_TRANSFER,
|
|
88
132
|
value: msg,
|
|
89
133
|
};
|
|
90
134
|
}
|
|
@@ -100,7 +144,7 @@ class Composer {
|
|
|
100
144
|
quantums,
|
|
101
145
|
};
|
|
102
146
|
return {
|
|
103
|
-
typeUrl:
|
|
147
|
+
typeUrl: constants_1.TYPE_URL_MSG_DEPOSIT_TO_SUBACCOUNT,
|
|
104
148
|
value: msg,
|
|
105
149
|
};
|
|
106
150
|
}
|
|
@@ -116,10 +160,11 @@ class Composer {
|
|
|
116
160
|
quantums,
|
|
117
161
|
};
|
|
118
162
|
return {
|
|
119
|
-
typeUrl:
|
|
163
|
+
typeUrl: constants_1.TYPE_URL_MSG_WITHDRAW_FROM_SUBACCOUNT,
|
|
120
164
|
value: msg,
|
|
121
165
|
};
|
|
122
166
|
}
|
|
167
|
+
// ------------ x/bank ------------
|
|
123
168
|
composeMsgSendToken(address, recipient, coinDenom, quantums) {
|
|
124
169
|
const coin = {
|
|
125
170
|
denom: coinDenom,
|
|
@@ -131,10 +176,82 @@ class Composer {
|
|
|
131
176
|
amount: [coin],
|
|
132
177
|
};
|
|
133
178
|
return {
|
|
134
|
-
typeUrl:
|
|
179
|
+
typeUrl: constants_1.TYPE_URL_MSG_SEND,
|
|
180
|
+
value: msg,
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
// ------------ x/prices ------------
|
|
184
|
+
composeMsgCreateOracleMarket(marketId, pair, exponent, minExchanges, minPriceChangePpm, exchangeConfigJson) {
|
|
185
|
+
const msg = {
|
|
186
|
+
// uses x/gov module account since creating the oracle market is a governance action.
|
|
187
|
+
authority: constants_1.GOV_MODULE_ADDRESS,
|
|
188
|
+
params: {
|
|
189
|
+
id: marketId,
|
|
190
|
+
pair,
|
|
191
|
+
exponent,
|
|
192
|
+
minExchanges,
|
|
193
|
+
minPriceChangePpm,
|
|
194
|
+
exchangeConfigJson,
|
|
195
|
+
},
|
|
196
|
+
};
|
|
197
|
+
return {
|
|
198
|
+
typeUrl: constants_1.TYPE_URL_MSG_CREATE_ORACLE_MARKET,
|
|
199
|
+
value: msg,
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
// ------------ x/perpetuals ------------
|
|
203
|
+
composeMsgCreatePerpetual(perpetualId, marketId, ticker, atomicResolution, liquidityTier) {
|
|
204
|
+
const msg = {
|
|
205
|
+
// uses x/gov module account since creating the perpetual is a governance action.
|
|
206
|
+
authority: constants_1.GOV_MODULE_ADDRESS,
|
|
207
|
+
params: {
|
|
208
|
+
id: perpetualId,
|
|
209
|
+
marketId,
|
|
210
|
+
ticker,
|
|
211
|
+
atomicResolution,
|
|
212
|
+
defaultFundingPpm: 0,
|
|
213
|
+
liquidityTier,
|
|
214
|
+
},
|
|
215
|
+
};
|
|
216
|
+
return {
|
|
217
|
+
typeUrl: constants_1.TYPE_URL_MSG_CREATE_PERPETUAL,
|
|
135
218
|
value: msg,
|
|
136
219
|
};
|
|
137
220
|
}
|
|
221
|
+
// ------------ x/delaymsg ------------
|
|
222
|
+
composeMsgDelayMessage(embeddedMsg, delayBlocks) {
|
|
223
|
+
const msg = {
|
|
224
|
+
// all msgs sent to x/delay must be from x/gov module account.
|
|
225
|
+
authority: constants_1.GOV_MODULE_ADDRESS,
|
|
226
|
+
msg: embeddedMsg,
|
|
227
|
+
delayBlocks,
|
|
228
|
+
};
|
|
229
|
+
return {
|
|
230
|
+
typeUrl: constants_1.TYPE_URL_MSG_DELAY_MESSAGE,
|
|
231
|
+
value: msg,
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
// ------------ x/gov ------------
|
|
235
|
+
composeMsgSubmitProposal(title, initialDepositAmount, initialDepositDenomConfig, summary, messages, proposer, metadata = '', expedited = false) {
|
|
236
|
+
const initialDeposit = [{
|
|
237
|
+
amount: initialDepositAmount.toString(),
|
|
238
|
+
denom: initialDepositDenomConfig.CHAINTOKEN_DENOM,
|
|
239
|
+
}];
|
|
240
|
+
const msg = {
|
|
241
|
+
title,
|
|
242
|
+
initialDeposit,
|
|
243
|
+
summary,
|
|
244
|
+
messages,
|
|
245
|
+
proposer,
|
|
246
|
+
metadata,
|
|
247
|
+
expedited,
|
|
248
|
+
};
|
|
249
|
+
return {
|
|
250
|
+
typeUrl: constants_1.TYPE_URL_MSG_SUBMIT_PROPOSAL,
|
|
251
|
+
value: msg,
|
|
252
|
+
};
|
|
253
|
+
}
|
|
254
|
+
// ------------ util ------------
|
|
138
255
|
validateGoodTilBlockAndTime(orderFlags, goodTilBlock, goodTilBlockTime) {
|
|
139
256
|
if (orderFlags === 0 && goodTilBlock === 0) {
|
|
140
257
|
throw new Error('goodTilBlock must be set if orderFlags is 0');
|
|
@@ -143,6 +260,13 @@ class Composer {
|
|
|
143
260
|
throw new Error('goodTilBlockTime must be set if orderFlags is not 0');
|
|
144
261
|
}
|
|
145
262
|
}
|
|
263
|
+
wrapMessageAsAny(registry, message) {
|
|
264
|
+
return registry.encodeAsAny(message);
|
|
265
|
+
}
|
|
266
|
+
wrapMessageArrAsAny(registry, messages) {
|
|
267
|
+
const encodedMessages = messages.map((message) => this.wrapMessageAsAny(registry, message));
|
|
268
|
+
return encodedMessages;
|
|
269
|
+
}
|
|
146
270
|
}
|
|
147
271
|
exports.Composer = Composer;
|
|
148
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
272
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2xpZW50cy9tb2R1bGVzL2NvbXBvc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUlBLDhGQUV3RTtBQVd4RSxnREFBd0I7QUFDeEIsNERBQWtDO0FBRWxDLDRDQWVzQjtBQUV0QixxREFhMEI7QUFFMUIsb0JBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLGNBQUksQ0FBQztBQUMxQixvQkFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO0FBRXJCLE1BQWEsUUFBUTtJQUVuQixtQ0FBbUM7SUFDNUIsb0JBQW9CLENBQ3pCLE9BQWUsRUFDZixnQkFBd0IsRUFDeEIsUUFBZ0IsRUFDaEIsVUFBa0IsRUFDbEIsVUFBa0IsRUFDbEIsWUFBb0IsRUFDcEIsZ0JBQXdCLEVBQ3hCLElBQWdCLEVBQ2hCLFFBQWMsRUFDZCxRQUFjLEVBQ2QsV0FBOEIsRUFDOUIsVUFBbUIsRUFDbkIsY0FBc0IsRUFDdEIsZ0JBQXFDLG9DQUFtQixDQUFDLDBCQUEwQixFQUNuRixrQ0FBd0MsY0FBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFFdkQsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFVBQVUsRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUU3RSxNQUFNLFlBQVksR0FBaUI7WUFDakMsS0FBSyxFQUFFLE9BQU87WUFDZCxNQUFNLEVBQUUsZ0JBQWdCO1NBQ3pCLENBQUM7UUFFRixNQUFNLE9BQU8sR0FBWTtZQUN2QixZQUFZO1lBQ1osUUFBUTtZQUNSLFVBQVU7WUFDVixVQUFVO1NBQ1gsQ0FBQztRQUNGLE1BQU0sS0FBSyxHQUFVO1lBQ25CLE9BQU87WUFDUCxJQUFJO1lBQ0osUUFBUTtZQUNSLFFBQVE7WUFDUixZQUFZLEVBQUUsWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxZQUFZO1lBQzNELGdC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
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Coin } from '@cosmjs/proto-signing';
|
|
2
2
|
import { Account, Block, QueryClient as StargateQueryClient, TxExtension } from '@cosmjs/stargate';
|
|
3
3
|
import Long from 'long';
|
|
4
|
-
import { BridgeModule, ClobModule, FeeTierModule, PerpetualsModule, PricesModule, RewardsModule, StakingModule, SubaccountsModule } from './proto-includes';
|
|
4
|
+
import { BridgeModule, ClobModule, FeeTierModule, GovV1Module, PerpetualsModule, PricesModule, ProposalStatus, RewardsModule, StakingModule, SubaccountsModule } from './proto-includes';
|
|
5
5
|
import { TendermintClient } from './tendermintClient';
|
|
6
6
|
export declare class Get {
|
|
7
7
|
readonly tendermintClient: TendermintClient;
|
|
@@ -146,5 +146,15 @@ export declare class Get {
|
|
|
146
146
|
* @returns all validators of a status.
|
|
147
147
|
*/
|
|
148
148
|
getAllValidators(status?: string): Promise<StakingModule.QueryValidatorsResponse>;
|
|
149
|
+
/**
|
|
150
|
+
* @description Get all gov proposals.
|
|
151
|
+
*
|
|
152
|
+
* @param proposalStatus Status of the proposal to filter by.
|
|
153
|
+
* @param voter Voter to filter by.
|
|
154
|
+
* @param depositor Depositor to filter by.
|
|
155
|
+
*
|
|
156
|
+
* @returns All gov proposals that match the filters above.
|
|
157
|
+
*/
|
|
158
|
+
getAllGovProposals(proposalStatus?: ProposalStatus, voter?: string, depositor?: string): Promise<GovV1Module.QueryProposalsResponse>;
|
|
149
159
|
private sendQuery;
|
|
150
160
|
}
|
|
@@ -309,10 +309,32 @@ class Get {
|
|
|
309
309
|
const data = await this.sendQuery('/cosmos.staking.v1beta1.Query/Validators', requestData);
|
|
310
310
|
return proto_includes_1.StakingModule.QueryValidatorsResponse.decode(data);
|
|
311
311
|
}
|
|
312
|
+
/**
|
|
313
|
+
* @description Get all gov proposals.
|
|
314
|
+
*
|
|
315
|
+
* @param proposalStatus Status of the proposal to filter by.
|
|
316
|
+
* @param voter Voter to filter by.
|
|
317
|
+
* @param depositor Depositor to filter by.
|
|
318
|
+
*
|
|
319
|
+
* @returns All gov proposals that match the filters above.
|
|
320
|
+
*/
|
|
321
|
+
async getAllGovProposals(proposalStatus = proto_includes_1.ProposalStatus.PROPOSAL_STATUS_VOTING_PERIOD, voter = '', depositor = '') {
|
|
322
|
+
const requestData = Uint8Array.from(proto_includes_1.GovV1Module.QueryProposalsRequest
|
|
323
|
+
.encode({
|
|
324
|
+
proposalStatus,
|
|
325
|
+
voter,
|
|
326
|
+
depositor,
|
|
327
|
+
pagination: constants_1.PAGE_REQUEST,
|
|
328
|
+
})
|
|
329
|
+
.finish());
|
|
330
|
+
const data = await this.sendQuery('/cosmos.gov.v1.Query/Proposals', requestData);
|
|
331
|
+
return proto_includes_1.GovV1Module.QueryProposalsResponse.decode(data);
|
|
332
|
+
}
|
|
312
333
|
async sendQuery(requestUrl, requestData) {
|
|
334
|
+
// eslint-disable-next-line max-len
|
|
313
335
|
const resp = await this.stargateQueryClient.queryAbci(requestUrl, requestData);
|
|
314
336
|
return resp.value;
|
|
315
337
|
}
|
|
316
338
|
}
|
|
317
339
|
exports.Get = Get;
|
|
318
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NsaWVudHMvbW9kdWxlcy9nZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSwrQ0FPMEI7QUFDMUIsbUZBQXFFO0FBQ3JFLG1GQUFxRTtBQUVyRSxnREFBd0I7QUFDeEIsNERBQWtDO0FBRWxDLDRDQUE0QztBQUM1QywwQ0FBc0Q7QUFDdEQscURBVTBCO0FBRzFCLG9FQUFvRTtBQUNwRSw2RUFBNkU7QUFDN0UsbUZBQW1GO0FBQ25GLGtFQUFrRTtBQUNsRSxvQkFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsY0FBSSxDQUFDO0FBQzFCLG9CQUFRLENBQUMsU0FBUyxFQUFFLENBQUM7QUFFckIsTUFBYSxHQUFHO0lBSWQsWUFDRSxnQkFBa0MsRUFDbEMsbUJBQXdEO1FBRXhELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUN6QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsbUJBQW1CLENBQUM7SUFDakQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsV0FBVztRQUNmLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLGlCQUFpQjtRQUNyQixNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLFdBQVc7UUFDZixNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUNqQyw4QkFBYSxDQUFDLDhCQUE4QixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7YUFDcEQsTUFBTSxFQUFFLENBQ1osQ0FBQztRQUVGLE1B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
|
|
340
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NsaWVudHMvbW9kdWxlcy9nZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSwrQ0FPMEI7QUFDMUIsbUZBQXFFO0FBQ3JFLG1GQUFxRTtBQUVyRSxnREFBd0I7QUFDeEIsNERBQWtDO0FBRWxDLDRDQUE0QztBQUM1QywwQ0FBc0Q7QUFDdEQscURBWTBCO0FBRzFCLG9FQUFvRTtBQUNwRSw2RUFBNkU7QUFDN0UsbUZBQW1GO0FBQ25GLGtFQUFrRTtBQUNsRSxvQkFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsY0FBSSxDQUFDO0FBQzFCLG9CQUFRLENBQUMsU0FBUyxFQUFFLENBQUM7QUFFckIsTUFBYSxHQUFHO0lBSWQsWUFDRSxnQkFBa0MsRUFDbEMsbUJBQXdEO1FBRXhELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUN6QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsbUJBQW1CLENBQUM7SUFDakQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsV0FBVztRQUNmLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLGlCQUFpQjtRQUNyQixNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLFdBQVc7UUFDZixNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUNqQyw4QkFBYSxDQUFDLDhCQUE4QixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7YUFDcEQsTUFBTSxFQUFFLENBQ1osQ0FBQztRQUVGLE1B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
|
|
@@ -1,15 +1,20 @@
|
|
|
1
|
+
export * as GovV1Module from '@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/query';
|
|
2
|
+
export * as StatsModule from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query';
|
|
1
3
|
export * as ClobModule from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query';
|
|
2
4
|
export * as PerpetualsModule from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/query';
|
|
3
5
|
export * as PricesModule from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/query';
|
|
4
6
|
export * as SubaccountsModule from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/query';
|
|
5
7
|
export * as FeeTierModule from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query';
|
|
6
|
-
export * as StatsModule from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query';
|
|
7
8
|
export * as RewardsModule from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/query';
|
|
8
9
|
export * as StakingModule from '@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/query';
|
|
9
10
|
export * as BridgeModule from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/query';
|
|
10
11
|
export * from '@dydxprotocol/v4-proto/src/codegen/cosmos/base/abci/v1beta1/abci';
|
|
12
|
+
export * from '@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/gov';
|
|
11
13
|
export * from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/order';
|
|
12
14
|
export * from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx';
|
|
15
|
+
export * from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/tx';
|
|
16
|
+
export * from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/tx';
|
|
17
|
+
export * from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/tx';
|
|
13
18
|
export * from '@dydxprotocol/v4-proto/src/codegen/google/protobuf/any';
|
|
14
19
|
export * from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/subaccount';
|
|
15
20
|
export * from '@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx';
|
|
@@ -26,23 +26,28 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
26
26
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.BridgeModule = exports.StakingModule = exports.RewardsModule = exports.
|
|
29
|
+
exports.BridgeModule = exports.StakingModule = exports.RewardsModule = exports.FeeTierModule = exports.SubaccountsModule = exports.PricesModule = exports.PerpetualsModule = exports.ClobModule = exports.StatsModule = exports.GovV1Module = void 0;
|
|
30
|
+
exports.GovV1Module = __importStar(require("@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/query"));
|
|
31
|
+
exports.StatsModule = __importStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query"));
|
|
30
32
|
exports.ClobModule = __importStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query"));
|
|
31
33
|
exports.PerpetualsModule = __importStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/query"));
|
|
32
34
|
exports.PricesModule = __importStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/query"));
|
|
33
35
|
exports.SubaccountsModule = __importStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/query"));
|
|
34
36
|
exports.FeeTierModule = __importStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query"));
|
|
35
|
-
exports.StatsModule = __importStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query"));
|
|
36
37
|
exports.RewardsModule = __importStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/query"));
|
|
37
38
|
exports.StakingModule = __importStar(require("@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/query"));
|
|
38
39
|
exports.BridgeModule = __importStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/query"));
|
|
39
40
|
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/cosmos/base/abci/v1beta1/abci"), exports);
|
|
41
|
+
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/gov"), exports);
|
|
40
42
|
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/order"), exports);
|
|
41
43
|
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx"), exports);
|
|
44
|
+
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/tx"), exports);
|
|
45
|
+
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/tx"), exports);
|
|
46
|
+
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/tx"), exports);
|
|
42
47
|
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/google/protobuf/any"), exports);
|
|
43
48
|
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/subaccount"), exports);
|
|
44
49
|
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx"), exports);
|
|
45
50
|
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/transfer"), exports);
|
|
46
51
|
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/genesis"), exports);
|
|
47
52
|
__exportStar(require("@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/asset"), exports);
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdG8taW5jbHVkZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2xpZW50cy9tb2R1bGVzL3Byb3RvLWluY2x1ZGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0dBQXNGO0FBQ3RGLDJHQUEyRjtBQUUzRix5R0FBeUY7QUFDekYscUhBQXFHO0FBQ3JHLDZHQUE2RjtBQUM3Rix1SEFBdUc7QUFDdkcsZ0hBQWdHO0FBQ2hHLCtHQUErRjtBQUMvRixpSEFBaUc7QUFDakcsNkdBQTZGO0FBRTdGLG1HQUFpRjtBQUNqRix1RkFBcUU7QUFDckUsNkZBQTJFO0FBQzNFLDBGQUF3RTtBQUN4RSw4RkFBNEU7QUFDNUUsZ0dBQThFO0FBQzlFLDRGQUEwRTtBQUMxRSx5RkFBdUU7QUFDdkUseUdBQXVGO0FBQ3ZGLDZGQUEyRTtBQUMzRSxtR0FBaUY7QUFDakYsaUdBQStFO0FBQy9FLCtGQUE2RSJ9
|
|
@@ -76,4 +76,18 @@ export declare type SquidIBCPayload = {
|
|
|
76
76
|
memo: string;
|
|
77
77
|
}>;
|
|
78
78
|
};
|
|
79
|
+
export declare type GovAddNewMarketParams = {
|
|
80
|
+
id: number;
|
|
81
|
+
ticker: string;
|
|
82
|
+
priceExponent: number;
|
|
83
|
+
minPriceChange: number;
|
|
84
|
+
minExchanges: number;
|
|
85
|
+
exchangeConfigJson: string;
|
|
86
|
+
liquidityTier: number;
|
|
87
|
+
atomicResolution: number;
|
|
88
|
+
quantumConversionExponent: number;
|
|
89
|
+
stepBaseQuantums: Long;
|
|
90
|
+
subticksPerTick: number;
|
|
91
|
+
delayBlocks: number;
|
|
92
|
+
};
|
|
79
93
|
export * from './modules/proto-includes';
|
|
@@ -23,4 +23,4 @@ var OrderFlags;
|
|
|
23
23
|
OrderFlags[OrderFlags["CONDITIONAL"] = 32] = "CONDITIONAL";
|
|
24
24
|
})(OrderFlags = exports.OrderFlags || (exports.OrderFlags = {}));
|
|
25
25
|
__exportStar(require("./modules/proto-includes"), exports);
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2xpZW50cy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQTRCQSxzRUFBc0U7QUFDdEUsSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ3BCLHVEQUFjLENBQUE7SUFDZCxzREFBYyxDQUFBO0lBQ2QsMERBQWdCLENBQUE7QUFDbEIsQ0FBQyxFQUpXLFVBQVUsR0FBVixrQkFBVSxLQUFWLGtCQUFVLFFBSXJCO0FBd0dELDJEQUF5QyJ9
|
package/build/src/lib/utils.d.ts
CHANGED
|
@@ -17,3 +17,18 @@ export declare function clientIdFromString(input: string): number;
|
|
|
17
17
|
* @returns A promise that resolves after the specified number of milliseconds.
|
|
18
18
|
*/
|
|
19
19
|
export declare function sleep(ms: number): Promise<void>;
|
|
20
|
+
/**
|
|
21
|
+
* Returns a title to use for a gov proposal that adds a new market.
|
|
22
|
+
*
|
|
23
|
+
* @param ticker ticker symbol for the new market.
|
|
24
|
+
* @returns title for the gov proposal.
|
|
25
|
+
*/
|
|
26
|
+
export declare function getGovAddNewMarketTitle(ticker: string): string;
|
|
27
|
+
/**
|
|
28
|
+
* Returns a summary to use for a gov proposal that adds a new market.
|
|
29
|
+
*
|
|
30
|
+
* @param ticker ticker symbol for the new market.
|
|
31
|
+
* @param delayBlocks number of blocks to wait before activating the market.
|
|
32
|
+
* @returns summary for the gov proposal.
|
|
33
|
+
*/
|
|
34
|
+
export declare function getGovAddNewMarketSummary(ticker: string, delayBlocks: number): string;
|
package/build/src/lib/utils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.sleep = exports.clientIdFromString = exports.generateRandomClientId = exports.randomInt = void 0;
|
|
3
|
+
exports.getGovAddNewMarketSummary = exports.getGovAddNewMarketTitle = exports.sleep = exports.clientIdFromString = exports.generateRandomClientId = exports.randomInt = void 0;
|
|
4
4
|
const constants_1 = require("../clients/constants");
|
|
5
5
|
/**
|
|
6
6
|
* Returns a random integer value between 0 and (n-1).
|
|
@@ -42,4 +42,25 @@ async function sleep(ms) {
|
|
|
42
42
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
43
43
|
}
|
|
44
44
|
exports.sleep = sleep;
|
|
45
|
-
|
|
45
|
+
/**
|
|
46
|
+
* Returns a title to use for a gov proposal that adds a new market.
|
|
47
|
+
*
|
|
48
|
+
* @param ticker ticker symbol for the new market.
|
|
49
|
+
* @returns title for the gov proposal.
|
|
50
|
+
*/
|
|
51
|
+
function getGovAddNewMarketTitle(ticker) {
|
|
52
|
+
return `Add ${ticker} perpetual market`;
|
|
53
|
+
}
|
|
54
|
+
exports.getGovAddNewMarketTitle = getGovAddNewMarketTitle;
|
|
55
|
+
/**
|
|
56
|
+
* Returns a summary to use for a gov proposal that adds a new market.
|
|
57
|
+
*
|
|
58
|
+
* @param ticker ticker symbol for the new market.
|
|
59
|
+
* @param delayBlocks number of blocks to wait before activating the market.
|
|
60
|
+
* @returns summary for the gov proposal.
|
|
61
|
+
*/
|
|
62
|
+
function getGovAddNewMarketSummary(ticker, delayBlocks) {
|
|
63
|
+
return `Add the x/prices, x/perpetuals and x/clob parameters needed for a ${ticker} perpetual market. Create the market in INITIALIZING status and transition it to ACTIVE status after ${delayBlocks} blocks.`;
|
|
64
|
+
}
|
|
65
|
+
exports.getGovAddNewMarketSummary = getGovAddNewMarketSummary;
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG9EQUFtRDtBQUVuRDs7R0FFRztBQUNILFNBQWdCLFNBQVMsQ0FDdkIsQ0FBUztJQUVULE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDdkMsQ0FBQztBQUpELDhCQUlDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixzQkFBc0I7SUFDcEMsT0FBTyxTQUFTLENBQUMsdUJBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNwQyxDQUFDO0FBRkQsd0RBRUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixrQkFBa0IsQ0FDaEMsS0FBYTtJQUViLElBQUksSUFBSSxHQUFXLENBQUMsQ0FBQztJQUNyQixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQztRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQ3BDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ3JDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQ0FBaUM7UUFDcEYsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLGlDQUFpQztLQUM3QztJQUVELDBEQUEwRDtJQUMxRCxzREFBc0Q7SUFDdEQsT0FBTyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7QUFDMUIsQ0FBQztBQWJELGdEQWFDO0FBRUQ7Ozs7R0FJRztBQUNJLEtBQUssVUFBVSxLQUFLLENBQUMsRUFBVTtJQUNwQyxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDM0QsQ0FBQztBQUZELHNCQUVDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFnQix1QkFBdUIsQ0FBQyxNQUFjO0lBQ3BELE9BQU8sT0FBTyxNQUFNLG1CQUFtQixDQUFDO0FBQzFDLENBQUM7QUFGRCwwREFFQztBQUVEOzs7Ozs7R0FNRztBQUNILFNBQWdCLHlCQUF5QixDQUN2QyxNQUFjLEVBQ2QsV0FBbUI7SUFFbkIsT0FBTyxxRUFBcUUsTUFBTSx3R0FBd0csV0FBVyxVQUFVLENBQUM7QUFDbE4sQ0FBQztBQUxELDhEQUtDIn0=
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Add BONK-USD perpetual market",
|
|
3
|
+
"deposit": "10000000000000adv4tnt",
|
|
4
|
+
"summary": "Add the x/prices, x/perpetuals and x/clob parameters needed for a BONK-USD perpetual market. Create the market in INITIALIZING status and transition it to ACTIVE status after 5 blocks.",
|
|
5
|
+
"messages": [
|
|
6
|
+
{
|
|
7
|
+
"@type": "/dydxprotocol.prices.MsgCreateOracleMarket",
|
|
8
|
+
"authority": "dydx10d07y265gmmuvt4z0w9aw880jnsr700jnmapky",
|
|
9
|
+
"params": {
|
|
10
|
+
"id": 34,
|
|
11
|
+
"pair": "BONK-USD",
|
|
12
|
+
"exponent": -14,
|
|
13
|
+
"minExchanges": 3,
|
|
14
|
+
"minPriceChangePpm": 4000,
|
|
15
|
+
"exchangeConfigJson": "{\"exchanges\":[{\"exchangeName\":\"Binance\",\"ticker\":\"BONKUSDT\",\"adjustByMarket\":\"USDT-USD\"},{\"exchangeName\":\"Bybit\",\"ticker\":\"BONKUSDT\",\"adjustByMarket\":\"USDT-USD\"},{\"exchangeName\":\"CoinbasePro\",\"ticker\":\"BONK-USD\"},{\"exchangeName\":\"Kucoin\",\"ticker\":\"BONK-USDT\",\"adjustByMarket\":\"USDT-USD\"},{\"exchangeName\":\"Okx\",\"ticker\":\"BONK-USDT\",\"adjustByMarket\":\"USDT-USD\"},{\"exchangeName\":\"Mexc\",\"ticker\":\"BONK_USDT\",\"adjustByMarket\":\"USDT-USD\"}]}"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"@type": "/dydxprotocol.perpetuals.MsgCreatePerpetual",
|
|
20
|
+
"authority": "dydx10d07y265gmmuvt4z0w9aw880jnsr700jnmapky",
|
|
21
|
+
"params": {
|
|
22
|
+
"id": 34,
|
|
23
|
+
"marketId": 34,
|
|
24
|
+
"ticker": "BONK-USD",
|
|
25
|
+
"atomicResolution": -1,
|
|
26
|
+
"defaultFundingPpm": 0,
|
|
27
|
+
"liquidityTier": 2
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"@type": "/dydxprotocol.clob.MsgCreateClobPair",
|
|
32
|
+
"authority": "dydx10d07y265gmmuvt4z0w9aw880jnsr700jnmapky",
|
|
33
|
+
"clob_pair": {
|
|
34
|
+
"id": 34,
|
|
35
|
+
"perpetual_clob_metadata": {
|
|
36
|
+
"perpetual_id": 34
|
|
37
|
+
},
|
|
38
|
+
"quantum_conversion_exponent": -9,
|
|
39
|
+
"status": "STATUS_INITIALIZING",
|
|
40
|
+
"step_base_quantums": 1000000,
|
|
41
|
+
"subticks_per_tick": 1000000
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"@type": "/dydxprotocol.delaymsg.MsgDelayMessage",
|
|
46
|
+
"authority": "dydx10d07y265gmmuvt4z0w9aw880jnsr700jnmapky",
|
|
47
|
+
"msg": {
|
|
48
|
+
"@type": "/dydxprotocol.clob.MsgUpdateClobPair",
|
|
49
|
+
"authority": "dydx1mkkvp26dngu6n8rmalaxyp3gwkjuzztq5zx6tr",
|
|
50
|
+
"clob_pair": {
|
|
51
|
+
"id": 34,
|
|
52
|
+
"perpetual_clob_metadata": {
|
|
53
|
+
"perpetual_id": 34
|
|
54
|
+
},
|
|
55
|
+
"quantum_conversion_exponent": -9,
|
|
56
|
+
"status": "STATUS_ACTIVE",
|
|
57
|
+
"step_base_quantums": 1000000,
|
|
58
|
+
"subticks_per_tick": 1000000
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"delay_blocks": 5
|
|
62
|
+
}
|
|
63
|
+
]
|
|
64
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import Long from 'long';
|
|
2
|
+
|
|
3
|
+
import { GovAddNewMarketParams, LocalWallet, ProposalStatus } from '../src';
|
|
4
|
+
import { CompositeClient } from '../src/clients/composite-client';
|
|
5
|
+
import { BECH32_PREFIX, Network } from '../src/clients/constants';
|
|
6
|
+
import { getGovAddNewMarketSummary, getGovAddNewMarketTitle, sleep } from '../src/lib/utils';
|
|
7
|
+
import { DYDX_LOCAL_MNEMONIC } from './constants';
|
|
8
|
+
|
|
9
|
+
const INITIAL_DEPOSIT_AMOUNT = 10_000_000_000_000; // 10,000 whole native tokens.
|
|
10
|
+
const MOCK_DATA: GovAddNewMarketParams = {
|
|
11
|
+
// common
|
|
12
|
+
id: 34,
|
|
13
|
+
ticker: 'BONK-USD',
|
|
14
|
+
|
|
15
|
+
// x/prices
|
|
16
|
+
priceExponent: -14,
|
|
17
|
+
minExchanges: 3,
|
|
18
|
+
minPriceChange: 4_000,
|
|
19
|
+
exchangeConfigJson: JSON.stringify({
|
|
20
|
+
exchanges: [
|
|
21
|
+
{ exchangeName: 'Binance', ticker: 'BONKUSDT', adjustByMarket: 'USDT-USD' },
|
|
22
|
+
{ exchangeName: 'Bybit', ticker: 'BONKUSDT', adjustByMarket: 'USDT-USD' },
|
|
23
|
+
{ exchangeName: 'CoinbasePro', ticker: 'BONK-USD' },
|
|
24
|
+
{ exchangeName: 'Kucoin', ticker: 'BONK-USDT', adjustByMarket: 'USDT-USD' },
|
|
25
|
+
{ exchangeName: 'Okx', ticker: 'BONK-USDT', adjustByMarket: 'USDT-USD' },
|
|
26
|
+
{ exchangeName: 'Mexc', ticker: 'BONK_USDT', adjustByMarket: 'USDT-USD' },
|
|
27
|
+
],
|
|
28
|
+
}),
|
|
29
|
+
|
|
30
|
+
// x/perpetuals
|
|
31
|
+
liquidityTier: 2,
|
|
32
|
+
atomicResolution: -1,
|
|
33
|
+
|
|
34
|
+
// x/clob
|
|
35
|
+
quantumConversionExponent: -9,
|
|
36
|
+
stepBaseQuantums: Long.fromNumber(1_000_000),
|
|
37
|
+
subticksPerTick: 1_000_000,
|
|
38
|
+
|
|
39
|
+
// x/delaymsg
|
|
40
|
+
delayBlocks: 5,
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
// To run this test:
|
|
44
|
+
// npm run build && node build/examples/gov_add_new_market.js
|
|
45
|
+
//
|
|
46
|
+
// Confirmed that the proposals have the exact same content.
|
|
47
|
+
// 1. submit using an example json file
|
|
48
|
+
// dydxprotocold tx gov submit-proposal gov_add_new_market.json \
|
|
49
|
+
// --from alice --keyring-backend test --gas auto --fees 9553225000000000adv4tnt
|
|
50
|
+
// dydxprotocold query gov proposals
|
|
51
|
+
// 2. submit using the file's mock data
|
|
52
|
+
// npm run build && node build/examples/gov_add_new_market.js
|
|
53
|
+
// dydxprotocold query gov proposals
|
|
54
|
+
// 3. then compare the two proposals and ensure they match
|
|
55
|
+
async function test(): Promise<void> {
|
|
56
|
+
console.log('**Start**');
|
|
57
|
+
|
|
58
|
+
const wallet = await LocalWallet.fromMnemonic(DYDX_LOCAL_MNEMONIC, BECH32_PREFIX);
|
|
59
|
+
console.log(wallet);
|
|
60
|
+
|
|
61
|
+
const network = Network.local();
|
|
62
|
+
const client = await CompositeClient.connect(network);
|
|
63
|
+
console.log('**Client**');
|
|
64
|
+
console.log(client);
|
|
65
|
+
|
|
66
|
+
const tx = await client.submitGovAddNewMarketProposal(
|
|
67
|
+
wallet,
|
|
68
|
+
MOCK_DATA,
|
|
69
|
+
getGovAddNewMarketTitle(MOCK_DATA.ticker),
|
|
70
|
+
getGovAddNewMarketSummary(MOCK_DATA.ticker, MOCK_DATA.delayBlocks),
|
|
71
|
+
INITIAL_DEPOSIT_AMOUNT,
|
|
72
|
+
);
|
|
73
|
+
console.log('**Tx**');
|
|
74
|
+
console.log(tx);
|
|
75
|
+
|
|
76
|
+
await sleep(5000);
|
|
77
|
+
|
|
78
|
+
const depositProposals = await client.validatorClient.get.getAllGovProposals(
|
|
79
|
+
ProposalStatus.PROPOSAL_STATUS_DEPOSIT_PERIOD,
|
|
80
|
+
);
|
|
81
|
+
console.log('**Deposit Proposals**');
|
|
82
|
+
console.log(depositProposals);
|
|
83
|
+
|
|
84
|
+
const votingProposals = await client.validatorClient.get.getAllGovProposals(
|
|
85
|
+
ProposalStatus.PROPOSAL_STATUS_VOTING_PERIOD,
|
|
86
|
+
);
|
|
87
|
+
console.log('**Voting Proposals**');
|
|
88
|
+
console.log(votingProposals);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
test().catch((error) => {
|
|
92
|
+
console.error(error);
|
|
93
|
+
});
|