@pear-protocol/symmio-client 0.3.5 → 0.3.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/react/index.js +26 -19
- package/dist/react/index.js.map +1 -1
- package/dist/react/index.mjs +26 -19
- package/dist/react/index.mjs.map +1 -1
- package/dist/react/provider.js +1 -3
- package/dist/react/provider.js.map +1 -1
- package/dist/react/provider.mjs +1 -3
- package/dist/react/provider.mjs.map +1 -1
- package/package.json +1 -1
package/dist/react/index.mjs
CHANGED
|
@@ -21,9 +21,7 @@ var SYMBOL_OVERRIDES = {
|
|
|
21
21
|
// Add overrides here as needed for SYMM markets that don't map 1:1 to Binance
|
|
22
22
|
// e.g., 'SOME_SYMM_SYMBOL': 'BINANCE_SYMBOL',
|
|
23
23
|
};
|
|
24
|
-
var UNSUPPORTED_SYMBOLS = /* @__PURE__ */ new Set([
|
|
25
|
-
// Add symbols here that have no Binance equivalent
|
|
26
|
-
]);
|
|
24
|
+
var UNSUPPORTED_SYMBOLS = /* @__PURE__ */ new Set([]);
|
|
27
25
|
function resolveBinanceSymbol(symmSymbol) {
|
|
28
26
|
if (!symmSymbol || !symmSymbol.trim()) {
|
|
29
27
|
return {
|
|
@@ -25994,17 +25992,17 @@ function useSymmHedgerMarkets(params) {
|
|
|
25994
25992
|
|
|
25995
25993
|
// src/utils/binance-api.ts
|
|
25996
25994
|
var BINANCE_FAPI_BASE = "https://fapi.binance.com";
|
|
25997
|
-
async function
|
|
25995
|
+
async function fetchBinanceKlineEndpoint(endpoint, symbol, interval, startTime, endTime, limit = 1e3) {
|
|
25998
25996
|
const params = new URLSearchParams({
|
|
25999
25997
|
symbol,
|
|
26000
25998
|
interval,
|
|
26001
|
-
|
|
26002
|
-
endTime: String(endTime),
|
|
26003
|
-
limit: String(Math.min(limit, 1500))
|
|
25999
|
+
limit: String(Math.min(limit, 1e3))
|
|
26004
26000
|
});
|
|
26005
|
-
const response = await fetch(
|
|
26001
|
+
const response = await fetch(
|
|
26002
|
+
`${BINANCE_FAPI_BASE}/fapi/v1/${endpoint}?${params}`
|
|
26003
|
+
);
|
|
26006
26004
|
if (!response.ok) {
|
|
26007
|
-
throw new Error(`Binance
|
|
26005
|
+
throw new Error(`Binance ${endpoint} failed: ${response.status}`);
|
|
26008
26006
|
}
|
|
26009
26007
|
const data = await response.json();
|
|
26010
26008
|
return data.map((k) => ({
|
|
@@ -26017,9 +26015,21 @@ async function fetchKlines(symbol, interval, startTime, endTime, limit = 1500) {
|
|
|
26017
26015
|
closeTime: Number(k[6])
|
|
26018
26016
|
}));
|
|
26019
26017
|
}
|
|
26018
|
+
async function fetchMarkPriceKlines(symbol, interval, _startTime, _endTime, _limit = 1e3) {
|
|
26019
|
+
return fetchBinanceKlineEndpoint(
|
|
26020
|
+
"markPriceKlines",
|
|
26021
|
+
symbol,
|
|
26022
|
+
interval,
|
|
26023
|
+
void 0,
|
|
26024
|
+
void 0,
|
|
26025
|
+
1e3
|
|
26026
|
+
);
|
|
26027
|
+
}
|
|
26020
26028
|
async function fetch24hrTicker(symbol) {
|
|
26021
26029
|
const params = new URLSearchParams({ symbol });
|
|
26022
|
-
const response = await fetch(
|
|
26030
|
+
const response = await fetch(
|
|
26031
|
+
`${BINANCE_FAPI_BASE}/fapi/v1/ticker/24hr?${params}`
|
|
26032
|
+
);
|
|
26023
26033
|
if (!response.ok) return null;
|
|
26024
26034
|
const data = await response.json();
|
|
26025
26035
|
return {
|
|
@@ -26744,12 +26754,9 @@ function areIntervalsEqual(currentInterval, nextInterval) {
|
|
|
26744
26754
|
async function fetchSymbolKlines(symbol, interval, start, end) {
|
|
26745
26755
|
const binanceSymbol = toBinanceSymbol(symbol);
|
|
26746
26756
|
if (!binanceSymbol) return [];
|
|
26747
|
-
const klines = await
|
|
26757
|
+
const klines = await fetchMarkPriceKlines(
|
|
26748
26758
|
binanceSymbol,
|
|
26749
|
-
toBinanceInterval(interval)
|
|
26750
|
-
start,
|
|
26751
|
-
end
|
|
26752
|
-
);
|
|
26759
|
+
toBinanceInterval(interval));
|
|
26753
26760
|
return klines.map((k) => ({
|
|
26754
26761
|
t: k.openTime,
|
|
26755
26762
|
T: k.closeTime,
|
|
@@ -26934,7 +26941,7 @@ function useSymmChartCandles(selection) {
|
|
|
26934
26941
|
}
|
|
26935
26942
|
if (longTokens.length === 1 && shortTokens.length === 0 || shortTokens.length === 1 && longTokens.length === 0) {
|
|
26936
26943
|
const activeSymbol = longSymbol ?? shortSymbol;
|
|
26937
|
-
return activeSymbol ? fetchSymbolKlines(activeSymbol, interval
|
|
26944
|
+
return activeSymbol ? fetchSymbolKlines(activeSymbol, interval) : [];
|
|
26938
26945
|
}
|
|
26939
26946
|
const allSymbols = Array.from(/* @__PURE__ */ new Set([
|
|
26940
26947
|
...longTokens.map((token) => token.symbol),
|
|
@@ -26943,7 +26950,7 @@ function useSymmChartCandles(selection) {
|
|
|
26943
26950
|
const entries = await Promise.all(
|
|
26944
26951
|
allSymbols.map(async (symbol) => [
|
|
26945
26952
|
symbol,
|
|
26946
|
-
await fetchSymbolKlines(symbol, interval
|
|
26953
|
+
await fetchSymbolKlines(symbol, interval)
|
|
26947
26954
|
])
|
|
26948
26955
|
);
|
|
26949
26956
|
return computeWeightedBasketCandles(
|
|
@@ -26959,7 +26966,7 @@ function useSymmChartCandles(selection) {
|
|
|
26959
26966
|
setRealtimeInterval(interval);
|
|
26960
26967
|
const parts = symbol.split(" ");
|
|
26961
26968
|
const assetSymbol = parts.length >= 2 ? parts.slice(1).join(" ") : symbol;
|
|
26962
|
-
return fetchSymbolKlines(assetSymbol, interval
|
|
26969
|
+
return fetchSymbolKlines(assetSymbol, interval);
|
|
26963
26970
|
},
|
|
26964
26971
|
[setRealtimeInterval]
|
|
26965
26972
|
);
|
|
@@ -26972,7 +26979,7 @@ function useSymmChartCandles(selection) {
|
|
|
26972
26979
|
if (!longSymbol && !shortSymbol) return [];
|
|
26973
26980
|
const symbols = [longSymbol, shortSymbol].filter(Boolean);
|
|
26974
26981
|
const allKlines = await Promise.all(
|
|
26975
|
-
symbols.map((s) => fetchSymbolKlines(s, interval
|
|
26982
|
+
symbols.map((s) => fetchSymbolKlines(s, interval))
|
|
26976
26983
|
);
|
|
26977
26984
|
if (allKlines.length === 0 || allKlines[0].length === 0) return [];
|
|
26978
26985
|
if (allKlines.length === 1) {
|