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

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
@@ -10,26 +10,35 @@ var DEFAULT_CACHE_OPTIONS = {
10
10
 
11
11
  // src/constants/coinGecko.ts
12
12
  var COIN_GECKGO_IDS = {
13
- usdc: "usdc",
13
+ // Sui Bridge
14
14
  sbeth: "ethereum",
15
15
  sbusdt: "tether",
16
16
  sbwbtc: "bitcoin",
17
+ // Wormhole
17
18
  weth: "ethereum",
18
19
  wbtc: "bitcoin",
19
20
  wusdc: "usdc",
20
21
  wusdt: "tether",
21
- sui: "sui",
22
22
  wapt: "aptos",
23
23
  wsol: "solana",
24
- cetus: "cetus-protocol",
24
+ // Sui Native
25
+ usdc: "usdc",
26
+ // Sui LST
27
+ sui: "sui",
25
28
  afsui: "sui",
26
29
  hasui: "sui",
27
30
  vsui: "sui",
28
- sca: "scallop-2",
31
+ // Stable
29
32
  fdusd: "first-digital-usd",
33
+ // DeFi
34
+ cetus: "cetus-protocol",
35
+ sca: "scallop-2",
30
36
  deep: "deepbook",
37
+ // Isolated Asset
31
38
  fud: "fud-the-pug",
32
- blub: "blub"
39
+ blub: "blub",
40
+ musd: ""
41
+ // @TODO: add coinGecko id
33
42
  };
34
43
 
35
44
  // src/constants/common.ts
@@ -66,7 +75,8 @@ var SUPPORT_POOLS = [
66
75
  "fud",
67
76
  "deep",
68
77
  "fdusd",
69
- "blub"
78
+ "blub",
79
+ "musd"
70
80
  ];
71
81
  var SUPPORT_COLLATERALS = [
72
82
  "usdc",
@@ -121,7 +131,8 @@ var SUPPORT_SCOIN = [
121
131
  "sdeep",
122
132
  "sfud",
123
133
  "sfdusd",
124
- "sblub"
134
+ "sblub",
135
+ "smusd"
125
136
  ];
126
137
  var SUPPORT_SUI_BRIDGE = ["sbeth", "sbusdt", "sbwbtc"];
127
138
  var SUPPORT_WORMHOLE = [
@@ -176,6 +187,7 @@ var coinDecimals = {
176
187
  deep: 6,
177
188
  fud: 5,
178
189
  blub: 2,
190
+ musd: 9,
179
191
  susdc: 6,
180
192
  sweth: 8,
181
193
  ssbeth: 8,
@@ -195,7 +207,8 @@ var coinDecimals = {
195
207
  sfdusd: 6,
196
208
  sdeep: 6,
197
209
  sfud: 5,
198
- sblub: 2
210
+ sblub: 2,
211
+ smusd: 9
199
212
  };
200
213
  var assetCoins = {
201
214
  usdc: "usdc",
@@ -217,7 +230,8 @@ var assetCoins = {
217
230
  fdusd: "fdusd",
218
231
  deep: "deep",
219
232
  fud: "fud",
220
- blub: "blub"
233
+ blub: "blub",
234
+ musd: "musd"
221
235
  };
222
236
  var marketCoins = {
223
237
  susdc: "susdc",
@@ -239,7 +253,8 @@ var marketCoins = {
239
253
  sfdusd: "sfdusd",
240
254
  sdeep: "sdeep",
241
255
  sfud: "sfud",
242
- sblub: "sblub"
256
+ sblub: "sblub",
257
+ smusd: "smusd"
243
258
  };
244
259
  var sCoins = {
245
260
  susdc: "susdc",
@@ -260,7 +275,8 @@ var sCoins = {
260
275
  sfdusd: "sfdusd",
261
276
  sfud: "sfud",
262
277
  sdeep: "sdeep",
263
- sblub: "sblub"
278
+ sblub: "sblub",
279
+ smusd: "smusd"
264
280
  };
265
281
  var stakeMarketCoins = {
266
282
  susdc: "susdc",
@@ -314,7 +330,8 @@ var coinIds = {
314
330
  // Sui bridge assets
315
331
  sbeth: "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29",
316
332
  sbusdt: "0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068",
317
- sbwbtc: "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b"
333
+ sbwbtc: "0xaafb102dd0902f5055cadecd687fb5b71ca82ef0e0285d90afde828ec58ca96b",
334
+ musd: "0xe44df51c0b21a27ab915fa1fe2ca610cd3eaa6d9666fe5e62b988bf7f0bd8722"
318
335
  };
319
336
  var wormholeCoinIds = {
320
337
  weth: "0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5",
@@ -351,7 +368,8 @@ var sCoinIds = {
351
368
  // Sui bridge assets
352
369
  ssbeth: "0xb14f82d8506d139eacef109688d1b71e7236bcce9b2c0ad526abcd6aa5be7de0::scallop_sb_eth::SCALLOP_SB_ETH",
353
370
  ssbusdt: "0xb1d7df34829d1513b73ba17cb7ad90c88d1e104bb65ab8f62f13e0cc103783d3::scallop_sb_usdt::SCALLOP_SB_USDT",
354
- ssbwbtc: "0x08c0fe357d3a138f4552bee393ce3a28a45bebcca43373d6a90bc44ab76f82e2::scallop_sb_wbtc::SCALLOP_SB_WBTC"
371
+ ssbwbtc: "0x08c0fe357d3a138f4552bee393ce3a28a45bebcca43373d6a90bc44ab76f82e2::scallop_sb_wbtc::SCALLOP_SB_WBTC",
372
+ smusd: "0x0a228d1c59071eccf3716076a1f71216846ee256d9fb07ea11fb7c1eb56435a5::scallop_musd::SCALLOP_MUSD"
355
373
  };
356
374
  var sCoinTypeToName = Object.entries(sCoinIds).reduce(
357
375
  (acc, [coinName, coinType]) => {
@@ -839,6 +857,29 @@ var POOL_ADDRESSES = {
839
857
  decimals: 6,
840
858
  pythFeed: "0xccdc1a08923e2e4f4b1e6ea89de6acbc5fe1948e9706f5604b8cb50bc1ed3979",
841
859
  pythFeedObjectId: "0x5f6583b2b0fe1ecf94aaffeaab8a838794693960cea48c0da282d5f4a24be027"
860
+ },
861
+ // @TODO: add pyth feed
862
+ musd: {
863
+ coinName: "musd",
864
+ symbol: "mUSD",
865
+ lendingPoolAddress: "0x0565254220e7ca857a87341898bdebeb9e5d6f8f8fe68eb25dd3e257d41a0b0c",
866
+ collateralPoolAddress: void 0,
867
+ borrowDynamic: "0x9448dc2ae8054d5b735fd617fb4ca57046ddc98bfff91ce31de1df452f3bf695",
868
+ interestModel: "0xc3b57c57814e22ac42c7062922a0437ebf40495e37aee32cbb94cba0693970ed",
869
+ riskModel: void 0,
870
+ borrowFeeKey: "0xfdb02d76dc67553fd15f42f1de49ca79cd2812bdaf8bcd079cfe17ce23ed9fc4",
871
+ supplyLimitKey: "0x340aaae070f9489b59c4257610babf6f170abf43fbe51cf7de1e2e04492f6823",
872
+ isolatedAssetKey: "0xe10f03b13d2cdb46543130bafaf1884c9a5a7712b5932aae15b2f8d4fc31a774",
873
+ sCoinTreasury: "0xadfd554635ccc87e992f23ca838f0f16c14874e324a1b79b77f6bfe118edea9f",
874
+ sCoinType: "0x0a228d1c59071eccf3716076a1f71216846ee256d9fb07ea11fb7c1eb56435a5::scallop_musd::SCALLOP_MUSD",
875
+ sCoinName: "smusd",
876
+ sCoinSymbol: "smUSD",
877
+ coinMetadataId: "0xc154abd271b24032a2c80d96c1b82109490bb600ed189ef881d8c9467ed44a4f",
878
+ coinType: "0xe44df51c0b21a27ab915fa1fe2ca610cd3eaa6d9666fe5e62b988bf7f0bd8722::musd::MUSD",
879
+ sCoinMetadataId: "0xb924f8c3d4b993172d4fc553c1ea242e8ca539e83edc3edaf5512ae44dfa6863",
880
+ decimals: 0,
881
+ pythFeed: "",
882
+ pythFeedObjectId: ""
842
883
  }
843
884
  };
844
885
 
@@ -867,7 +908,9 @@ var PYTH_FEED_IDS = {
867
908
  fdusd: "0xccdc1a08923e2e4f4b1e6ea89de6acbc5fe1948e9706f5604b8cb50bc1ed3979",
868
909
  deep: "29bdd5248234e33bd93d3b81100b5fa32eaa5997843847e2c2cb16d7c6d9f7ff",
869
910
  fud: "6a4090703da959247727f2b490eb21aea95c8684ecfac675f432008830890c75",
870
- blub: "5fc11ffe4975b624be495be038da30e30bee2004d8ae6282b5364577ef4ca92c"
911
+ blub: "5fc11ffe4975b624be495be038da30e30bee2004d8ae6282b5364577ef4ca92c",
912
+ musd: ""
913
+ // @TODO: add mUSD pyth
871
914
  };
872
915
 
873
916
  // src/constants/queryKeys.ts
@@ -1180,6 +1223,8 @@ var TEST_ADDRESSES = {
1180
1223
  sbwbtc: {},
1181
1224
  // @ts-ignore
1182
1225
  blub: {},
1226
+ // @ts-ignore
1227
+ musd: {},
1183
1228
  fdusd: {
1184
1229
  id: "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a",
1185
1230
  metaData: "0xdebee5265a67c186ed87fe93303d33dfe1de53e3b4fd7d9329c2852860acd3e7",
@@ -3003,10 +3048,13 @@ var parseAssetSymbol = (coinName) => {
3003
3048
  return `w${coinName.slice(1).toUpperCase()}`;
3004
3049
  }
3005
3050
  if (isSuiBridgeAsset(coinName)) {
3006
- if (coinName.startsWith("sbw") && coinName.length > 3) {
3007
- return `sbw${coinName.slice(3).toUpperCase()}`;
3051
+ switch (coinName) {
3052
+ case "sbwbtc":
3053
+ return "sbwBTC";
3054
+ default: {
3055
+ return `sb${coinName.slice(2).toUpperCase()}`;
3056
+ }
3008
3057
  }
3009
- return `sb${coinName.slice(2).toUpperCase()}`;
3010
3058
  }
3011
3059
  if (isMarketCoin(coinName)) {
3012
3060
  const assetCoinName = coinName.slice(1).toLowerCase();
@@ -3019,6 +3067,8 @@ var parseAssetSymbol = (coinName) => {
3019
3067
  return "haSUI";
3020
3068
  case "vsui":
3021
3069
  return "vSUI";
3070
+ case "musd":
3071
+ return "mUSD";
3022
3072
  default:
3023
3073
  return coinName.toUpperCase();
3024
3074
  }
@@ -5708,14 +5758,14 @@ var getVeScaTreasuryInfo = async (utils) => {
5708
5758
  };
5709
5759
 
5710
5760
  // src/queries/poolAddressesQuery.ts
5711
- var getAllAddresses = async (query) => {
5761
+ var getAllAddresses = async (query, pools) => {
5712
5762
  const results = {};
5713
5763
  const marketId = query.address.get("core.market");
5714
5764
  const marketObject = (await query.cache.queryGetObject(marketId))?.data;
5715
5765
  if (!(marketObject && marketObject.content?.dataType === "moveObject"))
5716
5766
  throw new Error(`Failed to fetch marketObject`);
5717
5767
  const fields = marketObject.content.fields;
5718
- const coinTypesPairs = SUPPORT_POOLS.reduce(
5768
+ const coinTypesPairs = pools.reduce(
5719
5769
  (acc, pool) => {
5720
5770
  acc.push([pool, query.utils.parseCoinType(pool).substring(2)]);
5721
5771
  return acc;
@@ -8919,8 +8969,8 @@ var ScallopQuery = class {
8919
8969
  * Query all address (lending pool, collateral pool, borrow dynamics, interest models, etc.) of all pool
8920
8970
  * @returns
8921
8971
  */
8922
- async getPoolAddresses() {
8923
- return getAllAddresses(this);
8972
+ async getPoolAddresses(pools = [...SUPPORT_POOLS]) {
8973
+ return getAllAddresses(this, pools);
8924
8974
  }
8925
8975
  /**
8926
8976
  * Get user portfolio