@scallop-io/sui-scallop-sdk 1.4.1-alpha.1 → 1.4.11

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/index.mjs CHANGED
@@ -23,10 +23,9 @@ var COIN_GECKGO_IDS = {
23
23
  afsui: "sui",
24
24
  hasui: "sui",
25
25
  vsui: "sui",
26
- sca: "scallop-2"
27
- // TODO: enable for production
28
- // deep: 'deepbook',
29
- // fud: 'fud-the-pug',
26
+ sca: "scallop-2",
27
+ deep: "deepbook",
28
+ fud: "fud-the-pug"
30
29
  };
31
30
 
32
31
  // src/constants/common.ts
@@ -55,10 +54,9 @@ var SUPPORT_POOLS = [
55
54
  "afsui",
56
55
  "hasui",
57
56
  "vsui",
58
- "sca"
59
- // TODO: enable for production
60
- // 'fud',
61
- // 'deep',
57
+ "sca",
58
+ "fud",
59
+ "deep"
62
60
  ];
63
61
  var SUPPORT_COLLATERALS = [
64
62
  "usdc",
@@ -102,10 +100,9 @@ var SUPPORT_SCOIN = [
102
100
  "ssca",
103
101
  "scetus",
104
102
  "swsol",
105
- "swbtc"
106
- // TODO: enable for production
107
- // 'sdeep',
108
- // 'sfud',
103
+ "swbtc",
104
+ "sdeep",
105
+ "sfud"
109
106
  ];
110
107
  var SUPPORT_SUI_BRIDGE = ["sbeth"];
111
108
  var SUPPORT_WORMHOLE = [
@@ -165,9 +162,8 @@ var coinDecimals = {
165
162
  hasui: 9,
166
163
  vsui: 9,
167
164
  sca: 9,
168
- // TODO: enable for production
169
- // deep: 6,
170
- // fud: 5,
165
+ deep: 6,
166
+ fud: 5,
171
167
  susdc: 6,
172
168
  sweth: 8,
173
169
  ssbeth: 8,
@@ -181,10 +177,9 @@ var coinDecimals = {
181
177
  safsui: 9,
182
178
  shasui: 9,
183
179
  svsui: 9,
184
- ssca: 9
185
- // TODO: enable for production
186
- // sdeep: 6,
187
- // sfud: 5,
180
+ ssca: 9,
181
+ sdeep: 6,
182
+ sfud: 5
188
183
  };
189
184
  var assetCoins = {
190
185
  usdc: "usdc",
@@ -200,10 +195,9 @@ var assetCoins = {
200
195
  afsui: "afsui",
201
196
  hasui: "hasui",
202
197
  vsui: "vsui",
203
- sca: "sca"
204
- // TODO: enable for production
205
- // deep: 'deep',
206
- // fud: 'fud',
198
+ sca: "sca",
199
+ deep: "deep",
200
+ fud: "fud"
207
201
  };
208
202
  var marketCoins = {
209
203
  susdc: "susdc",
@@ -219,10 +213,9 @@ var marketCoins = {
219
213
  safsui: "safsui",
220
214
  shasui: "shasui",
221
215
  svsui: "svsui",
222
- ssca: "ssca"
223
- // TODO: enable for production
224
- // sdeep: 'sdeep',
225
- // sfud: 'sfud',
216
+ ssca: "ssca",
217
+ sdeep: "sdeep",
218
+ sfud: "sfud"
226
219
  };
227
220
  var sCoins = {
228
221
  susdc: "susdc",
@@ -237,10 +230,9 @@ var sCoins = {
237
230
  svsui: "svsui",
238
231
  ssca: "ssca",
239
232
  swsol: "swsol",
240
- swbtc: "swbtc"
241
- // TODO: enable for production
242
- // sfud: 'sfud',
243
- // sdeep: 'sdeep',
233
+ swbtc: "swbtc",
234
+ sfud: "sfud",
235
+ sdeep: "sdeep"
244
236
  };
245
237
  var stakeMarketCoins = {
246
238
  susdc: "susdc",
@@ -281,10 +273,10 @@ var coinIds = {
281
273
  afsui: "0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc",
282
274
  hasui: "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d",
283
275
  vsui: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55",
284
- sca: IS_VE_SCA_TEST ? "0x6cd813061a3adf3602b76545f076205f0c8e7ec1d3b1eab9a1da7992c18c0524" : "0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6"
276
+ sca: IS_VE_SCA_TEST ? "0x6cd813061a3adf3602b76545f076205f0c8e7ec1d3b1eab9a1da7992c18c0524" : "0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6",
285
277
  // isolated assets
286
- // deep: '0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270',
287
- // fud: '0x76cb819b01abed502bee8a702b4c2d547532c12f25001c9dea795a5e631c26f1',
278
+ deep: "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270",
279
+ fud: "0x76cb819b01abed502bee8a702b4c2d547532c12f25001c9dea795a5e631c26f1"
288
280
  };
289
281
  var wormholeCoinIds = {
290
282
  weth: "0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5",
@@ -300,28 +292,19 @@ var voloCoinIds = {
300
292
  var sCoinIds = {
301
293
  susdc: "0x854950aa624b1df59fe64e630b2ba7c550642e9342267a33061d59fb31582da5::scallop_usdc::SCALLOP_USDC",
302
294
  ssbeth: "0xb14f82d8506d139eacef109688d1b71e7236bcce9b2c0ad526abcd6aa5be7de0::scallop_sb_eth::SCALLOP_SB_ETH",
303
- // prod values
304
- // ssui: '0xaafc4f740de0dd0dde642a31148fb94517087052f19afb0f7bed1dc41a50c77b::scallop_sui::SCALLOP_SUI',
305
- // swusdc:
306
- // '0xad4d71551d31092230db1fd482008ea42867dbf27b286e9c70a79d2a6191d58d::scallop_wormhole_usdc::SCALLOP_WORMHOLE_USDC',
307
- // swusdt:
308
- // '0xe6e5a012ec20a49a3d1d57bd2b67140b96cd4d3400b9d79e541f7bdbab661f95::scallop_wormhole_usdt::SCALLOP_WORMHOLE_USDT',
309
- // ssca: '0x5ca17430c1d046fae9edeaa8fd76c7b4193a00d764a0ecfa9418d733ad27bc1e::scallop_sca::SCALLOP_SCA',
310
- // test values
311
- ssui: "0xf569919046f19a0c40b519ecfbb6ca0319698cd5908716c29b62ef56541f298b::scallop_sui::SCALLOP_SUI",
312
- swusdt: "0xac781d9f73058ff5e69f9bf8dde32f2e8c71c66d7fe8497fc83b2d9182254b22::scallop_wormhole_usdt::SCALLOP_WORMHOLE_USDT",
313
- swusdc: "0xf5447c4305a486d8c8557559887c2c39449ddb5e748f15d33946d02a1663c158::scallop_wormhole_usdc::SCALLOP_WORMHOLE_USDC",
314
- ssca: "0x958428555e778e55918a59eb1c92c77f32b5c554fa3a5e56cd0815086b5072e7::scallop_sca::SCALLOP_SCA",
295
+ ssui: "0xaafc4f740de0dd0dde642a31148fb94517087052f19afb0f7bed1dc41a50c77b::scallop_sui::SCALLOP_SUI",
296
+ swusdc: "0xad4d71551d31092230db1fd482008ea42867dbf27b286e9c70a79d2a6191d58d::scallop_wormhole_usdc::SCALLOP_WORMHOLE_USDC",
297
+ swusdt: "0xe6e5a012ec20a49a3d1d57bd2b67140b96cd4d3400b9d79e541f7bdbab661f95::scallop_wormhole_usdt::SCALLOP_WORMHOLE_USDT",
298
+ ssca: "0x5ca17430c1d046fae9edeaa8fd76c7b4193a00d764a0ecfa9418d733ad27bc1e::scallop_sca::SCALLOP_SCA",
315
299
  scetus: "0xea346ce428f91ab007210443efcea5f5cdbbb3aae7e9affc0ca93f9203c31f0c::scallop_cetus::SCALLOP_CETUS",
316
300
  sweth: "0x67540ceb850d418679e69f1fb6b2093d6df78a2a699ffc733f7646096d552e9b::scallop_wormhole_eth::SCALLOP_WORMHOLE_ETH",
317
301
  safsui: "0x00671b1fa2a124f5be8bdae8b91ee711462c5d9e31bda232e70fd9607b523c88::scallop_af_sui::SCALLOP_AF_SUI",
318
302
  shasui: "0x9a2376943f7d22f88087c259c5889925f332ca4347e669dc37d54c2bf651af3c::scallop_ha_sui::SCALLOP_HA_SUI",
319
303
  svsui: "0xe1a1cc6bcf0001a015eab84bcc6713393ce20535f55b8b6f35c142e057a25fbe::scallop_v_sui::SCALLOP_V_SUI",
320
304
  swsol: "0x1392650f2eca9e3f6ffae3ff89e42a3590d7102b80e2b430f674730bc30d3259::scallop_wormhole_sol::SCALLOP_WORMHOLE_SOL",
321
- swbtc: "0x2cf76a9cf5d3337961d1154283234f94da2dcff18544dfe5cbdef65f319591b5::scallop_wormhole_btc::SCALLOP_WORMHOLE_BTC"
322
- // sdeep:
323
- // '0xeb7a05a3224837c5e5503575aed0be73c091d1ce5e43aa3c3e716e0ae614608f::scallop_deep::SCALLOP_DEEP',
324
- // sfud: '0xe56d5167f427cbe597da9e8150ef5c337839aaf46891d62468dcf80bdd8e10d1::scallop_fud::SCALLOP_FUD',
305
+ swbtc: "0x2cf76a9cf5d3337961d1154283234f94da2dcff18544dfe5cbdef65f319591b5::scallop_wormhole_btc::SCALLOP_WORMHOLE_BTC",
306
+ sdeep: "0xeb7a05a3224837c5e5503575aed0be73c091d1ce5e43aa3c3e716e0ae614608f::scallop_deep::SCALLOP_DEEP",
307
+ sfud: "0xe56d5167f427cbe597da9e8150ef5c337839aaf46891d62468dcf80bdd8e10d1::scallop_fud::SCALLOP_FUD"
325
308
  };
326
309
  var sCoinTypeToName = Object.entries(sCoinIds).reduce(
327
310
  (acc, [coinName, coinType]) => {
@@ -411,16 +394,13 @@ var POOL_ADDRESSES = {
411
394
  sca: {
412
395
  lendingPoolAddress: "0x6fc7d4211fc7018b6c75e7b908b88f2e0536443239804a3d32af547637bd28d7",
413
396
  collateralPoolAddress: "0xff677a5d9e9dc8f08f0a8681ebfc7481d1c7d57bc441f2881974adcdd7b13c31"
397
+ },
398
+ fud: {
399
+ lendingPoolAddress: "0x14367ddca30e2860cb89ed4eaca20c7ece260c5d59dd9990d2c85a8321326acb"
400
+ },
401
+ deep: {
402
+ lendingPoolAddress: "0xf4a67ffb43da1e1c61c049f188f19463ea8dbbf2d5ef4722d6df854ff1b1cc03"
414
403
  }
415
- // TODO: enable for production
416
- // fud: {
417
- // lendingPoolAddress:
418
- // '0x14367ddca30e2860cb89ed4eaca20c7ece260c5d59dd9990d2c85a8321326acb',
419
- // },
420
- // deep: {
421
- // lendingPoolAddress:
422
- // '0xf4a67ffb43da1e1c61c049f188f19463ea8dbbf2d5ef4722d6df854ff1b1cc03',
423
- // },
424
404
  };
425
405
 
426
406
  // src/constants/pyth.ts
@@ -442,10 +422,9 @@ var PYTH_FEED_IDS = {
442
422
  afsui: "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744",
443
423
  hasui: "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744",
444
424
  vsui: "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744",
445
- sca: "7e17f0ac105abe9214deb9944c30264f5986bf292869c6bd8e8da3ccd92d79bc"
446
- // TODO: enable for production
447
- // deep: '29bdd5248234e33bd93d3b81100b5fa32eaa5997843847e2c2cb16d7c6d9f7ff',
448
- // fud: '6a4090703da959247727f2b490eb21aea95c8684ecfac675f432008830890c75',
425
+ sca: "7e17f0ac105abe9214deb9944c30264f5986bf292869c6bd8e8da3ccd92d79bc",
426
+ deep: "29bdd5248234e33bd93d3b81100b5fa32eaa5997843847e2c2cb16d7c6d9f7ff",
427
+ fud: "6a4090703da959247727f2b490eb21aea95c8684ecfac675f432008830890c75"
449
428
  };
450
429
 
451
430
  // src/constants/queryKeys.ts
@@ -745,6 +724,32 @@ var TEST_ADDRESSES = {
745
724
  feedObject: "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab"
746
725
  }
747
726
  }
727
+ },
728
+ deep: {
729
+ id: "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270",
730
+ metaData: "0x6e60b051a08fa836f5a7acd7c464c8d9825bc29c44657fe170fe9b8e1e4770c0",
731
+ treasury: "",
732
+ oracle: {
733
+ supra: "",
734
+ switchboard: "",
735
+ pyth: {
736
+ feed: "29bdd5248234e33bd93d3b81100b5fa32eaa5997843847e2c2cb16d7c6d9f7ff",
737
+ feedObject: "0x8c7f3a322b94cc69db2a2ac575cbd94bf5766113324c3a3eceac91e3e88a51ed"
738
+ }
739
+ }
740
+ },
741
+ fud: {
742
+ id: "0x76cb819b01abed502bee8a702b4c2d547532c12f25001c9dea795a5e631c26f1",
743
+ metaData: "0x01087411ef48aaac1eb6e24803213e3a60a03b147dac930e5e341f17a85e524e",
744
+ treasury: "",
745
+ oracle: {
746
+ supra: "",
747
+ switchboard: "",
748
+ pyth: {
749
+ feed: "6a4090703da959247727f2b490eb21aea95c8684ecfac675f432008830890c75",
750
+ feedObject: "0x4531c3ed0d22f21f5fce882905372006c9aafa30f01db03b789e95a6c50de7b2"
751
+ }
752
+ }
748
753
  }
749
754
  },
750
755
  oracles: {
@@ -964,14 +969,22 @@ var TEST_ADDRESSES = {
964
969
  ssbeth: {
965
970
  coinType: "0xb14f82d8506d139eacef109688d1b71e7236bcce9b2c0ad526abcd6aa5be7de0::scallop_sb_eth::SCALLOP_SB_ETH",
966
971
  treasury: "0xfd0f02def6358a1f266acfa1493d4707ee8387460d434fb667d63d755ff907ed"
972
+ },
973
+ sdeep: {
974
+ coinType: "0xeb7a05a3224837c5e5503575aed0be73c091d1ce5e43aa3c3e716e0ae614608f::scallop_deep::SCALLOP_DEEP",
975
+ treasury: "0xc63838fabe37b25ad897392d89876d920f5e0c6a406bf3abcb84753d2829bc88"
976
+ },
977
+ sfud: {
978
+ coinType: "0xe56d5167f427cbe597da9e8150ef5c337839aaf46891d62468dcf80bdd8e10d1::scallop_fud::SCALLOP_FUD",
979
+ treasury: "0xf25212f11d182decff7a86165699a73e3d5787aced203ca539f43cfbc10db867"
967
980
  }
968
981
  }
969
982
  }
970
983
  };
971
984
 
972
985
  // src/constants/tokenBucket.ts
973
- var DEFAULT_TOKENS_PER_INTERVAL = 50;
974
- var DEFAULT_INTERVAL_IN_MS = 100;
986
+ var DEFAULT_TOKENS_PER_INTERVAL = 10;
987
+ var DEFAULT_INTERVAL_IN_MS = 50;
975
988
 
976
989
  // src/constants/vesca.ts
977
990
  var UNLOCK_ROUND_DURATION = 60 * 60 * 24;
@@ -1359,9 +1372,12 @@ var parseOriginBorrowIncentivePoolData = (originBorrowIncentivePoolData) => {
1359
1372
  poolPoints: originBorrowIncentivePoolData.points.reduce(
1360
1373
  (acc, point) => {
1361
1374
  const parsed = parseOriginBorrowIncentivesPoolPointData(point);
1362
- const name = parseStructTag(
1375
+ let name = parseStructTag(
1363
1376
  parsed.pointType
1364
1377
  ).name.toLowerCase();
1378
+ if (sCoinRawNameToName[name]) {
1379
+ name = sCoinRawNameToName[name];
1380
+ }
1365
1381
  acc[name] = parsed;
1366
1382
  return acc;
1367
1383
  },
@@ -1560,10 +1576,10 @@ var TokenBucket = class {
1560
1576
  refill() {
1561
1577
  const now = Date.now();
1562
1578
  const elapsed = now - this.lastRefill;
1563
- if (elapsed > this.interval) {
1579
+ if (elapsed >= this.interval) {
1564
1580
  const tokensToAdd = Math.floor(elapsed / this.interval) * this.tokensPerInterval;
1565
1581
  this.tokens = Math.min(this.tokens + tokensToAdd, this.tokensPerInterval);
1566
- this.lastRefill = now;
1582
+ this.lastRefill += Math.floor(elapsed / this.interval) * this.interval;
1567
1583
  }
1568
1584
  }
1569
1585
  removeTokens(count) {
@@ -1579,26 +1595,12 @@ var callWithRateLimit = async (tokenBucket, fn, retryDelayInMs = DEFAULT_INTERVA
1579
1595
  let retries = 0;
1580
1596
  const tryRequest = async () => {
1581
1597
  if (tokenBucket.removeTokens(1)) {
1582
- try {
1583
- const result = await fn();
1584
- if (result && result.status === 429) {
1585
- throw new Error("Unexpected status code: 429");
1586
- }
1587
- return result;
1588
- } catch (error) {
1589
- if (error.message === "Unexpected status code: 429" && retries < maxRetries) {
1590
- retries++;
1591
- const delay = retryDelayInMs * Math.pow(backoffFactor, retries);
1592
- await new Promise((resolve) => setTimeout(resolve, delay));
1593
- return tryRequest();
1594
- } else {
1595
- console.error("An error occurred:", error.message);
1596
- return null;
1597
- }
1598
- }
1598
+ const result = await fn();
1599
+ return result;
1599
1600
  } else if (retries < maxRetries) {
1600
1601
  retries++;
1601
1602
  const delay = retryDelayInMs * Math.pow(backoffFactor, retries);
1603
+ console.error(`Rate limit exceeded, retrying in ${delay} ms`);
1602
1604
  await new Promise((resolve) => setTimeout(resolve, delay));
1603
1605
  return tryRequest();
1604
1606
  } else {
@@ -1682,11 +1684,13 @@ var ScallopCache = class {
1682
1684
  const txBlock = new SuiTxBlock();
1683
1685
  txBlock.moveCall(queryTarget, args, typeArgs);
1684
1686
  const query = await this.queryClient.fetchQuery({
1687
+ retry: 5,
1688
+ retryDelay: 1e3,
1685
1689
  queryKey: queryKeys.rpc.getInspectTxn(queryTarget, args, typeArgs),
1686
1690
  queryFn: async () => {
1687
1691
  return await callWithRateLimit(
1688
1692
  this.tokenBucket,
1689
- () => this.suiKit.inspectTxn(txBlock)
1693
+ async () => await this.suiKit.inspectTxn(txBlock)
1690
1694
  );
1691
1695
  }
1692
1696
  });
@@ -1700,11 +1704,13 @@ var ScallopCache = class {
1700
1704
  */
1701
1705
  async queryGetObject(objectId, options) {
1702
1706
  return this.queryClient.fetchQuery({
1707
+ retry: 5,
1708
+ retryDelay: 1e3,
1703
1709
  queryKey: queryKeys.rpc.getObject(objectId, this.walletAddress, options),
1704
1710
  queryFn: async () => {
1705
1711
  return await callWithRateLimit(
1706
1712
  this.tokenBucket,
1707
- () => this.client.getObject({
1713
+ async () => await this.client.getObject({
1708
1714
  id: objectId,
1709
1715
  options
1710
1716
  })
@@ -1723,6 +1729,8 @@ var ScallopCache = class {
1723
1729
  if (objectIds.length === 0)
1724
1730
  return [];
1725
1731
  return this.queryClient.fetchQuery({
1732
+ retry: 5,
1733
+ retryDelay: 1e3,
1726
1734
  queryKey: queryKeys.rpc.getObjects(
1727
1735
  objectIds,
1728
1736
  this.walletAddress,
@@ -1731,7 +1739,7 @@ var ScallopCache = class {
1731
1739
  queryFn: async () => {
1732
1740
  return await callWithRateLimit(
1733
1741
  this.tokenBucket,
1734
- () => this.suiKit.getObjects(objectIds, options)
1742
+ async () => await this.suiKit.getObjects(objectIds, options)
1735
1743
  );
1736
1744
  }
1737
1745
  });
@@ -1743,28 +1751,34 @@ var ScallopCache = class {
1743
1751
  */
1744
1752
  async queryGetOwnedObjects(input) {
1745
1753
  return this.queryClient.fetchQuery({
1754
+ retry: 5,
1755
+ retryDelay: 1e3,
1746
1756
  queryKey: queryKeys.rpc.getOwnedObjects(input),
1747
1757
  queryFn: async () => {
1748
1758
  return await callWithRateLimit(
1749
1759
  this.tokenBucket,
1750
- () => this.client.getOwnedObjects(input)
1760
+ async () => await this.client.getOwnedObjects(input)
1751
1761
  );
1752
1762
  }
1753
1763
  });
1754
1764
  }
1755
1765
  async queryGetDynamicFields(input) {
1756
1766
  return this.queryClient.fetchQuery({
1767
+ retry: 5,
1768
+ retryDelay: 1e3,
1757
1769
  queryKey: queryKeys.rpc.getDynamicFields(input),
1758
1770
  queryFn: async () => {
1759
1771
  return await callWithRateLimit(
1760
1772
  this.tokenBucket,
1761
- () => this.client.getDynamicFields(input)
1773
+ async () => await this.client.getDynamicFields(input)
1762
1774
  );
1763
1775
  }
1764
1776
  });
1765
1777
  }
1766
1778
  async queryGetDynamicFieldObject(input) {
1767
1779
  return this.queryClient.fetchQuery({
1780
+ retry: 5,
1781
+ retryDelay: (attemptIndex) => Math.min(1e3 * attemptIndex, 8e3),
1768
1782
  queryKey: queryKeys.rpc.getDynamicFieldObject(input),
1769
1783
  queryFn: async () => {
1770
1784
  return await callWithRateLimit(
@@ -1776,11 +1790,13 @@ var ScallopCache = class {
1776
1790
  }
1777
1791
  async queryGetAllCoinBalances(owner) {
1778
1792
  return this.queryClient.fetchQuery({
1793
+ retry: 5,
1794
+ retryDelay: 1e3,
1779
1795
  queryKey: queryKeys.rpc.getAllCoinBalances(owner),
1780
1796
  queryFn: async () => {
1781
1797
  const allBalances = await callWithRateLimit(
1782
1798
  this.tokenBucket,
1783
- () => this.client.getAllBalances({ owner })
1799
+ async () => await this.client.getAllBalances({ owner })
1784
1800
  );
1785
1801
  if (!allBalances)
1786
1802
  return {};
@@ -2493,7 +2509,7 @@ var getBorrowIncentivePools = async (query, borrowIncentiveCoinNames = [
2493
2509
  ...SUPPORT_BORROW_INCENTIVE_POOLS
2494
2510
  ], indexer = false, marketPools, coinPrices) => {
2495
2511
  const borrowIncentivePools = {};
2496
- marketPools = marketPools ?? await query.getMarketPools(void 0, { indexer, coinPrices });
2512
+ marketPools = marketPools ?? await query.getMarketPools(void 0, { coinPrices, indexer });
2497
2513
  coinPrices = coinPrices ?? await query.getAllCoinPrices({ marketPools });
2498
2514
  if (indexer) {
2499
2515
  const borrowIncentivePoolsIndexer = await query.indexer.getBorrowIncentivePools();
@@ -2685,7 +2701,7 @@ var supplyLimitZod = zod.object({
2685
2701
  value: zod.string()
2686
2702
  })
2687
2703
  });
2688
- var supplyLimitKeyType = `0x6c23585e940a989588432509107e98bae06dbca4e333f26d0635d401b3c7c76d::market_dynamic_keys::SupplyLimitKey`;
2704
+ var supplyLimitKeyType = `0x6e641f0dca8aedab3101d047e96439178f16301bf0b57fe8745086ff1195eb3e::market_dynamic_keys::SupplyLimitKey`;
2689
2705
  var getSupplyLimit = async (utils, poolName) => {
2690
2706
  try {
2691
2707
  const poolCoinType = utils.parseCoinType(poolName).slice(2);
@@ -2725,7 +2741,7 @@ var isolatedAssetZod = zod2.object({
2725
2741
  value: zod2.boolean()
2726
2742
  })
2727
2743
  });
2728
- var isolatedAssetKeyType = `0x6c23585e940a989588432509107e98bae06dbca4e333f26d0635d401b3c7c76d::market_dynamic_keys::IsolatedAssetKey`;
2744
+ var isolatedAssetKeyType = `0xe7dbb371a9595631f7964b7ece42255ad0e738cc85fe6da26c7221b220f01af6::market_dynamic_keys::IsolatedAssetKey`;
2729
2745
  var getIsolatedAssets = async (address) => {
2730
2746
  try {
2731
2747
  const marketObject = address.get("core.market");
@@ -2805,7 +2821,7 @@ var borrowLimitZod = zod3.object({
2805
2821
  value: zod3.string()
2806
2822
  })
2807
2823
  });
2808
- var borrowLimitKeyType = `0xb784ea287d944e478a3ceaa071f8885072cce6b7224cf245914dc2f9963f460e::market_dynamic_keys::BorrowLimitKey`;
2824
+ var borrowLimitKeyType = `0xe7dbb371a9595631f7964b7ece42255ad0e738cc85fe6da26c7221b220f01af6::market_dynamic_keys::BorrowLimitKey`;
2809
2825
  var getBorrowLimit = async (utils, poolName) => {
2810
2826
  try {
2811
2827
  const poolCoinType = utils.parseCoinType(poolName).slice(2);
@@ -3705,7 +3721,8 @@ var getObligationAccount = async (query, obligationId, ownerAddress, indexer = f
3705
3721
  query.queryObligation(obligationId),
3706
3722
  query.getBorrowIncentivePools(void 0, {
3707
3723
  coinPrices,
3708
- indexer
3724
+ indexer,
3725
+ marketPools: market.pools
3709
3726
  }),
3710
3727
  query.getBorrowIncentiveAccounts(obligationId)
3711
3728
  ]);
@@ -5099,7 +5116,7 @@ var ScallopUtils = class {
5099
5116
  );
5100
5117
  const priceIds = priceIdPairs.map(([_2, priceId]) => priceId);
5101
5118
  const pythConnection = new SuiPriceServiceConnection(endpoint, {
5102
- timeout: 2e3
5119
+ timeout: 4e3
5103
5120
  });
5104
5121
  try {
5105
5122
  const feeds = await this.cache.queryClient.fetchQuery({