@d8x/perpetuals-sdk 2.1.5-alpha2 → 2.1.6-alpha2

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 (183) hide show
  1. package/dist/cjs/config/defaultConfig.json +8 -4
  2. package/dist/cjs/config/priceFeedConfig.json +12 -0
  3. package/dist/cjs/config/symbolList.json +2 -1
  4. package/dist/cjs/marketData.js +1 -0
  5. package/dist/cjs/marketData.js.map +1 -1
  6. package/dist/cjs/nodeSDKTypes.d.ts +1 -0
  7. package/dist/cjs/nodeSDKTypes.js.map +1 -1
  8. package/dist/cjs/perpetualDataHandler.d.ts +4 -0
  9. package/dist/cjs/perpetualDataHandler.js +18 -0
  10. package/dist/cjs/perpetualDataHandler.js.map +1 -1
  11. package/dist/cjs/priceFeeds.d.ts +6 -0
  12. package/dist/cjs/priceFeeds.js +49 -7
  13. package/dist/cjs/priceFeeds.js.map +1 -1
  14. package/dist/cjs/version.d.ts +1 -1
  15. package/dist/cjs/version.js +1 -1
  16. package/dist/cjs/writeAccessHandler.js +1 -0
  17. package/dist/cjs/writeAccessHandler.js.map +1 -1
  18. package/dist/esm/config/defaultConfig.json +8 -4
  19. package/dist/esm/config/priceFeedConfig.json +12 -0
  20. package/dist/esm/config/symbolList.json +2 -1
  21. package/dist/{cjs/contracts/factories/MockToken__factory.d.ts → esm/contracts/factories/PerpStorage__factory.d.ts} +115 -128
  22. package/dist/esm/contracts/factories/{MockToken__factory.js → PerpStorage__factory.js} +128 -139
  23. package/dist/esm/contracts/factories/PerpStorage__factory.js.map +1 -0
  24. package/dist/esm/marketData.js +1 -0
  25. package/dist/esm/marketData.js.map +1 -1
  26. package/dist/esm/nodeSDKTypes.d.ts +1 -0
  27. package/dist/esm/nodeSDKTypes.js.map +1 -1
  28. package/dist/esm/perpetualDataHandler.d.ts +4 -0
  29. package/dist/esm/perpetualDataHandler.js +18 -0
  30. package/dist/esm/perpetualDataHandler.js.map +1 -1
  31. package/dist/esm/priceFeeds.d.ts +6 -0
  32. package/dist/esm/priceFeeds.js +49 -7
  33. package/dist/esm/priceFeeds.js.map +1 -1
  34. package/dist/esm/version.d.ts +1 -1
  35. package/dist/esm/version.js +1 -1
  36. package/dist/esm/writeAccessHandler.js +1 -0
  37. package/dist/esm/writeAccessHandler.js.map +1 -1
  38. package/package.json +1 -1
  39. package/src/config/defaultConfig.json +8 -4
  40. package/src/config/priceFeedConfig.json +12 -0
  41. package/src/config/symbolList.json +2 -1
  42. package/src/marketData.ts +1 -0
  43. package/src/nodeSDKTypes.ts +1 -0
  44. package/src/perpetualDataHandler.ts +19 -0
  45. package/src/priceFeeds.ts +50 -11
  46. package/src/version.ts +1 -1
  47. package/src/writeAccessHandler.ts +1 -0
  48. package/dist/cjs/abi/BeaconProxy.json +0 -71
  49. package/dist/cjs/abi/Maintainer.json +0 -774
  50. package/dist/cjs/abi/MockToken.json +0 -347
  51. package/dist/cjs/abi/UUPSUpgradeable.json +0 -104
  52. package/dist/cjs/abi/WeETH.json +0 -310
  53. package/dist/cjs/abi-zkevm/LimitOrderBook.json +0 -910
  54. package/dist/cjs/abi-zkevm/LimitOrderBookFactory.json +0 -236
  55. package/dist/cjs/contracts/BeaconProxy.d.ts +0 -63
  56. package/dist/cjs/contracts/BeaconProxy.js +0 -3
  57. package/dist/cjs/contracts/BeaconProxy.js.map +0 -1
  58. package/dist/cjs/contracts/Maintainer.d.ts +0 -799
  59. package/dist/cjs/contracts/Maintainer.js +0 -3
  60. package/dist/cjs/contracts/Maintainer.js.map +0 -1
  61. package/dist/cjs/contracts/MockToken.d.ts +0 -263
  62. package/dist/cjs/contracts/MockToken.js +0 -3
  63. package/dist/cjs/contracts/MockToken.js.map +0 -1
  64. package/dist/cjs/contracts/UUPSUpgradeable.d.ts +0 -118
  65. package/dist/cjs/contracts/UUPSUpgradeable.js +0 -3
  66. package/dist/cjs/contracts/UUPSUpgradeable.js.map +0 -1
  67. package/dist/cjs/contracts/WeETH.d.ts +0 -503
  68. package/dist/cjs/contracts/WeETH.js +0 -3
  69. package/dist/cjs/contracts/WeETH.js.map +0 -1
  70. package/dist/cjs/contracts/factories/BeaconProxy__factory.d.ts +0 -61
  71. package/dist/cjs/contracts/factories/BeaconProxy__factory.js +0 -89
  72. package/dist/cjs/contracts/factories/BeaconProxy__factory.js.map +0 -1
  73. package/dist/cjs/contracts/factories/Maintainer__factory.d.ts +0 -609
  74. package/dist/cjs/contracts/factories/Maintainer__factory.js +0 -792
  75. package/dist/cjs/contracts/factories/Maintainer__factory.js.map +0 -1
  76. package/dist/cjs/contracts/factories/MockToken__factory.js +0 -365
  77. package/dist/cjs/contracts/factories/MockToken__factory.js.map +0 -1
  78. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.d.ts +0 -87
  79. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.js +0 -122
  80. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.js.map +0 -1
  81. package/dist/cjs/contracts/factories/WeETH__factory.d.ts +0 -545
  82. package/dist/cjs/contracts/factories/WeETH__factory.js +0 -721
  83. package/dist/cjs/contracts/factories/WeETH__factory.js.map +0 -1
  84. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.d.ts +0 -4136
  85. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.js +0 -5324
  86. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.js.map +0 -1
  87. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.d.ts +0 -189
  88. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.js +0 -254
  89. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.js.map +0 -1
  90. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.d.ts +0 -715
  91. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.js +0 -928
  92. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.js.map +0 -1
  93. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.d.ts +0 -344
  94. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.js +0 -456
  95. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.js.map +0 -1
  96. package/dist/cjs/contracts/factories/lean0/index.d.ts +0 -4
  97. package/dist/cjs/contracts/factories/lean0/index.js +0 -15
  98. package/dist/cjs/contracts/factories/lean0/index.js.map +0 -1
  99. package/dist/cjs/contracts/lean0/IPerpetualManager.d.ts +0 -2821
  100. package/dist/cjs/contracts/lean0/IPerpetualManager.js +0 -3
  101. package/dist/cjs/contracts/lean0/IPerpetualManager.js.map +0 -1
  102. package/dist/cjs/contracts/lean0/LimitOrderBook.d.ts +0 -533
  103. package/dist/cjs/contracts/lean0/LimitOrderBook.js +0 -3
  104. package/dist/cjs/contracts/lean0/LimitOrderBook.js.map +0 -1
  105. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.d.ts +0 -210
  106. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.js +0 -3
  107. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.js.map +0 -1
  108. package/dist/cjs/contracts/lean0/ShareToken.d.ts +0 -320
  109. package/dist/cjs/contracts/lean0/ShareToken.js +0 -3
  110. package/dist/cjs/contracts/lean0/ShareToken.js.map +0 -1
  111. package/dist/cjs/contracts/lean0/index.d.ts +0 -4
  112. package/dist/cjs/contracts/lean0/index.js +0 -3
  113. package/dist/cjs/contracts/lean0/index.js.map +0 -1
  114. package/dist/esm/abi/BeaconProxy.json +0 -71
  115. package/dist/esm/abi/Maintainer.json +0 -774
  116. package/dist/esm/abi/MockToken.json +0 -347
  117. package/dist/esm/abi/UUPSUpgradeable.json +0 -104
  118. package/dist/esm/abi/WeETH.json +0 -310
  119. package/dist/esm/abi/lean0/IPerpetualManager.json +0 -5306
  120. package/dist/esm/abi/lean0/LimitOrderBook.json +0 -910
  121. package/dist/esm/abi/lean0/LimitOrderBookFactory.json +0 -236
  122. package/dist/esm/abi/lean0/ShareToken.json +0 -438
  123. package/dist/esm/abi-zkevm/LimitOrderBook.json +0 -910
  124. package/dist/esm/abi-zkevm/LimitOrderBookFactory.json +0 -236
  125. package/dist/esm/contracts/BeaconProxy.d.ts +0 -63
  126. package/dist/esm/contracts/BeaconProxy.js +0 -2
  127. package/dist/esm/contracts/BeaconProxy.js.map +0 -1
  128. package/dist/esm/contracts/Maintainer.d.ts +0 -799
  129. package/dist/esm/contracts/Maintainer.js +0 -2
  130. package/dist/esm/contracts/Maintainer.js.map +0 -1
  131. package/dist/esm/contracts/MockToken.d.ts +0 -263
  132. package/dist/esm/contracts/MockToken.js +0 -2
  133. package/dist/esm/contracts/MockToken.js.map +0 -1
  134. package/dist/esm/contracts/UUPSUpgradeable.d.ts +0 -118
  135. package/dist/esm/contracts/UUPSUpgradeable.js +0 -2
  136. package/dist/esm/contracts/UUPSUpgradeable.js.map +0 -1
  137. package/dist/esm/contracts/WeETH.d.ts +0 -503
  138. package/dist/esm/contracts/WeETH.js +0 -2
  139. package/dist/esm/contracts/WeETH.js.map +0 -1
  140. package/dist/esm/contracts/factories/BeaconProxy__factory.d.ts +0 -61
  141. package/dist/esm/contracts/factories/BeaconProxy__factory.js +0 -85
  142. package/dist/esm/contracts/factories/BeaconProxy__factory.js.map +0 -1
  143. package/dist/esm/contracts/factories/Maintainer__factory.d.ts +0 -609
  144. package/dist/esm/contracts/factories/Maintainer__factory.js +0 -788
  145. package/dist/esm/contracts/factories/Maintainer__factory.js.map +0 -1
  146. package/dist/esm/contracts/factories/MockToken__factory.d.ts +0 -273
  147. package/dist/esm/contracts/factories/MockToken__factory.js.map +0 -1
  148. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.d.ts +0 -87
  149. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.js +0 -118
  150. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.js.map +0 -1
  151. package/dist/esm/contracts/factories/WeETH__factory.d.ts +0 -545
  152. package/dist/esm/contracts/factories/WeETH__factory.js +0 -717
  153. package/dist/esm/contracts/factories/WeETH__factory.js.map +0 -1
  154. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.d.ts +0 -4136
  155. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.js +0 -5320
  156. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.js.map +0 -1
  157. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.d.ts +0 -189
  158. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.js +0 -250
  159. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.js.map +0 -1
  160. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.d.ts +0 -715
  161. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.js +0 -924
  162. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.js.map +0 -1
  163. package/dist/esm/contracts/factories/lean0/ShareToken__factory.d.ts +0 -344
  164. package/dist/esm/contracts/factories/lean0/ShareToken__factory.js +0 -452
  165. package/dist/esm/contracts/factories/lean0/ShareToken__factory.js.map +0 -1
  166. package/dist/esm/contracts/factories/lean0/index.d.ts +0 -4
  167. package/dist/esm/contracts/factories/lean0/index.js +0 -8
  168. package/dist/esm/contracts/factories/lean0/index.js.map +0 -1
  169. package/dist/esm/contracts/lean0/IPerpetualManager.d.ts +0 -2821
  170. package/dist/esm/contracts/lean0/IPerpetualManager.js +0 -2
  171. package/dist/esm/contracts/lean0/IPerpetualManager.js.map +0 -1
  172. package/dist/esm/contracts/lean0/LimitOrderBook.d.ts +0 -533
  173. package/dist/esm/contracts/lean0/LimitOrderBook.js +0 -2
  174. package/dist/esm/contracts/lean0/LimitOrderBook.js.map +0 -1
  175. package/dist/esm/contracts/lean0/LimitOrderBookFactory.d.ts +0 -210
  176. package/dist/esm/contracts/lean0/LimitOrderBookFactory.js +0 -2
  177. package/dist/esm/contracts/lean0/LimitOrderBookFactory.js.map +0 -1
  178. package/dist/esm/contracts/lean0/ShareToken.d.ts +0 -320
  179. package/dist/esm/contracts/lean0/ShareToken.js +0 -2
  180. package/dist/esm/contracts/lean0/ShareToken.js.map +0 -1
  181. package/dist/esm/contracts/lean0/index.d.ts +0 -4
  182. package/dist/esm/contracts/lean0/index.js +0 -2
  183. package/dist/esm/contracts/lean0/index.js.map +0 -1
@@ -7,6 +7,7 @@ import PerpetualDataHandler from "./perpetualDataHandler";
7
7
  */
8
8
  export default class PriceFeeds {
9
9
  private config;
10
+ private priceFeedConfigNetwork;
10
11
  feedEndpoints: Array<string>;
11
12
  writeFeedEndpoints: Array<string>;
12
13
  private feedInfo;
@@ -18,6 +19,11 @@ export default class PriceFeeds {
18
19
  private PYTH;
19
20
  private polyMktsPxFeed;
20
21
  constructor(dataHandler: PerpetualDataHandler, priceFeedConfigNetwork: string);
22
+ /**
23
+ * initialization function. Gathers config from config-hub if url
24
+ * specified
25
+ */
26
+ init(): Promise<void>;
21
27
  getConfig(): PriceFeedConfig;
22
28
  static overridePriceEndpointsOfSameType(configEndpoints: PriceFeedEndpoints, userProvidedEndpoints: PriceFeedEndpointsOptionalWrite): PriceFeedEndpoints;
23
29
  /**
@@ -11,20 +11,49 @@ import { sleep } from "./utils";
11
11
  */
12
12
  export default class PriceFeeds {
13
13
  constructor(dataHandler, priceFeedConfigNetwork) {
14
+ // Read only price info endpoints. Used by default. feedEndpoints[endpointId]
15
+ // = endpointstring
16
+ this.feedEndpoints = [];
14
17
  // Endpoints which are used to fetch prices for submissions
15
18
  this.writeFeedEndpoints = [];
16
19
  this.THRESHOLD_MARKET_CLOSED_SEC = 15; // smallest lag for which we consider the market as being closed
17
20
  this.cache = new Map();
18
21
  // api formatting constants
19
22
  this.PYTH = { endpoint: "/v2/updates/price/latest?encoding=base64&ids[]=", separator: "&ids[]=", suffix: "" };
20
- let configs = require("./config/priceFeedConfig.json");
21
- this.config = PriceFeeds._selectConfig(configs, priceFeedConfigNetwork);
23
+ this.priceFeedConfigNetwork = priceFeedConfigNetwork;
24
+ this.onChainPxFeeds = new Map();
25
+ this.dataHandler = dataHandler;
26
+ this.triangulations = new Map();
27
+ this.feedInfo = new Map();
28
+ }
29
+ /**
30
+ * initialization function. Gathers config from config-hub if url
31
+ * specified
32
+ */
33
+ async init() {
34
+ let configs;
35
+ const configSrc = this.dataHandler.config.configSource;
36
+ if (configSrc == "" || configSrc == undefined) {
37
+ // embedded config
38
+ configs = require("./config/priceFeedConfig.json");
39
+ }
40
+ else {
41
+ //load remote config
42
+ const res = await fetch(configSrc + "/priceFeedConfig.json");
43
+ if (res.status !== 200) {
44
+ throw new Error(`failed to fetch priceFeedConfig status code: ${res.status}`);
45
+ }
46
+ if (!res.ok) {
47
+ throw new Error(`failed to fetch config (${res.status}): ${res.statusText} ${configSrc}`);
48
+ }
49
+ configs = await res.json();
50
+ }
51
+ this.config = PriceFeeds._selectConfig(configs, this.priceFeedConfigNetwork);
22
52
  // if SDK config contains custom price feed endpoints, these override the
23
53
  // public/default ones
24
- if (dataHandler.config.priceFeedEndpoints && dataHandler.config.priceFeedEndpoints.length > 0) {
25
- this.config.endpoints = PriceFeeds.overridePriceEndpointsOfSameType(this.config.endpoints, dataHandler.config.priceFeedEndpoints);
54
+ if (this.dataHandler.config.priceFeedEndpoints && this.dataHandler.config.priceFeedEndpoints.length > 0) {
55
+ this.config.endpoints = PriceFeeds.overridePriceEndpointsOfSameType(this.config.endpoints, this.dataHandler.config.priceFeedEndpoints);
26
56
  }
27
- this.onChainPxFeeds = new Map();
28
57
  for (let k = 0; k < this.config.ids.length; k++) {
29
58
  if (this.config.ids[k].type == "onchain") {
30
59
  let sym = this.config.ids[k].symbol;
@@ -40,10 +69,11 @@ export default class PriceFeeds {
40
69
  throw new Error("PriceFeeds: no writeEndpoints provided in config");
41
70
  }
42
71
  this.polyMktsPxFeed = new PolyMktsPxFeed(this.config);
43
- this.dataHandler = dataHandler;
44
- this.triangulations = new Map();
45
72
  }
46
73
  getConfig() {
74
+ if (this.config == undefined) {
75
+ throw Error("init() required");
76
+ }
47
77
  return this.config;
48
78
  }
49
79
  // overridePriceEndpointsOfSameType overrides endpoints of config with same
@@ -160,6 +190,9 @@ export default class PriceFeeds {
160
190
  * ema, confidence, and order book parameters.
161
191
  */
162
192
  async fetchPricesForPerpetual(symbol) {
193
+ if (this.polyMktsPxFeed == undefined) {
194
+ throw Error("init() required");
195
+ }
163
196
  let indexSymbols = this.dataHandler.getIndexSymbols(symbol).filter((x) => x != "");
164
197
  if (this.dataHandler.isPredictionMarket(symbol)) {
165
198
  let priceObj = await this.polyMktsPxFeed.fetchPriceForSym(indexSymbols[0]);
@@ -216,6 +249,9 @@ export default class PriceFeeds {
216
249
  * <symbol>:ema for each polymarket symbol that maps to the ema price
217
250
  */
218
251
  async fetchFeedPrices(symbols) {
252
+ if (this.config == undefined) {
253
+ throw Error("init() required");
254
+ }
219
255
  let queries = new Array(this.feedEndpoints.length);
220
256
  let suffixes = new Array(queries.length);
221
257
  let symbolsOfEndpoint = [];
@@ -297,6 +333,9 @@ export default class PriceFeeds {
297
333
  }
298
334
  // returns an array with two values per symbol: price, ema
299
335
  async queryPolyMktsPxFeeds(symbols) {
336
+ if (this.polyMktsPxFeed == undefined) {
337
+ throw Error("init() required");
338
+ }
300
339
  let prices = new Array();
301
340
  for (let k = 0; k < symbols.length; k++) {
302
341
  try {
@@ -329,6 +368,9 @@ export default class PriceFeeds {
329
368
  * contract and corresponding price information
330
369
  */
331
370
  async fetchLatestFeedPriceInfoForPerpetual(symbol) {
371
+ if (this.config == undefined) {
372
+ throw Error("init() required");
373
+ }
332
374
  // get the feedIds that the contract uses
333
375
  let feedIds = this.dataHandler.getPriceIds(symbol);
334
376
  let queries = new Array();
@@ -1 +1 @@
1
- {"version":3,"file":"priceFeeds.js","sourceRoot":"","sources":["../../src/priceFeeds.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"priceFeeds.js","sourceRoot":"","sources":["../../src/priceFeeds.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const D8X_SDK_VERSION = "2.1.5-alpha2";
1
+ export declare const D8X_SDK_VERSION = "2.1.6-alpha2";
@@ -1,2 +1,2 @@
1
- export const D8X_SDK_VERSION = "2.1.5-alpha2";
1
+ export const D8X_SDK_VERSION = "2.1.6-alpha2";
2
2
  //# sourceMappingURL=version.js.map
@@ -37,6 +37,7 @@ export default class WriteAccessHandler extends PerpetualDataHandler {
37
37
  * @param provider optional provider
38
38
  */
39
39
  async createProxyInstance(providerOrMarketData, overrides) {
40
+ await this.priceFeedGetter.init();
40
41
  if (providerOrMarketData == undefined || !("createProxyInstance" in providerOrMarketData)) {
41
42
  this.provider = providerOrMarketData ?? new JsonRpcProvider(this.nodeURL, this.network, { staticNetwork: true });
42
43
  if (!this.signer) {
@@ -1 +1 @@
1
- {"version":3,"file":"writeAccessHandler.js","sourceRoot":"","sources":["../../src/writeAccessHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writeAccessHandler.js","sourceRoot":"","sources":["../../src/writeAccessHandler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@d8x/perpetuals-sdk",
3
- "version": "2.1.5-alpha2",
3
+ "version": "2.1.6-alpha2",
4
4
  "description": "Node TypeScript SDK for D8X Perpetual Futures",
5
5
  "author": "D8X",
6
6
  "homepage": "https://github.com/D8-X/d8x-futures-node-sdk#readme",
@@ -93,7 +93,8 @@
93
93
  "shareTokenABILocation": "./abi/ShareToken.json",
94
94
  "proxyABILocation": "./abi/IPerpetualManager.json",
95
95
  "limitOrderBookFactoryABILocation": "./abi/LimitOrderBookFactory.json",
96
- "limitOrderBookABILocation": "./abi/LimitOrderBook.json"
96
+ "limitOrderBookABILocation": "./abi/LimitOrderBook.json",
97
+ "configSource": "https://raw.githubusercontent.com/D8-X/sync-hub/main/d8x-futures-node-sdk/"
97
98
  },
98
99
  {
99
100
  "name": "artio",
@@ -118,7 +119,8 @@
118
119
  "shareTokenABILocation": "./abi/ShareToken.json",
119
120
  "proxyABILocation": "./abi/IPerpetualManager.json",
120
121
  "limitOrderBookFactoryABILocation": "./abi/LimitOrderBookFactory.json",
121
- "limitOrderBookABILocation": "./abi/LimitOrderBook.json"
122
+ "limitOrderBookABILocation": "./abi/LimitOrderBook.json",
123
+ "configSource": "https://raw.githubusercontent.com/D8-X/sync-hub/main/d8x-futures-node-sdk/"
122
124
  },
123
125
  {
124
126
  "name": "xlayer",
@@ -130,7 +132,8 @@
130
132
  "shareTokenABILocation": "./abi/ShareToken.json",
131
133
  "proxyABILocation": "./abi/IPerpetualManager.json",
132
134
  "limitOrderBookFactoryABILocation": "./abi/LimitOrderBookFactory.json",
133
- "limitOrderBookABILocation": "./abi/LimitOrderBook.json"
135
+ "limitOrderBookABILocation": "./abi/LimitOrderBook.json",
136
+ "configSource": "https://raw.githubusercontent.com/D8-X/sync-hub/main/d8x-futures-node-sdk/"
134
137
  },
135
138
  {
136
139
  "name": "bartio",
@@ -142,7 +145,8 @@
142
145
  "shareTokenABILocation": "./abi/ShareToken.json",
143
146
  "proxyABILocation": "./abi/IPerpetualManager.json",
144
147
  "limitOrderBookFactoryABILocation": "./abi/LimitOrderBookFactory.json",
145
- "limitOrderBookABILocation": "./abi/LimitOrderBook.json"
148
+ "limitOrderBookABILocation": "./abi/LimitOrderBook.json",
149
+ "configSource": "https://raw.githubusercontent.com/D8-X/sync-hub/main/d8x-futures-node-sdk/"
146
150
  },
147
151
  {
148
152
  "name": "europaTestnet",
@@ -2,6 +2,12 @@
2
2
  {
3
3
  "network": "mainnet",
4
4
  "ids": [
5
+ {
6
+ "symbol": "BTLJ-USD",
7
+ "id": "0xE40F3EF726A04AD63510BAF90238F6BCACF4365DB2A38E02A6E8623C2BEDC97D",
8
+ "type": "polymarket",
9
+ "origin": "0x3157ea263270be44bd68a3d6bde1f6f639be2746974f65de24e00ea6378d7838"
10
+ },
5
11
  {
6
12
  "symbol": "TRUMP24-USD",
7
13
  "id": "0x3011e4ede0f6befa0ad3f571001d3e1ffeef3d4af78c3112aaac90416e3a43e7",
@@ -166,6 +172,12 @@
166
172
  {
167
173
  "network": "odin",
168
174
  "ids": [
175
+ {
176
+ "symbol": "BTLJ-USD",
177
+ "id": "0xE40F3EF726A04AD63510BAF90238F6BCACF4365DB2A38E02A6E8623C2BEDC97D",
178
+ "type": "polymarket",
179
+ "origin": "0x3157ea263270be44bd68a3d6bde1f6f639be2746974f65de24e00ea6378d7838"
180
+ },
169
181
  {
170
182
  "symbol": "TRUMP24-USD",
171
183
  "id": "0x3011e4ede0f6befa0ad3f571001d3e1ffeef3d4af78c3112aaac90416e3a43e7",
@@ -26,5 +26,6 @@
26
26
  "ETHf": "ETHFI",
27
27
  "ZK": "ZK",
28
28
  "PNDL": "PENDLE",
29
- "TR24": "TRUMP24"
29
+ "TR24": "TRUMP24",
30
+ "BTLJ": "BTLJ"
30
31
  }
package/src/marketData.ts CHANGED
@@ -108,6 +108,7 @@ export default class MarketData extends PerpetualDataHandler {
108
108
  * @param providerOrMarketData optional provider or existing market data instance
109
109
  */
110
110
  public async createProxyInstance(providerOrMarketData?: Provider | MarketData, overrides?: Overrides): Promise<void> {
111
+ await this.priceFeedGetter.init();
111
112
  if (providerOrMarketData == undefined || !("createProxyInstance" in providerOrMarketData)) {
112
113
  this.provider = providerOrMarketData ?? new JsonRpcProvider(this.nodeURL);
113
114
  await this.initContractsAndData(this.provider, overrides);
@@ -6,6 +6,7 @@ export interface NodeSDKConfig {
6
6
  chainId: number;
7
7
  version: number;
8
8
  nodeURL: string;
9
+ configSource: string;
9
10
  proxyAddr: string;
10
11
  proxyABILocation: string;
11
12
  shareTokenABILocation: string;
@@ -166,6 +166,7 @@ export default class PerpetualDataHandler {
166
166
  }
167
167
 
168
168
  protected async initContractsAndData(signerOrProvider: Signer | Provider, overrides?: Overrides) {
169
+ await this.fetchSymbolList();
169
170
  this.signerOrProvider = signerOrProvider;
170
171
  // check network
171
172
  let network: Network;
@@ -187,6 +188,24 @@ export default class PerpetualDataHandler {
187
188
  await this._fillSymbolMaps(overrides);
188
189
  }
189
190
 
191
+ /**
192
+ * sets the symbollist if a remote config url is specified
193
+ */
194
+ private async fetchSymbolList() {
195
+ if (this.config.configSource == "" || this.config.configSource == undefined) {
196
+ return;
197
+ }
198
+ const res = await fetch(this.config.configSource + "/symbolList.json");
199
+ if (res.status !== 200) {
200
+ throw new Error(`failed to fetch symbolList status code: ${res.status}`);
201
+ }
202
+ if (!res.ok) {
203
+ throw new Error(`failed to fetch config (${res.status}): ${res.statusText} ${this.config.configSource}`);
204
+ }
205
+ let symlist = await res.json();
206
+ this.symbolList = new Map<string, string>(Object.entries(symlist));
207
+ }
208
+
190
209
  /**
191
210
  * Returns the order-book contract for the symbol if found or fails
192
211
  * @param symbol symbol of the form ETH-USD-MATIC
package/src/priceFeeds.ts CHANGED
@@ -22,10 +22,11 @@ import { sleep } from "./utils";
22
22
  * trader liquidations, trade executions, change of trader margin amount.
23
23
  */
24
24
  export default class PriceFeeds {
25
- private config: PriceFeedConfig;
25
+ private config: PriceFeedConfig | undefined;
26
+ private priceFeedConfigNetwork: string;
26
27
  // Read only price info endpoints. Used by default. feedEndpoints[endpointId]
27
28
  // = endpointstring
28
- public feedEndpoints: Array<string>;
29
+ public feedEndpoints: Array<string> = [];
29
30
  // Endpoints which are used to fetch prices for submissions
30
31
  public writeFeedEndpoints: Array<string> = [];
31
32
  private feedInfo: Map<string, { symbol: string; endpointId: number }[]>; // priceFeedId -> [symbol, endpointId]
@@ -38,22 +39,47 @@ export default class PriceFeeds {
38
39
  // api formatting constants
39
40
  private PYTH = { endpoint: "/v2/updates/price/latest?encoding=base64&ids[]=", separator: "&ids[]=", suffix: "" };
40
41
 
41
- private polyMktsPxFeed: PolyMktsPxFeed;
42
+ private polyMktsPxFeed: PolyMktsPxFeed | undefined;
42
43
 
43
44
  constructor(dataHandler: PerpetualDataHandler, priceFeedConfigNetwork: string) {
44
- let configs = require("./config/priceFeedConfig.json") as PriceFeedConfig[];
45
- this.config = PriceFeeds._selectConfig(configs, priceFeedConfigNetwork);
45
+ this.priceFeedConfigNetwork = priceFeedConfigNetwork;
46
+ this.onChainPxFeeds = new Map<string, OnChainPxFeed>();
47
+ this.dataHandler = dataHandler;
48
+ this.triangulations = new Map<string, [string[], boolean[]]>();
49
+ this.feedInfo = new Map<string, { symbol: string; endpointId: number }[]>();
50
+ }
51
+
52
+ /**
53
+ * initialization function. Gathers config from config-hub if url
54
+ * specified
55
+ */
56
+ public async init() {
57
+ let configs: PriceFeedConfig[];
58
+ const configSrc = this.dataHandler.config.configSource;
59
+ if (configSrc == "" || configSrc == undefined) {
60
+ // embedded config
61
+ configs = require("./config/priceFeedConfig.json") as PriceFeedConfig[];
62
+ } else {
63
+ //load remote config
64
+ const res = await fetch(configSrc + "/priceFeedConfig.json");
65
+ if (res.status !== 200) {
66
+ throw new Error(`failed to fetch priceFeedConfig status code: ${res.status}`);
67
+ }
68
+ if (!res.ok) {
69
+ throw new Error(`failed to fetch config (${res.status}): ${res.statusText} ${configSrc}`);
70
+ }
71
+ configs = await res.json();
72
+ }
73
+ this.config = PriceFeeds._selectConfig(configs, this.priceFeedConfigNetwork);
46
74
 
47
75
  // if SDK config contains custom price feed endpoints, these override the
48
76
  // public/default ones
49
- if (dataHandler.config.priceFeedEndpoints && dataHandler.config.priceFeedEndpoints.length > 0) {
77
+ if (this.dataHandler.config.priceFeedEndpoints && this.dataHandler.config.priceFeedEndpoints.length > 0) {
50
78
  this.config.endpoints = PriceFeeds.overridePriceEndpointsOfSameType(
51
79
  this.config.endpoints,
52
- dataHandler.config.priceFeedEndpoints
80
+ this.dataHandler.config.priceFeedEndpoints
53
81
  );
54
82
  }
55
-
56
- this.onChainPxFeeds = new Map<string, OnChainPxFeed>();
57
83
  for (let k = 0; k < this.config.ids.length; k++) {
58
84
  if (this.config.ids[k].type == "onchain") {
59
85
  let sym = this.config.ids[k].symbol;
@@ -69,11 +95,12 @@ export default class PriceFeeds {
69
95
  throw new Error("PriceFeeds: no writeEndpoints provided in config");
70
96
  }
71
97
  this.polyMktsPxFeed = new PolyMktsPxFeed(this.config);
72
- this.dataHandler = dataHandler;
73
- this.triangulations = new Map<string, [string[], boolean[]]>();
74
98
  }
75
99
 
76
100
  public getConfig(): PriceFeedConfig {
101
+ if (this.config == undefined) {
102
+ throw Error("init() required");
103
+ }
77
104
  return this.config;
78
105
  }
79
106
  // overridePriceEndpointsOfSameType overrides endpoints of config with same
@@ -209,6 +236,9 @@ export default class PriceFeeds {
209
236
  * ema, confidence, and order book parameters.
210
237
  */
211
238
  public async fetchPricesForPerpetual(symbol: string): Promise<IdxPriceInfo> {
239
+ if (this.polyMktsPxFeed == undefined) {
240
+ throw Error("init() required");
241
+ }
212
242
  let indexSymbols = this.dataHandler.getIndexSymbols(symbol).filter((x) => x != "");
213
243
  if (this.dataHandler.isPredictionMarket(symbol)) {
214
244
  let priceObj = await this.polyMktsPxFeed.fetchPriceForSym(indexSymbols[0]);
@@ -265,6 +295,9 @@ export default class PriceFeeds {
265
295
  * <symbol>:ema for each polymarket symbol that maps to the ema price
266
296
  */
267
297
  public async fetchFeedPrices(symbols?: string[]): Promise<Map<string, [number, boolean]>> {
298
+ if (this.config == undefined) {
299
+ throw Error("init() required");
300
+ }
268
301
  let queries = new Array<string>(this.feedEndpoints.length);
269
302
  let suffixes = new Array<string>(queries.length);
270
303
  let symbolsOfEndpoint: string[][] = [];
@@ -347,6 +380,9 @@ export default class PriceFeeds {
347
380
 
348
381
  // returns an array with two values per symbol: price, ema
349
382
  private async queryPolyMktsPxFeeds(symbols: string[]) {
383
+ if (this.polyMktsPxFeed == undefined) {
384
+ throw Error("init() required");
385
+ }
350
386
  let prices = new Array<PredMktPriceInfo | undefined>();
351
387
  for (let k = 0; k < symbols.length; k++) {
352
388
  try {
@@ -380,6 +416,9 @@ export default class PriceFeeds {
380
416
  * contract and corresponding price information
381
417
  */
382
418
  public async fetchLatestFeedPriceInfoForPerpetual(symbol: string): Promise<PriceFeedSubmission> {
419
+ if (this.config == undefined) {
420
+ throw Error("init() required");
421
+ }
383
422
  // get the feedIds that the contract uses
384
423
  let feedIds = this.dataHandler.getPriceIds(symbol);
385
424
  let queries = new Array<string>();
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const D8X_SDK_VERSION = "2.1.5-alpha2";
1
+ export const D8X_SDK_VERSION = "2.1.6-alpha2";
@@ -55,6 +55,7 @@ export default class WriteAccessHandler extends PerpetualDataHandler {
55
55
  * @param provider optional provider
56
56
  */
57
57
  public async createProxyInstance(providerOrMarketData?: Provider | MarketData, overrides?: Overrides) {
58
+ await this.priceFeedGetter.init();
58
59
  if (providerOrMarketData == undefined || !("createProxyInstance" in providerOrMarketData)) {
59
60
  this.provider = providerOrMarketData ?? new JsonRpcProvider(this.nodeURL, this.network, { staticNetwork: true });
60
61
  if (!this.signer) {
@@ -1,71 +0,0 @@
1
- [
2
- {
3
- "inputs": [
4
- {
5
- "internalType": "address",
6
- "name": "beacon",
7
- "type": "address"
8
- },
9
- {
10
- "internalType": "bytes",
11
- "name": "data",
12
- "type": "bytes"
13
- }
14
- ],
15
- "stateMutability": "payable",
16
- "type": "constructor"
17
- },
18
- {
19
- "anonymous": false,
20
- "inputs": [
21
- {
22
- "indexed": false,
23
- "internalType": "address",
24
- "name": "previousAdmin",
25
- "type": "address"
26
- },
27
- {
28
- "indexed": false,
29
- "internalType": "address",
30
- "name": "newAdmin",
31
- "type": "address"
32
- }
33
- ],
34
- "name": "AdminChanged",
35
- "type": "event"
36
- },
37
- {
38
- "anonymous": false,
39
- "inputs": [
40
- {
41
- "indexed": true,
42
- "internalType": "address",
43
- "name": "beacon",
44
- "type": "address"
45
- }
46
- ],
47
- "name": "BeaconUpgraded",
48
- "type": "event"
49
- },
50
- {
51
- "anonymous": false,
52
- "inputs": [
53
- {
54
- "indexed": true,
55
- "internalType": "address",
56
- "name": "implementation",
57
- "type": "address"
58
- }
59
- ],
60
- "name": "Upgraded",
61
- "type": "event"
62
- },
63
- {
64
- "stateMutability": "payable",
65
- "type": "fallback"
66
- },
67
- {
68
- "stateMutability": "payable",
69
- "type": "receive"
70
- }
71
- ]