@scallop-io/sui-scallop-sdk 1.4.22-alpha.1 → 1.4.23

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
@@ -13,6 +13,7 @@ var COIN_GECKGO_IDS = {
13
13
  usdc: "usdc",
14
14
  sbeth: "ethereum",
15
15
  sbusdt: "tether",
16
+ sbwbtc: "bitcoin",
16
17
  weth: "ethereum",
17
18
  wbtc: "bitcoin",
18
19
  wusdc: "usdc",
@@ -48,6 +49,8 @@ var SUPPORT_POOLS = [
48
49
  // sui bridge ETH
49
50
  "sbusdt",
50
51
  // sui bridge USDT
52
+ "sbwbtc",
53
+ // sui bridge WBTC
51
54
  "weth",
52
55
  "wbtc",
53
56
  "wusdc",
@@ -72,6 +75,8 @@ var SUPPORT_COLLATERALS = [
72
75
  // sui bridge ETH
73
76
  "sbusdt",
74
77
  // sui bridge USDT
78
+ "sbwbtc",
79
+ // sui bridge WBTC
75
80
  "weth",
76
81
  "wbtc",
77
82
  "wusdc",
@@ -101,6 +106,7 @@ var SUPPORT_SCOIN = [
101
106
  "susdc",
102
107
  "ssbeth",
103
108
  "ssbusdt",
109
+ "ssbwbtc",
104
110
  "ssui",
105
111
  "swusdc",
106
112
  "swusdt",
@@ -117,7 +123,7 @@ var SUPPORT_SCOIN = [
117
123
  "sfdusd",
118
124
  "sblub"
119
125
  ];
120
- var SUPPORT_SUI_BRIDGE = ["sbeth", "sbusdt"];
126
+ var SUPPORT_SUI_BRIDGE = ["sbeth", "sbusdt", "sbwbtc"];
121
127
  var SUPPORT_WORMHOLE = [
122
128
  "wusdc",
123
129
  "wusdt",
@@ -153,6 +159,7 @@ var coinDecimals = {
153
159
  usdc: 6,
154
160
  sbeth: 8,
155
161
  sbusdt: 6,
162
+ sbwbtc: 8,
156
163
  weth: 8,
157
164
  wbtc: 8,
158
165
  wusdc: 6,
@@ -173,6 +180,7 @@ var coinDecimals = {
173
180
  sweth: 8,
174
181
  ssbeth: 8,
175
182
  ssbusdt: 6,
183
+ ssbwbtc: 8,
176
184
  swbtc: 8,
177
185
  swusdc: 6,
178
186
  swusdt: 6,
@@ -193,6 +201,7 @@ var assetCoins = {
193
201
  usdc: "usdc",
194
202
  sbeth: "sbeth",
195
203
  sbusdt: "sbusdt",
204
+ sbwbtc: "sbwbtc",
196
205
  weth: "weth",
197
206
  wbtc: "wbtc",
198
207
  wusdc: "wusdc",
@@ -214,6 +223,7 @@ var marketCoins = {
214
223
  susdc: "susdc",
215
224
  ssbeth: "ssbeth",
216
225
  ssbusdt: "ssbusdt",
226
+ ssbwbtc: "ssbwbtc",
217
227
  sweth: "sweth",
218
228
  swbtc: "swbtc",
219
229
  swusdc: "swusdc",
@@ -238,6 +248,7 @@ var sCoins = {
238
248
  sweth: "sweth",
239
249
  swusdc: "swusdc",
240
250
  swusdt: "swusdt",
251
+ ssbwbtc: "ssbwbtc",
241
252
  ssui: "ssui",
242
253
  scetus: "scetus",
243
254
  safsui: "safsui",
@@ -275,7 +286,8 @@ var spoolRewardCoins = {
275
286
  };
276
287
  var suiBridgeCoins = {
277
288
  sbeth: "sbeth",
278
- sbusdt: "sbusdt"
289
+ sbusdt: "sbusdt",
290
+ sbwbtc: "sbwbtc"
279
291
  };
280
292
  var coinIds = {
281
293
  sui: "0x0000000000000000000000000000000000000000000000000000000000000002",
@@ -301,7 +313,8 @@ var coinIds = {
301
313
  blub: "0xfa7ac3951fdca92c5200d468d31a365eb03b2be9936fde615e69f0c1274ad3a0",
302
314
  // Sui bridge assets
303
315
  sbeth: "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29",
304
- sbusdt: "0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068"
316
+ sbusdt: "0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068",
317
+ sbwbtc: "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b"
305
318
  };
306
319
  var wormholeCoinIds = {
307
320
  weth: "0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5",
@@ -337,7 +350,8 @@ var sCoinIds = {
337
350
  sblub: "0xe72f65446eabfad2103037af2d49d24599106fb44bf4c046c1e7e9acf6844dd0::scallop_blub::SCALLOP_BLUB",
338
351
  // Sui bridge assets
339
352
  ssbeth: "0xb14f82d8506d139eacef109688d1b71e7236bcce9b2c0ad526abcd6aa5be7de0::scallop_sb_eth::SCALLOP_SB_ETH",
340
- ssbusdt: "0xb1d7df34829d1513b73ba17cb7ad90c88d1e104bb65ab8f62f13e0cc103783d3::scallop_sb_usdt::SCALLOP_SB_USDT"
353
+ ssbusdt: "0xb1d7df34829d1513b73ba17cb7ad90c88d1e104bb65ab8f62f13e0cc103783d3::scallop_sb_usdt::SCALLOP_SB_USDT",
354
+ ssbwbtc: "0x08c0fe357d3a138f4552bee393ce3a28a45bebcca43373d6a90bc44ab76f82e2::scallop_sb_wbtc::SCALLOP_SB_WBTC"
341
355
  };
342
356
  var sCoinTypeToName = Object.entries(sCoinIds).reduce(
343
357
  (acc, [coinName, coinType]) => {
@@ -416,6 +430,28 @@ var POOL_ADDRESSES = {
416
430
  pythFeed: "2b89b9dc8fdf9f34709a5b106b472f0f39bb6ca9ce04b0fd7f2e971688e2e53b",
417
431
  pythFeedObjectId: "0x985e3db9f93f76ee8bace7c3dd5cc676a096accd5d9e09e9ae0fb6e492b14572"
418
432
  },
433
+ sbwbtc: {
434
+ coinName: "sbwbtc",
435
+ symbol: "sbwBTC",
436
+ lendingPoolAddress: "0x5c4fc366c39e0969ddb8912da221cbf298656466f3b58039ff82c5ce64071ad8",
437
+ collateralPoolAddress: "0x85fb30d16d66f08e8bc8013665b786d5ca04652015c5ac7461cee51c54d7d507",
438
+ borrowDynamic: "0x1e25ebd25b6e1d4c765ff3172472ae21903e7f237b3efe1f6f011c93fef9f634",
439
+ interestModel: "0x5f7bff8aa04cc6790a88c51014d5b6feadf6441e4c40a496d67705c2856183b3",
440
+ riskModel: "0xb62fb27d5f1305ed94092ff4fd7015a71420bd2b47542599d361a1e8b88c46ad",
441
+ borrowFeeKey: "0x4ede8076a8d83315c49df8db9e6774d55ba149fcfb4a7a38845cd76c34f590d1",
442
+ supplyLimitKey: "0x4f5dfd04f32cc7ba8fba665486838fd3a291324980460d31bf79918a6b68a112",
443
+ sCoinTreasury: "0x21db1d3b310d32b5fb1383591103bfea57c6aed62ef6d3b6d469bab752b8681f",
444
+ borrowLimitKey: "0xc32b0a82ae08248912c39da03c1b347bcfbc7b63da0385e24306c4b97777da56",
445
+ sCoinType: "0x08c0fe357d3a138f4552bee393ce3a28a45bebcca43373d6a90bc44ab76f82e2::scallop_sb_wbtc::SCALLOP_SB_WBTC",
446
+ sCoinName: "ssbwbtc",
447
+ sCoinSymbol: "ssbwBTC",
448
+ coinMetadataId: "0x53e1cae1ad70a778d0b450d36c7c2553314ca029919005aad26945d65a8fb784",
449
+ coinType: "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b::btc::BTC",
450
+ sCoinMetadataId: "0x83d3d44ca57f9b1657065865caa497188d6fc1429f0ca846a51a9058f066f591",
451
+ decimals: 8,
452
+ pythFeed: "e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43",
453
+ pythFeedObjectId: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2"
454
+ },
419
455
  usdc: {
420
456
  coinName: "usdc",
421
457
  symbol: "USDC",
@@ -815,6 +851,7 @@ var PYTH_FEED_IDS = {
815
851
  usdc: "eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a",
816
852
  sbeth: "ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace",
817
853
  sbusdt: "2b89b9dc8fdf9f34709a5b106b472f0f39bb6ca9ce04b0fd7f2e971688e2e53b",
854
+ sbwbtc: "e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43",
818
855
  weth: "ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace",
819
856
  wbtc: "e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43",
820
857
  wusdc: "eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a",
@@ -1139,6 +1176,10 @@ var TEST_ADDRESSES = {
1139
1176
  // @TODO: add test address
1140
1177
  // @ts-ignore
1141
1178
  sbusdt: {},
1179
+ // @ts-ignore
1180
+ sbwbtc: {},
1181
+ // @ts-ignore
1182
+ blub: {},
1142
1183
  fdusd: {
1143
1184
  id: "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a",
1144
1185
  metaData: "0xdebee5265a67c186ed87fe93303d33dfe1de53e3b4fd7d9329c2852860acd3e7",
@@ -2962,6 +3003,9 @@ var parseAssetSymbol = (coinName) => {
2962
3003
  return `w${coinName.slice(1).toUpperCase()}`;
2963
3004
  }
2964
3005
  if (isSuiBridgeAsset(coinName)) {
3006
+ if (coinName.startsWith("sbw") && coinName.length > 3) {
3007
+ return `sbw${coinName.slice(3).toUpperCase()}`;
3008
+ }
2965
3009
  return `sb${coinName.slice(2).toUpperCase()}`;
2966
3010
  }
2967
3011
  if (isMarketCoin(coinName)) {
@@ -4999,9 +5043,9 @@ var getPythPrices = async ({
4999
5043
  {}
5000
5044
  );
5001
5045
  };
5002
- var getAllCoinPrices = async (query, marketPools, coinPrices, indexer = false) => {
5003
- coinPrices = coinPrices ?? (indexer ? await query.getCoinPricesByIndexer() : await query.utils.getCoinPrices());
5004
- marketPools = marketPools ?? (await query.getMarketPools(void 0, { coinPrices, indexer })).pools;
5046
+ var getAllCoinPrices = async (query, marketPools, coinPrices) => {
5047
+ coinPrices = coinPrices ?? await query.utils.getCoinPrices();
5048
+ marketPools = marketPools ?? (await query.getMarketPools(void 0, { coinPrices })).pools;
5005
5049
  if (!marketPools) {
5006
5050
  throw new Error(`Failed to fetch market pool for getAllCoinPrices`);
5007
5051
  }
@@ -5880,6 +5924,8 @@ var ScallopUtils = class {
5880
5924
  return normalizeStructTag7(`${coinPackageId}::sui::SUI`);
5881
5925
  if (coinName === "blub")
5882
5926
  return normalizeStructTag7(`${coinPackageId}::BLUB::BLUB`);
5927
+ if (coinName === "sbwbtc")
5928
+ return normalizeStructTag7(`${coinPackageId}::btc::BTC`);
5883
5929
  const wormHolePackageIds = [
5884
5930
  this.address.get("core.coins.wusdc.id") ?? wormholeCoinIds.wusdc,
5885
5931
  this.address.get("core.coins.wusdt.id") ?? wormholeCoinIds.wusdt,
@@ -8285,16 +8331,6 @@ var ScallopIndexer = class {
8285
8331
  async getCoinPrice(poolCoinName) {
8286
8332
  return (await this.getMarketPool(poolCoinName))?.coinPrice ?? 0;
8287
8333
  }
8288
- async getCoinPrices() {
8289
- const marketPools = await this.getMarketPools();
8290
- return Object.entries(marketPools).reduce(
8291
- (prev, [coinName, market]) => {
8292
- prev[coinName] = market.coinPrice;
8293
- return prev;
8294
- },
8295
- {}
8296
- );
8297
- }
8298
8334
  };
8299
8335
 
8300
8336
  // src/models/scallopQuery.ts
@@ -8872,24 +8908,12 @@ var ScallopQuery = class {
8872
8908
  async getCoinPriceByIndexer(poolName) {
8873
8909
  return this.indexer.getCoinPrice(poolName);
8874
8910
  }
8875
- /**
8876
- * Get all supported pool price from indexer
8877
- * @returns prices data
8878
- */
8879
- async getCoinPricesByIndexer() {
8880
- return this.indexer.getCoinPrices();
8881
- }
8882
8911
  /**
8883
8912
  * Get all coin prices, including sCoin
8884
8913
  * @returns prices data
8885
8914
  */
8886
8915
  async getAllCoinPrices(args) {
8887
- return getAllCoinPrices(
8888
- this,
8889
- args?.marketPools,
8890
- args?.coinPrices,
8891
- args?.indexer
8892
- );
8916
+ return getAllCoinPrices(this, args?.marketPools, args?.coinPrices);
8893
8917
  }
8894
8918
  /**
8895
8919
  * Query all address (lending pool, collateral pool, borrow dynamics, interest models, etc.) of all pool