@d8x/perpetuals-sdk 1.1.4 → 1.1.6
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/dist/cjs/config/priceFeedConfig.json +13 -4
- package/dist/cjs/config/symbolList.json +6 -5
- package/dist/cjs/priceFeeds.d.ts +2 -0
- package/dist/cjs/priceFeeds.js +31 -6
- package/dist/cjs/priceFeeds.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/config/priceFeedConfig.json +13 -4
- package/dist/esm/config/symbolList.json +6 -5
- package/dist/esm/priceFeeds.d.ts +2 -0
- package/dist/esm/priceFeeds.js +32 -7
- package/dist/esm/priceFeeds.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +1 -1
- package/src/config/priceFeedConfig.json +13 -4
- package/src/config/symbolList.json +6 -5
- package/src/priceFeeds.ts +31 -7
- package/src/version.ts +1 -1
|
@@ -135,25 +135,34 @@
|
|
|
135
135
|
"origin": "Metal.XAU/USD"
|
|
136
136
|
},
|
|
137
137
|
{
|
|
138
|
-
"symbol": "
|
|
138
|
+
"symbol": "STETH-USD",
|
|
139
139
|
"id": "0x846ae1bdb6300b817cee5fdee2a6da192775030db5615b94a465f53bd40850b5",
|
|
140
140
|
"type": "pyth",
|
|
141
141
|
"origin": "Crypto.STETH/USD"
|
|
142
142
|
},
|
|
143
143
|
{
|
|
144
|
-
"symbol": "
|
|
144
|
+
"symbol": "WSTETH-USD",
|
|
145
145
|
"id": "0x6df640f3b8963d8f8358f791f352b8364513f6ab1cca5ed3f1f7b5448980e784",
|
|
146
146
|
"type": "pyth",
|
|
147
147
|
"origin": "Crypto.WSTETH/USD"
|
|
148
148
|
},
|
|
149
149
|
{
|
|
150
|
-
"symbol": "
|
|
150
|
+
"symbol": "EURA-USD",
|
|
151
151
|
"id": "0x3b670a7aa22cf0dc3b76b42dc2e26a85bac35eafc5a5ae2defd6d98201b1b997",
|
|
152
152
|
"type": "pyth",
|
|
153
153
|
"origin": "Crypto.AGEUR/USD"
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
"symbol": "WEETH-USD",
|
|
157
|
+
"id": "0xca80ba6dc32e08d06f1aa886011eed1d77c77be9eb761cc10d72b7d0a2fd57a6",
|
|
158
|
+
"type": "pyth-beta",
|
|
159
|
+
"origin": "Crypto.ETH/USD"
|
|
154
160
|
}
|
|
155
161
|
],
|
|
156
|
-
"endpoints": [
|
|
162
|
+
"endpoints": [
|
|
163
|
+
{ "type": "pyth", "endpoints": ["https://hermes.pyth.network/api"] },
|
|
164
|
+
{ "type": "pyth-beta", "endpoints": ["https://hermes-beta.pyth.network/api"] }
|
|
165
|
+
]
|
|
157
166
|
},
|
|
158
167
|
{
|
|
159
168
|
"network": "odin",
|
|
@@ -10,9 +10,10 @@
|
|
|
10
10
|
"CHF": "CHF",
|
|
11
11
|
"EUR": "EUR",
|
|
12
12
|
"JPY": "JPY",
|
|
13
|
-
"stTH": "
|
|
14
|
-
"wstT": "
|
|
15
|
-
"stER": "
|
|
16
|
-
"
|
|
17
|
-
"LUSD": "LUSD"
|
|
13
|
+
"stTH": "STETH",
|
|
14
|
+
"wstT": "WSTETH",
|
|
15
|
+
"stER": "STEUR",
|
|
16
|
+
"EURA": "EURA",
|
|
17
|
+
"LUSD": "LUSD",
|
|
18
|
+
"wETH": "WEETH"
|
|
18
19
|
}
|
package/dist/cjs/priceFeeds.d.ts
CHANGED
|
@@ -13,6 +13,8 @@ export default class PriceFeeds {
|
|
|
13
13
|
private triangulations;
|
|
14
14
|
private THRESHOLD_MARKET_CLOSED_SEC;
|
|
15
15
|
private cache;
|
|
16
|
+
private PYTH;
|
|
17
|
+
private REDSTONE;
|
|
16
18
|
constructor(dataHandler: PerpetualDataHandler, priceFeedConfigNetwork: string);
|
|
17
19
|
/**
|
|
18
20
|
* Pre-processing of triangulations for symbols, given the price feeds
|
package/dist/cjs/priceFeeds.js
CHANGED
|
@@ -16,6 +16,9 @@ class PriceFeeds {
|
|
|
16
16
|
constructor(dataHandler, priceFeedConfigNetwork) {
|
|
17
17
|
this.THRESHOLD_MARKET_CLOSED_SEC = 15; // smallest lag for which we consider the market as being closed
|
|
18
18
|
this.cache = new Map();
|
|
19
|
+
// api formatting constants
|
|
20
|
+
this.PYTH = { endpoint: "/latest_price_feeds?ids[]=", separator: "&ids[]=", suffix: "" };
|
|
21
|
+
this.REDSTONE = { endpoint: "/prices?symbols=", separator: ",", suffix: "&provider=redstone" };
|
|
19
22
|
let configs = require("./config/priceFeedConfig.json");
|
|
20
23
|
this.config = PriceFeeds._selectConfig(configs, priceFeedConfigNetwork);
|
|
21
24
|
// if SDK config contains custom price feed endpoints, these override the public/default ones
|
|
@@ -130,6 +133,7 @@ class PriceFeeds {
|
|
|
130
133
|
*/
|
|
131
134
|
async fetchFeedPrices(symbols) {
|
|
132
135
|
let queries = new Array(this.feedEndpoints.length);
|
|
136
|
+
let suffixes = new Array(queries.length);
|
|
133
137
|
let symbolsOfEndpoint = [];
|
|
134
138
|
for (let j = 0; j < queries.length; j++) {
|
|
135
139
|
symbolsOfEndpoint.push([]);
|
|
@@ -139,22 +143,29 @@ class PriceFeeds {
|
|
|
139
143
|
if (symbols != undefined && !symbols.includes(currFeed.symbol)) {
|
|
140
144
|
continue;
|
|
141
145
|
}
|
|
146
|
+
const apiFormat = { pyth: this.PYTH, odin: this.PYTH, redstone: this.REDSTONE }[currFeed.type] ?? this.PYTH;
|
|
147
|
+
if (apiFormat === undefined) {
|
|
148
|
+
throw new Error(`API format for ${currFeed} unknown.`);
|
|
149
|
+
}
|
|
142
150
|
// feedInfo: Map<string, {symbol:string, endpointId: number}>; // priceFeedId -> symbol, endpointId
|
|
143
151
|
let endpointId = this.feedInfo.get(currFeed.id).endpointId;
|
|
144
152
|
symbolsOfEndpoint[endpointId].push(currFeed.symbol);
|
|
145
153
|
if (queries[endpointId] == undefined) {
|
|
146
154
|
// each id can have a different endpoint, but we cluster
|
|
147
155
|
// the queries into one per endpoint
|
|
148
|
-
queries[endpointId] = this.feedEndpoints[endpointId] +
|
|
156
|
+
queries[endpointId] = this.feedEndpoints[endpointId] + apiFormat.endpoint + currFeed.id;
|
|
157
|
+
suffixes[endpointId] = apiFormat.suffix;
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
queries[endpointId] = queries[endpointId] + apiFormat.separator + currFeed.id;
|
|
149
161
|
}
|
|
150
|
-
queries[endpointId] = queries[endpointId] + "ids[]=" + currFeed.id + "&";
|
|
151
162
|
}
|
|
152
163
|
let resultPrices = new Map();
|
|
153
164
|
for (let k = 0; k < queries.length; k++) {
|
|
154
165
|
if (queries[k] == undefined) {
|
|
155
166
|
continue;
|
|
156
167
|
}
|
|
157
|
-
let [, pxInfo] = await this.fetchPriceQuery(queries[k]);
|
|
168
|
+
let [, pxInfo] = await this.fetchPriceQuery(queries[k] + suffixes[k]);
|
|
158
169
|
let tsSecNow = Math.round(Date.now() / 1000);
|
|
159
170
|
for (let j = 0; j < pxInfo.length; j++) {
|
|
160
171
|
let price = (0, d8XMath_1.decNToFloat)(bignumber_1.BigNumber.from(pxInfo[j].price), -pxInfo[j].expo);
|
|
@@ -343,9 +354,23 @@ class PriceFeeds {
|
|
|
343
354
|
}
|
|
344
355
|
const priceFeedUpdates = new Array();
|
|
345
356
|
const px = new Array();
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
357
|
+
const keys = Array.isArray(values) ? [] : Object.keys(values);
|
|
358
|
+
if (keys.length > 0) {
|
|
359
|
+
for (const k of keys) {
|
|
360
|
+
priceFeedUpdates.push("0x");
|
|
361
|
+
px.push({
|
|
362
|
+
conf: bignumber_1.BigNumber.from(0),
|
|
363
|
+
expo: -18,
|
|
364
|
+
price: (0, d8XMath_1.floatToDec18)(values[k].value),
|
|
365
|
+
publish_time: values[k].timestamp,
|
|
366
|
+
});
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
else {
|
|
370
|
+
for (let k = 0; k < values.length; k++) {
|
|
371
|
+
priceFeedUpdates.push("0x" + buffer_1.Buffer.from(values[k].id, "base64").toString("hex"));
|
|
372
|
+
px.push(values[k].price);
|
|
373
|
+
}
|
|
349
374
|
}
|
|
350
375
|
return [priceFeedUpdates, px];
|
|
351
376
|
}
|
|
@@ -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":";;;;;AAAA,wDAAqD;AACrD,mCAAgC;AAChC,uCAAsD;AAGtD,kEAA0C;AAE1C;;;;GAIG;AACH,MAAqB,UAAU;IAc7B,YAAY,WAAiC,EAAE,sBAA8B;QAPrE,gCAA2B,GAAG,EAAE,CAAC,CAAC,gEAAgE;QAClG,UAAK,GAAoD,IAAI,GAAG,EAAE,CAAC;QAE3E,2BAA2B;QACnB,SAAI,GAAG,EAAE,QAAQ,EAAE,4BAA4B,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QACpF,aAAQ,GAAG,EAAE,QAAQ,EAAE,kBAAkB,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;QAGhG,IAAI,OAAO,GAAG,OAAO,CAAC,+BAA+B,CAAsB,CAAC;QAC5E,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,aAAa,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAC;QACxE,6FAA6F;QAC7F,IAAI,WAAW,CAAC,MAAM,CAAC,kBAAkB,IAAI,WAAW,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7F,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,kBAAkB,CAAC;SAC/D;QACD,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxF,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,EAAiC,CAAC;IACjE,CAAC;IAED;;;OAGG;IACI,wBAAwB,CAAC,OAAoB;QAClD,IAAI,WAAW,GAAG,IAAI,KAAK,EAAU,CAAC;QACtC,KAAK,IAAI,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACnC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SAChC;QACD,KAAK,IAAI,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE;YACnC,IAAI,aAAa,GAAG,sBAAY,CAAC,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAClE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;SAChD;IACH,CAAC;IAED;;;OAGG;IACI,iBAAiB;QACtB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;OAEG;IACI,iBAAiB,CAAC,aAAiD;QACxE,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,wCAAwC,CACnD,MAAc;QAEd,IAAI,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC5D,gDAAgD;QAChD,IAAI,UAAU,GAAwB,MAAM,IAAI,CAAC,oCAAoC,CAAC,MAAM,CAAC,CAAC;QAC9F,0CAA0C;QAC1C,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,IAAI,CAAC,uCAAuC,CACzE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EACnC,UAAU,CACX,CAAC;QACF,IAAI,SAAS,GAAqB,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,IAAI,SAAS,GAAuB,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YACxB,SAAS,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC7B,SAAS,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;SAC9B;QACD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAC7E,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,WAAW,CAAC,OAAiB;QACxC,IAAI,UAAU,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACjD,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,+BAA+B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACpF,IAAI,MAAM,GAAG,IAAI,GAAG,EAA6B,CAAC;QAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACnD;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,uBAAuB,CAAC,MAAc;QACjD,IAAI,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACnF,iCAAiC;QACjC,IAAI,WAAW,GAAG,IAAI,KAAK,EAAU,CAAC;QACtC,KAAK,IAAI,GAAG,IAAI,YAAY,EAAE;YAC5B,IAAI,GAAG,IAAI,EAAE,EAAE;gBACb,IAAI,MAAM,GAAsC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC7E,IAAI,MAAM,IAAI,SAAS,EAAE;oBACvB,4EAA4E;oBAC5E,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBACvB;qBAAM;oBACL,mCAAmC;oBACnC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;iBACvD;aACF;SACF;QACD,sBAAsB;QACtB,IAAI,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACzD,cAAc;QACd,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,+BAA+B,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QACzF,8CAA8C;QAC9C,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE;YACtB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACf,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACvB;QACD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IACrD,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,eAAe,CAAC,OAAkB;QAC7C,IAAI,OAAO,GAAG,IAAI,KAAK,CAAS,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,QAAQ,GAAG,IAAI,KAAK,CAAS,OAAO,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,iBAAiB,GAAe,EAAE,CAAC;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC5B;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/C,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,OAAO,IAAI,SAAS,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAC9D,SAAS;aACV;YACD,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC;YAC5G,IAAI,SAAS,KAAK,SAAS,EAAE;gBAC3B,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,WAAW,CAAC,CAAC;aACxD;YACD,mGAAmG;YACnG,IAAI,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAE,CAAC,UAAU,CAAC;YAC5D,iBAAiB,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACpD,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,SAAS,EAAE;gBACpC,wDAAwD;gBACxD,oCAAoC;gBACpC,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAC;gBACxF,QAAQ,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;aACzC;iBAAM;gBACL,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,SAAS,GAAG,QAAQ,CAAC,EAAE,CAAC;aAC/E;SACF;QACD,IAAI,YAAY,GAAG,IAAI,GAAG,EAA6B,CAAC;QACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE;gBAC3B,SAAS;aACV;YACD,IAAI,CAAC,EAAE,MAAM,CAAC,GAAkC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACrG,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACtC,IAAI,KAAK,GAAG,IAAA,qBAAW,EAAC,qBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC1E,IAAI,cAAc,GAAG,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,2BAA2B,CAAC;gBAC1F,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC;aACpE;SACF;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,kBAAkB;QAC7B,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAChC,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,oCAAoC,CAAC,MAAc;QAC9D,IAAI,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,OAAO,GAAG,IAAI,KAAK,CAAS,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC3D,mDAAmD;QACnD,IAAI,mBAAmB,GAAG,IAAI,KAAK,EAAU,CAAC;QAC9C,qCAAqC;QACrC,IAAI,iBAAiB,GAAG,IAAI,KAAK,CAAS,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACrE,IAAI,OAAO,GAAG,IAAI,KAAK,EAAU,CAAC;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YACzC,IAAI,IAAI,IAAI,SAAS,EAAE;gBACrB,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,eAAe,CAAC,CAAC;aACzE;YACD,IAAI,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,SAAS,EAAE;gBAC5B,wDAAwD;gBACxD,oCAAoC;gBACpC,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,kCAAkC,CAAC;gBAC1E,iBAAiB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;aAC3B;YACD,OAAO,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YACxD,mBAAmB,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3D,iBAAiB,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;SACnD;QAED,IAAI,IAAI,CAAC;QACT,IAAI;YACF,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CACtB,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;gBACtB,IAAI,CAAC,IAAI,SAAS,EAAE;oBAClB,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;iBAC9B;qBAAM;oBACL,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;iBACjB;YACH,CAAC,CAAC,CACH,CAAC;SACH;QAAC,OAAO,KAAK,EAAE;YACd,uCAAuC;YACvC,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;YAC7E,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACvF,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CACtB,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;gBACtB,IAAI,CAAC,IAAI,SAAS,EAAE;oBAClB,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;iBAC9B;qBAAM;oBACL,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;iBACjB;YACH,CAAC,CAAC,CACH,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;SACxB;QAED,wDAAwD;QACxD,MAAM,gBAAgB,GAAG,IAAI,KAAK,EAAU,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,KAAK,EAAU,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,KAAK,EAAW,CAAC;QACvC,MAAM,UAAU,GAAG,IAAI,KAAK,EAAU,CAAC;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,mBAAmB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnD,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YAC1D,IAAI,gBAAgB,GAAG,mBAAmB,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC;YACjE,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC7D,IAAI,MAAM,GAAoB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;YACpE,IAAI,KAAK,GAAG,IAAA,qBAAW,EAAC,qBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACpE,IAAI,cAAc,GAAG,QAAQ,GAAG,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,2BAA2B,CAAC;YACvF,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;SACtC;QAED,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,aAAa,EAAE,gBAAgB;YAC/B,MAAM,EAAE,MAAM;YACd,cAAc,EAAE,SAAS;YACzB,UAAU,EAAE,UAAU;SACvB,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,uCAAuC,CAAC,OAAiB,EAAE,KAA0B;QAC1F,IAAI,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAC;QACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC5C,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC5E;QACD,OAAO,IAAI,CAAC,+BAA+B,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACjE,CAAC;IACD;;;;;;;OAOG;IACI,+BAA+B,CACpC,OAAiB,EACjB,YAA4C;QAE5C,IAAI,MAAM,GAAG,IAAI,KAAK,EAAU,CAAC;QACjC,IAAI,SAAS,GAAG,IAAI,KAAK,EAAW,CAAC;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,IAAI,aAAa,GAAsC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3F,IAAI,aAAa,IAAI,SAAS,EAAE;gBAC9B,IAAI,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC7C,IAAI,SAAS,IAAI,SAAS,EAAE;oBAC1B,MAAM,IAAI,KAAK,CAAC,4CAA4C,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;iBAC3E;qBAAM;oBACL,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;oBAClC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;oBAC9C,SAAS;iBACV;aACF;YACD,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,GAAsB,sBAAY,CAAC,0BAA0B,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;YAChH,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChB,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC7B;QACD,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,aAAa,CAAC,KAAa;QACvC,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,CAAC;QACpE,IAAI,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;SACvF;QACD,IAAI,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA+B,CAAC;QACnE,MAAM,gBAAgB,GAAG,IAAI,KAAK,EAAU,CAAC;QAC7C,MAAM,EAAE,GAAG,IAAI,KAAK,EAAmB,CAAC;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACtC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC1B,gBAAgB,CAAC,IAAI,CAAC,IAAI,GAAG,eAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YACzE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC1B;QACD,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,eAAe,CAAC,KAAa;QACxC,IAAI,MAAW,CAAC;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAK,CAAC;QACjC,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,GAAG,CAAC,GAAG,KAAK,EAAE;YAC1C,8EAA8E;YAC9E,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;SACxB;aAAM;YACL,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,CAAC;YACpE,IAAI,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;gBAChB,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;aACvF;YACD,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;SAC7D;QACD,MAAM,gBAAgB,GAAG,IAAI,KAAK,EAAU,CAAC;QAC7C,MAAM,EAAE,GAAG,IAAI,KAAK,EAAmB,CAAC;QACxC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;gBACpB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5B,EAAE,CAAC,IAAI,CAAC;oBACN,IAAI,EAAE,qBAAS,CAAC,IAAI,CAAC,CAAC,CAAC;oBACvB,IAAI,EAAE,CAAC,EAAE;oBACT,KAAK,EAAE,IAAA,sBAAY,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBACpC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;iBAClC,CAAC,CAAC;aACJ;SACF;aAAM;YACL,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACtC,gBAAgB,CAAC,IAAI,CAAC,IAAI,GAAG,eAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;gBAClF,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAwB,CAAC,CAAC;aAC7C;SACF;QACD,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,aAAa,CAAC,OAA0B,EAAE,OAAe;QAC9D,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE;YACzB,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,EAAE;gBACjC,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;aACnB;YACD,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SACX;QACD,MAAM,IAAI,KAAK,CAAC,4CAA4C,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,kBAAkB,CACvB,MAAuB,EACvB,gBAAyB;QAEzB,IAAI,IAAI,GAAG,IAAI,GAAG,EAAkD,CAAC;QACrE,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC;QACpB,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,IAAI,aAAa,GAAG,IAAI,KAAK,EAAU,CAAC;QAExC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAChD,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;YAC/C,IAAI,UAAU,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACjF,mCAAmC;YACnC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACzC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;SAC/D;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,IAAI,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBAC9B,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC1B,IAAI,CAAC,GAAG,CAAC,CAAC;gBACV,OAAO,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;oBAClC,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE;wBACpC,UAAU,GAAG,CAAC,CAAC;wBACf,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;qBAC7B;oBACD,CAAC,EAAE,CAAC;iBACL;gBACD,IAAI,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE;oBAC7C,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,wBAAwB,CAAC,CAAC;iBACnF;aACF;YACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;SACpG;QACD,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAC/B,CAAC;CACF;AA/bD,6BA+bC"}
|
package/dist/cjs/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const D8X_SDK_VERSION = "1.1.
|
|
1
|
+
export declare const D8X_SDK_VERSION = "1.1.6";
|
package/dist/cjs/version.js
CHANGED
|
@@ -135,25 +135,34 @@
|
|
|
135
135
|
"origin": "Metal.XAU/USD"
|
|
136
136
|
},
|
|
137
137
|
{
|
|
138
|
-
"symbol": "
|
|
138
|
+
"symbol": "STETH-USD",
|
|
139
139
|
"id": "0x846ae1bdb6300b817cee5fdee2a6da192775030db5615b94a465f53bd40850b5",
|
|
140
140
|
"type": "pyth",
|
|
141
141
|
"origin": "Crypto.STETH/USD"
|
|
142
142
|
},
|
|
143
143
|
{
|
|
144
|
-
"symbol": "
|
|
144
|
+
"symbol": "WSTETH-USD",
|
|
145
145
|
"id": "0x6df640f3b8963d8f8358f791f352b8364513f6ab1cca5ed3f1f7b5448980e784",
|
|
146
146
|
"type": "pyth",
|
|
147
147
|
"origin": "Crypto.WSTETH/USD"
|
|
148
148
|
},
|
|
149
149
|
{
|
|
150
|
-
"symbol": "
|
|
150
|
+
"symbol": "EURA-USD",
|
|
151
151
|
"id": "0x3b670a7aa22cf0dc3b76b42dc2e26a85bac35eafc5a5ae2defd6d98201b1b997",
|
|
152
152
|
"type": "pyth",
|
|
153
153
|
"origin": "Crypto.AGEUR/USD"
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
"symbol": "WEETH-USD",
|
|
157
|
+
"id": "0xca80ba6dc32e08d06f1aa886011eed1d77c77be9eb761cc10d72b7d0a2fd57a6",
|
|
158
|
+
"type": "pyth-beta",
|
|
159
|
+
"origin": "Crypto.ETH/USD"
|
|
154
160
|
}
|
|
155
161
|
],
|
|
156
|
-
"endpoints": [
|
|
162
|
+
"endpoints": [
|
|
163
|
+
{ "type": "pyth", "endpoints": ["https://hermes.pyth.network/api"] },
|
|
164
|
+
{ "type": "pyth-beta", "endpoints": ["https://hermes-beta.pyth.network/api"] }
|
|
165
|
+
]
|
|
157
166
|
},
|
|
158
167
|
{
|
|
159
168
|
"network": "odin",
|
|
@@ -10,9 +10,10 @@
|
|
|
10
10
|
"CHF": "CHF",
|
|
11
11
|
"EUR": "EUR",
|
|
12
12
|
"JPY": "JPY",
|
|
13
|
-
"stTH": "
|
|
14
|
-
"wstT": "
|
|
15
|
-
"stER": "
|
|
16
|
-
"
|
|
17
|
-
"LUSD": "LUSD"
|
|
13
|
+
"stTH": "STETH",
|
|
14
|
+
"wstT": "WSTETH",
|
|
15
|
+
"stER": "STEUR",
|
|
16
|
+
"EURA": "EURA",
|
|
17
|
+
"LUSD": "LUSD",
|
|
18
|
+
"wETH": "WEETH"
|
|
18
19
|
}
|
package/dist/esm/priceFeeds.d.ts
CHANGED
|
@@ -13,6 +13,8 @@ export default class PriceFeeds {
|
|
|
13
13
|
private triangulations;
|
|
14
14
|
private THRESHOLD_MARKET_CLOSED_SEC;
|
|
15
15
|
private cache;
|
|
16
|
+
private PYTH;
|
|
17
|
+
private REDSTONE;
|
|
16
18
|
constructor(dataHandler: PerpetualDataHandler, priceFeedConfigNetwork: string);
|
|
17
19
|
/**
|
|
18
20
|
* Pre-processing of triangulations for symbols, given the price feeds
|
package/dist/esm/priceFeeds.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BigNumber } from "@ethersproject/bignumber";
|
|
2
2
|
import { Buffer } from "buffer";
|
|
3
|
-
import { decNToFloat } from "./d8XMath";
|
|
3
|
+
import { decNToFloat, floatToDec18 } from "./d8XMath";
|
|
4
4
|
import Triangulator from "./triangulator";
|
|
5
5
|
/**
|
|
6
6
|
* This class communicates with the REST API that provides price-data that is
|
|
@@ -11,6 +11,9 @@ export default class PriceFeeds {
|
|
|
11
11
|
constructor(dataHandler, priceFeedConfigNetwork) {
|
|
12
12
|
this.THRESHOLD_MARKET_CLOSED_SEC = 15; // smallest lag for which we consider the market as being closed
|
|
13
13
|
this.cache = new Map();
|
|
14
|
+
// api formatting constants
|
|
15
|
+
this.PYTH = { endpoint: "/latest_price_feeds?ids[]=", separator: "&ids[]=", suffix: "" };
|
|
16
|
+
this.REDSTONE = { endpoint: "/prices?symbols=", separator: ",", suffix: "&provider=redstone" };
|
|
14
17
|
let configs = require("./config/priceFeedConfig.json");
|
|
15
18
|
this.config = PriceFeeds._selectConfig(configs, priceFeedConfigNetwork);
|
|
16
19
|
// if SDK config contains custom price feed endpoints, these override the public/default ones
|
|
@@ -125,6 +128,7 @@ export default class PriceFeeds {
|
|
|
125
128
|
*/
|
|
126
129
|
async fetchFeedPrices(symbols) {
|
|
127
130
|
let queries = new Array(this.feedEndpoints.length);
|
|
131
|
+
let suffixes = new Array(queries.length);
|
|
128
132
|
let symbolsOfEndpoint = [];
|
|
129
133
|
for (let j = 0; j < queries.length; j++) {
|
|
130
134
|
symbolsOfEndpoint.push([]);
|
|
@@ -134,22 +138,29 @@ export default class PriceFeeds {
|
|
|
134
138
|
if (symbols != undefined && !symbols.includes(currFeed.symbol)) {
|
|
135
139
|
continue;
|
|
136
140
|
}
|
|
141
|
+
const apiFormat = { pyth: this.PYTH, odin: this.PYTH, redstone: this.REDSTONE }[currFeed.type] ?? this.PYTH;
|
|
142
|
+
if (apiFormat === undefined) {
|
|
143
|
+
throw new Error(`API format for ${currFeed} unknown.`);
|
|
144
|
+
}
|
|
137
145
|
// feedInfo: Map<string, {symbol:string, endpointId: number}>; // priceFeedId -> symbol, endpointId
|
|
138
146
|
let endpointId = this.feedInfo.get(currFeed.id).endpointId;
|
|
139
147
|
symbolsOfEndpoint[endpointId].push(currFeed.symbol);
|
|
140
148
|
if (queries[endpointId] == undefined) {
|
|
141
149
|
// each id can have a different endpoint, but we cluster
|
|
142
150
|
// the queries into one per endpoint
|
|
143
|
-
queries[endpointId] = this.feedEndpoints[endpointId] +
|
|
151
|
+
queries[endpointId] = this.feedEndpoints[endpointId] + apiFormat.endpoint + currFeed.id;
|
|
152
|
+
suffixes[endpointId] = apiFormat.suffix;
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
queries[endpointId] = queries[endpointId] + apiFormat.separator + currFeed.id;
|
|
144
156
|
}
|
|
145
|
-
queries[endpointId] = queries[endpointId] + "ids[]=" + currFeed.id + "&";
|
|
146
157
|
}
|
|
147
158
|
let resultPrices = new Map();
|
|
148
159
|
for (let k = 0; k < queries.length; k++) {
|
|
149
160
|
if (queries[k] == undefined) {
|
|
150
161
|
continue;
|
|
151
162
|
}
|
|
152
|
-
let [, pxInfo] = await this.fetchPriceQuery(queries[k]);
|
|
163
|
+
let [, pxInfo] = await this.fetchPriceQuery(queries[k] + suffixes[k]);
|
|
153
164
|
let tsSecNow = Math.round(Date.now() / 1000);
|
|
154
165
|
for (let j = 0; j < pxInfo.length; j++) {
|
|
155
166
|
let price = decNToFloat(BigNumber.from(pxInfo[j].price), -pxInfo[j].expo);
|
|
@@ -338,9 +349,23 @@ export default class PriceFeeds {
|
|
|
338
349
|
}
|
|
339
350
|
const priceFeedUpdates = new Array();
|
|
340
351
|
const px = new Array();
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
352
|
+
const keys = Array.isArray(values) ? [] : Object.keys(values);
|
|
353
|
+
if (keys.length > 0) {
|
|
354
|
+
for (const k of keys) {
|
|
355
|
+
priceFeedUpdates.push("0x");
|
|
356
|
+
px.push({
|
|
357
|
+
conf: BigNumber.from(0),
|
|
358
|
+
expo: -18,
|
|
359
|
+
price: floatToDec18(values[k].value),
|
|
360
|
+
publish_time: values[k].timestamp,
|
|
361
|
+
});
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
else {
|
|
365
|
+
for (let k = 0; k < values.length; k++) {
|
|
366
|
+
priceFeedUpdates.push("0x" + Buffer.from(values[k].id, "base64").toString("hex"));
|
|
367
|
+
px.push(values[k].price);
|
|
368
|
+
}
|
|
344
369
|
}
|
|
345
370
|
return [priceFeedUpdates, px];
|
|
346
371
|
}
|
|
@@ -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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"}
|
package/dist/esm/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const D8X_SDK_VERSION = "1.1.
|
|
1
|
+
export declare const D8X_SDK_VERSION = "1.1.6";
|
package/dist/esm/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const D8X_SDK_VERSION = "1.1.
|
|
1
|
+
export const D8X_SDK_VERSION = "1.1.6";
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -135,25 +135,34 @@
|
|
|
135
135
|
"origin": "Metal.XAU/USD"
|
|
136
136
|
},
|
|
137
137
|
{
|
|
138
|
-
"symbol": "
|
|
138
|
+
"symbol": "STETH-USD",
|
|
139
139
|
"id": "0x846ae1bdb6300b817cee5fdee2a6da192775030db5615b94a465f53bd40850b5",
|
|
140
140
|
"type": "pyth",
|
|
141
141
|
"origin": "Crypto.STETH/USD"
|
|
142
142
|
},
|
|
143
143
|
{
|
|
144
|
-
"symbol": "
|
|
144
|
+
"symbol": "WSTETH-USD",
|
|
145
145
|
"id": "0x6df640f3b8963d8f8358f791f352b8364513f6ab1cca5ed3f1f7b5448980e784",
|
|
146
146
|
"type": "pyth",
|
|
147
147
|
"origin": "Crypto.WSTETH/USD"
|
|
148
148
|
},
|
|
149
149
|
{
|
|
150
|
-
"symbol": "
|
|
150
|
+
"symbol": "EURA-USD",
|
|
151
151
|
"id": "0x3b670a7aa22cf0dc3b76b42dc2e26a85bac35eafc5a5ae2defd6d98201b1b997",
|
|
152
152
|
"type": "pyth",
|
|
153
153
|
"origin": "Crypto.AGEUR/USD"
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
"symbol": "WEETH-USD",
|
|
157
|
+
"id": "0xca80ba6dc32e08d06f1aa886011eed1d77c77be9eb761cc10d72b7d0a2fd57a6",
|
|
158
|
+
"type": "pyth-beta",
|
|
159
|
+
"origin": "Crypto.ETH/USD"
|
|
154
160
|
}
|
|
155
161
|
],
|
|
156
|
-
"endpoints": [
|
|
162
|
+
"endpoints": [
|
|
163
|
+
{ "type": "pyth", "endpoints": ["https://hermes.pyth.network/api"] },
|
|
164
|
+
{ "type": "pyth-beta", "endpoints": ["https://hermes-beta.pyth.network/api"] }
|
|
165
|
+
]
|
|
157
166
|
},
|
|
158
167
|
{
|
|
159
168
|
"network": "odin",
|
|
@@ -10,9 +10,10 @@
|
|
|
10
10
|
"CHF": "CHF",
|
|
11
11
|
"EUR": "EUR",
|
|
12
12
|
"JPY": "JPY",
|
|
13
|
-
"stTH": "
|
|
14
|
-
"wstT": "
|
|
15
|
-
"stER": "
|
|
16
|
-
"
|
|
17
|
-
"LUSD": "LUSD"
|
|
13
|
+
"stTH": "STETH",
|
|
14
|
+
"wstT": "WSTETH",
|
|
15
|
+
"stER": "STEUR",
|
|
16
|
+
"EURA": "EURA",
|
|
17
|
+
"LUSD": "LUSD",
|
|
18
|
+
"wETH": "WEETH"
|
|
18
19
|
}
|
package/src/priceFeeds.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BigNumber } from "@ethersproject/bignumber";
|
|
2
2
|
import { Buffer } from "buffer";
|
|
3
|
-
import { decNToFloat } from "./d8XMath";
|
|
3
|
+
import { decNToFloat, floatToDec18 } from "./d8XMath";
|
|
4
4
|
import type { PriceFeedConfig, PriceFeedFormat, PriceFeedSubmission, PythLatestPriceFeed } from "./nodeSDKTypes";
|
|
5
5
|
import PerpetualDataHandler from "./perpetualDataHandler";
|
|
6
6
|
import Triangulator from "./triangulator";
|
|
@@ -20,6 +20,10 @@ export default class PriceFeeds {
|
|
|
20
20
|
private THRESHOLD_MARKET_CLOSED_SEC = 15; // smallest lag for which we consider the market as being closed
|
|
21
21
|
private cache: Map<string, { timestamp: number; values: any }> = new Map();
|
|
22
22
|
|
|
23
|
+
// api formatting constants
|
|
24
|
+
private PYTH = { endpoint: "/latest_price_feeds?ids[]=", separator: "&ids[]=", suffix: "" };
|
|
25
|
+
private REDSTONE = { endpoint: "/prices?symbols=", separator: ",", suffix: "&provider=redstone" };
|
|
26
|
+
|
|
23
27
|
constructor(dataHandler: PerpetualDataHandler, priceFeedConfigNetwork: string) {
|
|
24
28
|
let configs = require("./config/priceFeedConfig.json") as PriceFeedConfig[];
|
|
25
29
|
this.config = PriceFeeds._selectConfig(configs, priceFeedConfigNetwork);
|
|
@@ -146,6 +150,7 @@ export default class PriceFeeds {
|
|
|
146
150
|
*/
|
|
147
151
|
public async fetchFeedPrices(symbols?: string[]): Promise<Map<string, [number, boolean]>> {
|
|
148
152
|
let queries = new Array<string>(this.feedEndpoints.length);
|
|
153
|
+
let suffixes = new Array<string>(queries.length);
|
|
149
154
|
let symbolsOfEndpoint: string[][] = [];
|
|
150
155
|
for (let j = 0; j < queries.length; j++) {
|
|
151
156
|
symbolsOfEndpoint.push([]);
|
|
@@ -155,22 +160,28 @@ export default class PriceFeeds {
|
|
|
155
160
|
if (symbols != undefined && !symbols.includes(currFeed.symbol)) {
|
|
156
161
|
continue;
|
|
157
162
|
}
|
|
163
|
+
const apiFormat = { pyth: this.PYTH, odin: this.PYTH, redstone: this.REDSTONE }[currFeed.type] ?? this.PYTH;
|
|
164
|
+
if (apiFormat === undefined) {
|
|
165
|
+
throw new Error(`API format for ${currFeed} unknown.`);
|
|
166
|
+
}
|
|
158
167
|
// feedInfo: Map<string, {symbol:string, endpointId: number}>; // priceFeedId -> symbol, endpointId
|
|
159
168
|
let endpointId = this.feedInfo.get(currFeed.id)!.endpointId;
|
|
160
169
|
symbolsOfEndpoint[endpointId].push(currFeed.symbol);
|
|
161
170
|
if (queries[endpointId] == undefined) {
|
|
162
171
|
// each id can have a different endpoint, but we cluster
|
|
163
172
|
// the queries into one per endpoint
|
|
164
|
-
queries[endpointId] = this.feedEndpoints[endpointId] +
|
|
173
|
+
queries[endpointId] = this.feedEndpoints[endpointId] + apiFormat.endpoint + currFeed.id;
|
|
174
|
+
suffixes[endpointId] = apiFormat.suffix;
|
|
175
|
+
} else {
|
|
176
|
+
queries[endpointId] = queries[endpointId] + apiFormat.separator + currFeed.id;
|
|
165
177
|
}
|
|
166
|
-
queries[endpointId] = queries[endpointId] + "ids[]=" + currFeed.id + "&";
|
|
167
178
|
}
|
|
168
179
|
let resultPrices = new Map<string, [number, boolean]>();
|
|
169
180
|
for (let k = 0; k < queries.length; k++) {
|
|
170
181
|
if (queries[k] == undefined) {
|
|
171
182
|
continue;
|
|
172
183
|
}
|
|
173
|
-
let [, pxInfo]: [string[], PriceFeedFormat[]] = await this.fetchPriceQuery(queries[k]);
|
|
184
|
+
let [, pxInfo]: [string[], PriceFeedFormat[]] = await this.fetchPriceQuery(queries[k] + suffixes[k]);
|
|
174
185
|
let tsSecNow = Math.round(Date.now() / 1000);
|
|
175
186
|
for (let j = 0; j < pxInfo.length; j++) {
|
|
176
187
|
let price = decNToFloat(BigNumber.from(pxInfo[j].price), -pxInfo[j].expo);
|
|
@@ -369,9 +380,22 @@ export default class PriceFeeds {
|
|
|
369
380
|
}
|
|
370
381
|
const priceFeedUpdates = new Array<string>();
|
|
371
382
|
const px = new Array<PriceFeedFormat>();
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
383
|
+
const keys = Array.isArray(values) ? [] : Object.keys(values);
|
|
384
|
+
if (keys.length > 0) {
|
|
385
|
+
for (const k of keys) {
|
|
386
|
+
priceFeedUpdates.push("0x");
|
|
387
|
+
px.push({
|
|
388
|
+
conf: BigNumber.from(0),
|
|
389
|
+
expo: -18,
|
|
390
|
+
price: floatToDec18(values[k].value),
|
|
391
|
+
publish_time: values[k].timestamp,
|
|
392
|
+
});
|
|
393
|
+
}
|
|
394
|
+
} else {
|
|
395
|
+
for (let k = 0; k < values.length; k++) {
|
|
396
|
+
priceFeedUpdates.push("0x" + Buffer.from(values[k].id, "base64").toString("hex"));
|
|
397
|
+
px.push(values[k].price as PriceFeedFormat);
|
|
398
|
+
}
|
|
375
399
|
}
|
|
376
400
|
return [priceFeedUpdates, px];
|
|
377
401
|
}
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const D8X_SDK_VERSION = "1.1.
|
|
1
|
+
export const D8X_SDK_VERSION = "1.1.6";
|