@d8x/perpetuals-sdk 0.2.2 → 0.3.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.
Files changed (32) hide show
  1. package/dist/cjs/abi/central-park/IPerpetualManager.json +142 -12
  2. package/dist/cjs/abi/testnet/IPerpetualManager.json +130 -0
  3. package/dist/cjs/abi/zkevmTestnet/IPerpetualManager.json +130 -0
  4. package/dist/cjs/config/defaultConfig.json +0 -11
  5. package/dist/cjs/marketData.d.ts +1 -1
  6. package/dist/cjs/marketData.js +25 -27
  7. package/dist/cjs/marketData.js.map +1 -1
  8. package/dist/cjs/nodeSDKTypes.d.ts +3 -1
  9. package/dist/cjs/nodeSDKTypes.js +1 -1
  10. package/dist/cjs/nodeSDKTypes.js.map +1 -1
  11. package/dist/cjs/perpetualDataHandler.d.ts +22 -1
  12. package/dist/cjs/perpetualDataHandler.js +155 -156
  13. package/dist/cjs/perpetualDataHandler.js.map +1 -1
  14. package/dist/cjs/version.d.ts +1 -1
  15. package/dist/cjs/version.js +1 -1
  16. package/dist/esm/abi/central-park/IPerpetualManager.json +142 -12
  17. package/dist/esm/abi/testnet/IPerpetualManager.json +130 -0
  18. package/dist/esm/abi/zkevmTestnet/IPerpetualManager.json +130 -0
  19. package/dist/esm/config/defaultConfig.json +0 -11
  20. package/dist/esm/marketData.d.ts +1 -1
  21. package/dist/esm/marketData.js +25 -27
  22. package/dist/esm/marketData.js.map +1 -1
  23. package/dist/esm/nodeSDKTypes.d.ts +3 -1
  24. package/dist/esm/nodeSDKTypes.js +1 -1
  25. package/dist/esm/nodeSDKTypes.js.map +1 -1
  26. package/dist/esm/perpetualDataHandler.d.ts +22 -1
  27. package/dist/esm/perpetualDataHandler.js +155 -156
  28. package/dist/esm/perpetualDataHandler.js.map +1 -1
  29. package/dist/esm/version.d.ts +1 -1
  30. package/dist/esm/version.js +1 -1
  31. package/doc/d8x-perpetuals-sdk.md +29 -0
  32. package/package.json +1 -1
@@ -92,145 +92,64 @@ var PerpetualDataHandler = /** @class */ (function () {
92
92
  */
93
93
  PerpetualDataHandler.prototype._fillSymbolMaps = function (proxyContract) {
94
94
  return __awaiter(this, void 0, void 0, function () {
95
- var oracleFactoryAddr, _a, requiredPairs, _loop_1, this_1, j;
95
+ var poolInfo, j, info, perpStaticInfos, requiredPairs, j, perp, poolCCY, _a, base, quote, base3, currentSymbol3;
96
96
  return __generator(this, function (_b) {
97
97
  switch (_b.label) {
98
98
  case 0:
99
99
  if (proxyContract == null || this.lobFactoryContract == null) {
100
100
  throw Error("proxy or limit order book not defined");
101
101
  }
102
- return [4 /*yield*/, proxyContract.getOracleFactory()];
102
+ return [4 /*yield*/, PerpetualDataHandler.getPoolStaticInfo(proxyContract)];
103
103
  case 1:
104
- oracleFactoryAddr = _b.sent();
105
- _a = this;
106
- return [4 /*yield*/, PerpetualDataHandler.getNestedPerpetualIds(proxyContract)];
104
+ poolInfo = _b.sent();
105
+ this.nestedPerpetualIDs = poolInfo.nestedPerpetualIDs;
106
+ for (j = 0; j < poolInfo.nestedPerpetualIDs.length; j++) {
107
+ info = {
108
+ poolId: j + 1,
109
+ poolMarginSymbol: "",
110
+ poolMarginTokenAddr: poolInfo.poolMarginTokenAddr[j],
111
+ shareTokenAddr: poolInfo.poolShareTokenAddr[j],
112
+ oracleFactoryAddr: poolInfo.oracleFactory,
113
+ isRunning: poolInfo.poolShareTokenAddr[j] != ethers.constants.AddressZero,
114
+ };
115
+ this.poolStaticInfos.push(info);
116
+ }
117
+ return [4 /*yield*/, PerpetualDataHandler.getPerpetualStaticInfo(proxyContract, this.nestedPerpetualIDs, this.symbolList)];
107
118
  case 2:
108
- _a.nestedPerpetualIDs = _b.sent();
119
+ perpStaticInfos = _b.sent();
109
120
  requiredPairs = new Set();
110
- _loop_1 = function (j) {
111
- var pool, poolMarginTokenAddr, perpetualIDs, poolCCY, currentSymbols, currentSymbolsS3, currentLimitOrderBookAddr, ccy, initRate, mgnRate, lotSizes, refRebates, k, perp, base, quote, base3, quote3, sym, sym3, lobAddr, info, currentSymbols3, k, _c, idsB32;
112
- return __generator(this, function (_d) {
113
- switch (_d.label) {
114
- case 0: return [4 /*yield*/, proxyContract.getLiquidityPool(j + 1)];
115
- case 1:
116
- pool = _d.sent();
117
- poolMarginTokenAddr = pool.marginTokenAddress;
118
- perpetualIDs = this_1.nestedPerpetualIDs[j];
119
- poolCCY = undefined;
120
- currentSymbols = [];
121
- currentSymbolsS3 = [];
122
- currentLimitOrderBookAddr = [];
123
- ccy = [];
124
- initRate = [];
125
- mgnRate = [];
126
- lotSizes = [];
127
- refRebates = [];
128
- k = 0;
129
- _d.label = 2;
130
- case 2:
131
- if (!(k < perpetualIDs.length)) return [3 /*break*/, 6];
132
- return [4 /*yield*/, proxyContract.getPerpetual(perpetualIDs[k])];
133
- case 3:
134
- perp = _d.sent();
135
- base = contractSymbolToSymbol(perp.S2BaseCCY, this_1.symbolList);
136
- quote = contractSymbolToSymbol(perp.S2QuoteCCY, this_1.symbolList);
137
- base3 = contractSymbolToSymbol(perp.S3BaseCCY, this_1.symbolList);
138
- quote3 = contractSymbolToSymbol(perp.S3QuoteCCY, this_1.symbolList);
139
- sym = base + "-" + quote;
140
- sym3 = base3 + "-" + quote3;
141
- requiredPairs.add(sym);
142
- if (sym3 != "-") {
143
- requiredPairs.add(sym3);
144
- }
145
- else {
146
- sym3 = "";
147
- }
148
- currentSymbols.push(sym);
149
- currentSymbolsS3.push(sym3);
150
- initRate.push(ABK64x64ToFloat(perp.fInitialMarginRate));
151
- mgnRate.push(ABK64x64ToFloat(perp.fMaintenanceMarginRate));
152
- lotSizes.push(ABK64x64ToFloat(perp.fLotSizeBC));
153
- refRebates.push(ABK64x64ToFloat(perp.fReferralRebateCC));
154
- return [4 /*yield*/, this_1.lobFactoryContract.getOrderBookAddress(perpetualIDs[k])];
155
- case 4:
156
- lobAddr = _d.sent();
157
- currentLimitOrderBookAddr.push(lobAddr);
158
- // we find out the pool currency by looking at all perpetuals
159
- // unless for quanto perpetuals, we know the pool currency
160
- // from the perpetual. This fails if we have a pool with only
161
- // quanto perpetuals
162
- if (perp.eCollateralCurrency == COLLATERAL_CURRENCY_BASE) {
163
- poolCCY = poolCCY !== null && poolCCY !== void 0 ? poolCCY : base;
164
- ccy.push(CollaterlCCY.BASE);
165
- }
166
- else if (perp.eCollateralCurrency == COLLATERAL_CURRENCY_QUOTE) {
167
- poolCCY = poolCCY !== null && poolCCY !== void 0 ? poolCCY : quote;
168
- ccy.push(CollaterlCCY.QUOTE);
169
- }
170
- else {
171
- poolCCY = poolCCY !== null && poolCCY !== void 0 ? poolCCY : base3;
172
- ccy.push(CollaterlCCY.QUANTO);
173
- }
174
- _d.label = 5;
175
- case 5:
176
- k++;
177
- return [3 /*break*/, 2];
178
- case 6:
179
- if (perpetualIDs.length == 0) {
180
- return [2 /*return*/, "continue"];
181
- }
182
- info = {
183
- poolId: j + 1,
184
- poolMarginSymbol: poolCCY,
185
- poolMarginTokenAddr: poolMarginTokenAddr,
186
- shareTokenAddr: pool.shareTokenAddress,
187
- oracleFactoryAddr: oracleFactoryAddr,
188
- };
189
- this_1.poolStaticInfos.push(info);
190
- currentSymbols3 = currentSymbols.map(function (x) { return x + "-" + poolCCY; });
191
- k = 0;
192
- _d.label = 7;
193
- case 7:
194
- if (!(k < perpetualIDs.length)) return [3 /*break*/, 10];
195
- return [4 /*yield*/, proxyContract.getPriceInfo(perpetualIDs[k])];
196
- case 8:
197
- _c = __read.apply(void 0, [_d.sent(), 1]), idsB32 = _c[0];
198
- this_1.symbolToPerpStaticInfo.set(currentSymbols3[k], {
199
- id: perpetualIDs[k],
200
- limitOrderBookAddr: currentLimitOrderBookAddr[k],
201
- initialMarginRate: initRate[k],
202
- maintenanceMarginRate: mgnRate[k],
203
- collateralCurrencyType: ccy[k],
204
- S2Symbol: currentSymbols[k],
205
- S3Symbol: currentSymbolsS3[k],
206
- lotSizeBC: lotSizes[k],
207
- referralRebate: refRebates[k],
208
- priceIds: idsB32,
209
- });
210
- _d.label = 9;
211
- case 9:
212
- k++;
213
- return [3 /*break*/, 7];
214
- case 10:
215
- // push margin token address into map
216
- this_1.symbolToTokenAddrMap.set(poolCCY, poolMarginTokenAddr);
217
- return [2 /*return*/];
121
+ // 1) determine pool currency based on its perpetuals
122
+ // 2) determine which triangulations we need
123
+ // 3) fill mapping this.symbolToPerpStaticInf
124
+ for (j = 0; j < perpStaticInfos.length; j++) {
125
+ perp = perpStaticInfos[j];
126
+ requiredPairs.add(perp.S2Symbol);
127
+ if (perp.S3Symbol != "") {
128
+ requiredPairs.add(perp.S3Symbol);
129
+ }
130
+ poolCCY = this.poolStaticInfos[perp.poolId - 1].poolMarginSymbol;
131
+ if (poolCCY == "") {
132
+ _a = __read(perp.S2Symbol.split("-"), 2), base = _a[0], quote = _a[1];
133
+ base3 = perp.S3Symbol.split("-")[0];
134
+ // we find out the pool currency by looking at all perpetuals
135
+ // from the perpetual.
136
+ if (perp.collateralCurrencyType == COLLATERAL_CURRENCY_BASE) {
137
+ poolCCY = base;
218
138
  }
219
- });
220
- };
221
- this_1 = this;
222
- j = 0;
223
- _b.label = 3;
224
- case 3:
225
- if (!(j < this.nestedPerpetualIDs.length)) return [3 /*break*/, 6];
226
- return [5 /*yield**/, _loop_1(j)];
227
- case 4:
228
- _b.sent();
229
- _b.label = 5;
230
- case 5:
231
- j++;
232
- return [3 /*break*/, 3];
233
- case 6:
139
+ else if (perp.collateralCurrencyType == COLLATERAL_CURRENCY_QUOTE) {
140
+ poolCCY = quote;
141
+ }
142
+ else {
143
+ poolCCY = base3;
144
+ }
145
+ // set pool currency
146
+ this.poolStaticInfos[perp.poolId - 1].poolMarginSymbol = poolCCY;
147
+ // push pool margin token address into map
148
+ this.symbolToTokenAddrMap.set(poolCCY, this.poolStaticInfos[perp.poolId - 1].poolMarginTokenAddr);
149
+ }
150
+ currentSymbol3 = perp.S2Symbol + "-" + poolCCY;
151
+ this.symbolToPerpStaticInfo.set(currentSymbol3, perpStaticInfos[j]);
152
+ }
234
153
  // pre-calculate all triangulation paths so we can easily get from
235
154
  // the prices of price-feeds to the index price required, e.g.
236
155
  // BTC-USDC : BTC-USD / USDC-USD
@@ -353,39 +272,119 @@ var PerpetualDataHandler = /** @class */ (function () {
353
272
  }
354
273
  return j + 1;
355
274
  };
356
- PerpetualDataHandler.getNestedPerpetualIds = function (_proxyContract) {
275
+ PerpetualDataHandler.prototype.getNestedPerpetualIds = function (_proxyContract) {
276
+ return this.nestedPerpetualIDs;
277
+ };
278
+ /**
279
+ * Collect all perpetuals static info
280
+ * @param {ethers.Contract} _proxyContract perpetuals contract with getter
281
+ * @param {Array<Array<number>>} nestedPerpetualIDs perpetual id-array for each pool
282
+ * @param {Map<string, string>} symbolList mapping of symbols to convert long-format <-> blockchain-format
283
+ * @returns array with PerpetualStaticInfo for each perpetual
284
+ */
285
+ PerpetualDataHandler.getPerpetualStaticInfo = function (_proxyContract, nestedPerpetualIDs, symbolList) {
357
286
  return __awaiter(this, void 0, void 0, function () {
358
- var poolCount, poolIds, i, perpetualCount, j, id;
287
+ var chunkSize, ids, infoArr, k, perpInfos, j, base, quote, base3, quote3, sym2, sym3, info;
359
288
  return __generator(this, function (_a) {
360
289
  switch (_a.label) {
361
- case 0: return [4 /*yield*/, _proxyContract.getPoolCount()];
290
+ case 0:
291
+ chunkSize = 10;
292
+ ids = PerpetualDataHandler.nestedIDsToChunks(chunkSize, nestedPerpetualIDs);
293
+ infoArr = new Array();
294
+ k = 0;
295
+ _a.label = 1;
362
296
  case 1:
363
- poolCount = _a.sent();
364
- poolIds = new Array(poolCount);
365
- i = 1;
366
- _a.label = 2;
297
+ if (!(k < ids.length)) return [3 /*break*/, 4];
298
+ return [4 /*yield*/, _proxyContract.getPerpetualStaticInfo(ids[k])];
367
299
  case 2:
368
- if (!(i < poolCount + 1)) return [3 /*break*/, 8];
369
- return [4 /*yield*/, _proxyContract.getPerpetualCountInPool(i)];
300
+ perpInfos = _a.sent();
301
+ for (j = 0; j < perpInfos.length; j++) {
302
+ base = contractSymbolToSymbol(perpInfos[j].S2BaseCCY, symbolList);
303
+ quote = contractSymbolToSymbol(perpInfos[j].S2QuoteCCY, symbolList);
304
+ base3 = contractSymbolToSymbol(perpInfos[j].S3BaseCCY, symbolList);
305
+ quote3 = contractSymbolToSymbol(perpInfos[j].S3QuoteCCY, symbolList);
306
+ sym2 = base + "-" + quote;
307
+ sym3 = base3 + "-" + quote3;
308
+ info = {
309
+ id: perpInfos[j].id,
310
+ poolId: Math.floor(perpInfos[j].id / 100000),
311
+ limitOrderBookAddr: perpInfos[j].limitOrderBookAddr,
312
+ initialMarginRate: ABK64x64ToFloat(perpInfos[j].fInitialMarginRate),
313
+ maintenanceMarginRate: ABK64x64ToFloat(perpInfos[j].fMaintenanceMarginRate),
314
+ collateralCurrencyType: perpInfos[j].collCurrencyType,
315
+ S2Symbol: sym2,
316
+ S3Symbol: sym3,
317
+ lotSizeBC: ABK64x64ToFloat(perpInfos[j].fLotSizeBC),
318
+ referralRebate: ABK64x64ToFloat(perpInfos[j].fReferralRebateCC),
319
+ priceIds: perpInfos[j].priceIds,
320
+ };
321
+ infoArr.push(info);
322
+ }
323
+ _a.label = 3;
370
324
  case 3:
371
- perpetualCount = _a.sent();
372
- poolIds[i - 1] = new Array(perpetualCount);
373
- j = 0;
374
- _a.label = 4;
375
- case 4:
376
- if (!(j < perpetualCount)) return [3 /*break*/, 7];
377
- return [4 /*yield*/, _proxyContract.getPerpetualId(i, j)];
378
- case 5:
379
- id = _a.sent();
380
- poolIds[i - 1][j] = id;
381
- _a.label = 6;
382
- case 6:
383
- j++;
384
- return [3 /*break*/, 4];
385
- case 7:
386
- i++;
387
- return [3 /*break*/, 2];
388
- case 8: return [2 /*return*/, poolIds];
325
+ k++;
326
+ return [3 /*break*/, 1];
327
+ case 4: return [2 /*return*/, infoArr];
328
+ }
329
+ });
330
+ });
331
+ };
332
+ /**
333
+ * Breaks up an array of nested arrays into chunks of a specified size.
334
+ * @param {number} chunkSize The size of each chunk.
335
+ * @param {number[][]} nestedIDs The array of nested arrays to chunk.
336
+ * @returns {number[][]} An array of subarrays, each containing `chunkSize` or fewer elements from `nestedIDs`.
337
+ */
338
+ PerpetualDataHandler.nestedIDsToChunks = function (chunkSize, nestedIDs) {
339
+ var chunkIDs = [];
340
+ var currentChunk = [];
341
+ for (var k = 0; k < nestedIDs.length; k++) {
342
+ var currentPoolIds = nestedIDs[k];
343
+ for (var j = 0; j < currentPoolIds.length; j++) {
344
+ currentChunk.push(currentPoolIds[j]);
345
+ if (currentChunk.length === chunkSize) {
346
+ chunkIDs.push(currentChunk);
347
+ currentChunk = [];
348
+ }
349
+ }
350
+ }
351
+ if (currentChunk.length > 0) {
352
+ chunkIDs.push(currentChunk);
353
+ }
354
+ return chunkIDs;
355
+ };
356
+ PerpetualDataHandler.getPoolStaticInfo = function (_proxyContract) {
357
+ return __awaiter(this, void 0, void 0, function () {
358
+ var idxFrom, len, lenReceived, nestedPerpetualIDs, poolShareTokenAddr, poolMarginTokenAddr, oracleFactory, res;
359
+ return __generator(this, function (_a) {
360
+ switch (_a.label) {
361
+ case 0:
362
+ idxFrom = 1;
363
+ len = 10;
364
+ lenReceived = 10;
365
+ nestedPerpetualIDs = [];
366
+ poolShareTokenAddr = [];
367
+ poolMarginTokenAddr = [];
368
+ oracleFactory = "";
369
+ _a.label = 1;
370
+ case 1:
371
+ if (!(lenReceived == len)) return [3 /*break*/, 3];
372
+ return [4 /*yield*/, _proxyContract.getPoolStaticInfo(idxFrom, idxFrom + len - 1)];
373
+ case 2:
374
+ res = _a.sent();
375
+ lenReceived = res.length;
376
+ nestedPerpetualIDs = nestedPerpetualIDs.concat(res[0]);
377
+ poolShareTokenAddr = res[1];
378
+ poolMarginTokenAddr = res[2];
379
+ oracleFactory = res[3];
380
+ idxFrom = idxFrom + len;
381
+ return [3 /*break*/, 1];
382
+ case 3: return [2 /*return*/, {
383
+ nestedPerpetualIDs: nestedPerpetualIDs,
384
+ poolShareTokenAddr: poolShareTokenAddr,
385
+ poolMarginTokenAddr: poolMarginTokenAddr,
386
+ oracleFactory: oracleFactory,
387
+ }];
389
388
  }
390
389
  });
391
390
  });
@@ -1 +1 @@
1
- {"version":3,"file":"perpetualDataHandler.js","sourceRoot":"","sources":["../../src/perpetualDataHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"perpetualDataHandler.js","sourceRoot":"","sources":["../../src/perpetualDataHandler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const D8X_SDK_VERSION = "0.2.2";
1
+ export declare const D8X_SDK_VERSION = "0.3.0";
@@ -1,2 +1,2 @@
1
- export var D8X_SDK_VERSION = "0.2.2";
1
+ export var D8X_SDK_VERSION = "0.3.0";
2
2
  //# sourceMappingURL=version.js.map
@@ -3335,6 +3335,8 @@ common data and chain operations.</p>
3335
3335
  * [.getPriceIds(symbol)](#PerpetualDataHandler+getPriceIds) ⇒
3336
3336
  * [.getPoolIndexFromSymbol(symbol)](#PerpetualDataHandler+getPoolIndexFromSymbol) ⇒
3337
3337
  * _static_
3338
+ * [.getPerpetualStaticInfo(_proxyContract, nestedPerpetualIDs, symbolList)](#PerpetualDataHandler.getPerpetualStaticInfo) ⇒
3339
+ * [.nestedIDsToChunks(chunkSize, nestedIDs)](#PerpetualDataHandler.nestedIDsToChunks) ⇒ <code>Array.&lt;Array.&lt;number&gt;&gt;</code>
3338
3340
  * [._calculateLiquidationPrice(symbol, traderState, S2, symbolToPerpStaticInfo)](#PerpetualDataHandler._calculateLiquidationPrice) ⇒
3339
3341
  * [.symbolToPerpetualId(symbol, symbolToPerpStaticInfo)](#PerpetualDataHandler.symbolToPerpetualId) ⇒
3340
3342
  * [.perpetualIdToSymbol(id, symbolToPerpStaticInfo)](#PerpetualDataHandler.perpetualIdToSymbol) ⇒
@@ -3479,6 +3481,33 @@ and corresponding price information</p>
3479
3481
  | --- | --- |
3480
3482
  | symbol | <p>Symbol of the form ETH-USD-MATIC</p> |
3481
3483
 
3484
+ <a name="PerpetualDataHandler.getPerpetualStaticInfo"></a>
3485
+
3486
+ ### PerpetualDataHandler.getPerpetualStaticInfo(_proxyContract, nestedPerpetualIDs, symbolList) ⇒
3487
+ <p>Collect all perpetuals static info</p>
3488
+
3489
+ **Kind**: static method of [<code>PerpetualDataHandler</code>](#PerpetualDataHandler)
3490
+ **Returns**: <p>array with PerpetualStaticInfo for each perpetual</p>
3491
+
3492
+ | Param | Type | Description |
3493
+ | --- | --- | --- |
3494
+ | _proxyContract | <code>ethers.Contract</code> | <p>perpetuals contract with getter</p> |
3495
+ | nestedPerpetualIDs | <code>Array.&lt;Array.&lt;number&gt;&gt;</code> | <p>perpetual id-array for each pool</p> |
3496
+ | symbolList | <code>Map.&lt;string, string&gt;</code> | <p>mapping of symbols to convert long-format &lt;-&gt; blockchain-format</p> |
3497
+
3498
+ <a name="PerpetualDataHandler.nestedIDsToChunks"></a>
3499
+
3500
+ ### PerpetualDataHandler.nestedIDsToChunks(chunkSize, nestedIDs) ⇒ <code>Array.&lt;Array.&lt;number&gt;&gt;</code>
3501
+ <p>Breaks up an array of nested arrays into chunks of a specified size.</p>
3502
+
3503
+ **Kind**: static method of [<code>PerpetualDataHandler</code>](#PerpetualDataHandler)
3504
+ **Returns**: <code>Array.&lt;Array.&lt;number&gt;&gt;</code> - <p>An array of subarrays, each containing <code>chunkSize</code> or fewer elements from <code>nestedIDs</code>.</p>
3505
+
3506
+ | Param | Type | Description |
3507
+ | --- | --- | --- |
3508
+ | chunkSize | <code>number</code> | <p>The size of each chunk.</p> |
3509
+ | nestedIDs | <code>Array.&lt;Array.&lt;number&gt;&gt;</code> | <p>The array of nested arrays to chunk.</p> |
3510
+
3482
3511
  <a name="PerpetualDataHandler._calculateLiquidationPrice"></a>
3483
3512
 
3484
3513
  ### PerpetualDataHandler.\_calculateLiquidationPrice(symbol, traderState, S2, symbolToPerpStaticInfo) ⇒
package/package.json CHANGED
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "name": "@d8x/perpetuals-sdk",
39
39
  "description": "Node TypeScript SDK for D8X Perpetual Futures",
40
- "version": "0.2.2",
40
+ "version": "0.3.0",
41
41
  "main": "./dist/cjs/index.js",
42
42
  "module": "./dist/esm/index.js",
43
43
  "types": "./dist/esm/index.d.ts",