@pear-protocol/symmio-client 0.3.5 → 0.3.7

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.
@@ -23,9 +23,7 @@ var SYMBOL_OVERRIDES = {
23
23
  // Add overrides here as needed for SYMM markets that don't map 1:1 to Binance
24
24
  // e.g., 'SOME_SYMM_SYMBOL': 'BINANCE_SYMBOL',
25
25
  };
26
- var UNSUPPORTED_SYMBOLS = /* @__PURE__ */ new Set([
27
- // Add symbols here that have no Binance equivalent
28
- ]);
26
+ var UNSUPPORTED_SYMBOLS = /* @__PURE__ */ new Set([]);
29
27
  function resolveBinanceSymbol(symmSymbol) {
30
28
  if (!symmSymbol || !symmSymbol.trim()) {
31
29
  return {
@@ -1161,7 +1159,8 @@ var COLLATERAL_ADDRESS = {
1161
1159
  [8453 /* BASE */]: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"
1162
1160
  };
1163
1161
  var SIGNATURE_STORE_ADDRESS = {
1164
- [42161 /* ARBITRUM */]: "0x94eEa58De1C8945c342dB4bE9670301638E403e2"
1162
+ [42161 /* ARBITRUM */]: "0x94eEa58De1C8945c342dB4bE9670301638E403e2",
1163
+ [8453 /* BASE */]: "0xC19e66D08350Eb88A41377b16C8Ab93EE0FB4996"
1165
1164
  };
1166
1165
  var DEFAULT_PARTY_B_ADDRESS = {
1167
1166
  [42161 /* ARBITRUM */]: "0x00c069d68bc7420740460DBC3cc3fFF9b3742421",
@@ -25996,17 +25995,17 @@ function useSymmHedgerMarkets(params) {
25996
25995
 
25997
25996
  // src/utils/binance-api.ts
25998
25997
  var BINANCE_FAPI_BASE = "https://fapi.binance.com";
25999
- async function fetchKlines(symbol, interval, startTime, endTime, limit = 1500) {
25998
+ async function fetchBinanceKlineEndpoint(endpoint, symbol, interval, startTime, endTime, limit = 1e3) {
26000
25999
  const params = new URLSearchParams({
26001
26000
  symbol,
26002
26001
  interval,
26003
- startTime: String(startTime),
26004
- endTime: String(endTime),
26005
- limit: String(Math.min(limit, 1500))
26002
+ limit: String(Math.min(limit, 1e3))
26006
26003
  });
26007
- const response = await fetch(`${BINANCE_FAPI_BASE}/fapi/v1/klines?${params}`);
26004
+ const response = await fetch(
26005
+ `${BINANCE_FAPI_BASE}/fapi/v1/${endpoint}?${params}`
26006
+ );
26008
26007
  if (!response.ok) {
26009
- throw new Error(`Binance klines failed: ${response.status}`);
26008
+ throw new Error(`Binance ${endpoint} failed: ${response.status}`);
26010
26009
  }
26011
26010
  const data = await response.json();
26012
26011
  return data.map((k) => ({
@@ -26019,9 +26018,21 @@ async function fetchKlines(symbol, interval, startTime, endTime, limit = 1500) {
26019
26018
  closeTime: Number(k[6])
26020
26019
  }));
26021
26020
  }
26021
+ async function fetchMarkPriceKlines(symbol, interval, _startTime, _endTime, _limit = 1e3) {
26022
+ return fetchBinanceKlineEndpoint(
26023
+ "markPriceKlines",
26024
+ symbol,
26025
+ interval,
26026
+ void 0,
26027
+ void 0,
26028
+ 1e3
26029
+ );
26030
+ }
26022
26031
  async function fetch24hrTicker(symbol) {
26023
26032
  const params = new URLSearchParams({ symbol });
26024
- const response = await fetch(`${BINANCE_FAPI_BASE}/fapi/v1/ticker/24hr?${params}`);
26033
+ const response = await fetch(
26034
+ `${BINANCE_FAPI_BASE}/fapi/v1/ticker/24hr?${params}`
26035
+ );
26025
26036
  if (!response.ok) return null;
26026
26037
  const data = await response.json();
26027
26038
  return {
@@ -26746,12 +26757,9 @@ function areIntervalsEqual(currentInterval, nextInterval) {
26746
26757
  async function fetchSymbolKlines(symbol, interval, start, end) {
26747
26758
  const binanceSymbol = toBinanceSymbol(symbol);
26748
26759
  if (!binanceSymbol) return [];
26749
- const klines = await fetchKlines(
26760
+ const klines = await fetchMarkPriceKlines(
26750
26761
  binanceSymbol,
26751
- toBinanceInterval(interval),
26752
- start,
26753
- end
26754
- );
26762
+ toBinanceInterval(interval));
26755
26763
  return klines.map((k) => ({
26756
26764
  t: k.openTime,
26757
26765
  T: k.closeTime,
@@ -26936,7 +26944,7 @@ function useSymmChartCandles(selection) {
26936
26944
  }
26937
26945
  if (longTokens.length === 1 && shortTokens.length === 0 || shortTokens.length === 1 && longTokens.length === 0) {
26938
26946
  const activeSymbol = longSymbol ?? shortSymbol;
26939
- return activeSymbol ? fetchSymbolKlines(activeSymbol, interval, start, end) : [];
26947
+ return activeSymbol ? fetchSymbolKlines(activeSymbol, interval) : [];
26940
26948
  }
26941
26949
  const allSymbols = Array.from(/* @__PURE__ */ new Set([
26942
26950
  ...longTokens.map((token) => token.symbol),
@@ -26945,7 +26953,7 @@ function useSymmChartCandles(selection) {
26945
26953
  const entries = await Promise.all(
26946
26954
  allSymbols.map(async (symbol) => [
26947
26955
  symbol,
26948
- await fetchSymbolKlines(symbol, interval, start, end)
26956
+ await fetchSymbolKlines(symbol, interval)
26949
26957
  ])
26950
26958
  );
26951
26959
  return computeWeightedBasketCandles(
@@ -26961,7 +26969,7 @@ function useSymmChartCandles(selection) {
26961
26969
  setRealtimeInterval(interval);
26962
26970
  const parts = symbol.split(" ");
26963
26971
  const assetSymbol = parts.length >= 2 ? parts.slice(1).join(" ") : symbol;
26964
- return fetchSymbolKlines(assetSymbol, interval, start, end);
26972
+ return fetchSymbolKlines(assetSymbol, interval);
26965
26973
  },
26966
26974
  [setRealtimeInterval]
26967
26975
  );
@@ -26974,7 +26982,7 @@ function useSymmChartCandles(selection) {
26974
26982
  if (!longSymbol && !shortSymbol) return [];
26975
26983
  const symbols = [longSymbol, shortSymbol].filter(Boolean);
26976
26984
  const allKlines = await Promise.all(
26977
- symbols.map((s) => fetchSymbolKlines(s, interval, start, end))
26985
+ symbols.map((s) => fetchSymbolKlines(s, interval))
26978
26986
  );
26979
26987
  if (allKlines.length === 0 || allKlines[0].length === 0) return [];
26980
26988
  if (allKlines.length === 1) {