@scallop-io/sui-scallop-sdk 1.4.23 → 1.5.0-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/constants/index.d.ts +1 -0
- package/dist/constants/xoracle.d.ts +2 -0
- package/dist/index.js +564 -619
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +574 -630
- package/dist/index.mjs.map +1 -1
- package/dist/models/scallopIndexer.d.ts +1 -0
- package/dist/models/scallopPrice.d.ts +0 -0
- package/dist/models/scallopQuery.d.ts +25 -3
- package/dist/queries/coreQuery.d.ts +1 -1
- package/dist/queries/index.d.ts +1 -0
- package/dist/queries/poolAddressesQuery.d.ts +2 -2
- package/dist/queries/priceQuery.d.ts +1 -1
- package/dist/queries/xOracleQuery.d.ts +13 -0
- package/dist/types/address.d.ts +1 -0
- package/dist/types/constant/index.d.ts +1 -0
- package/dist/types/constant/xOracle.d.ts +9 -0
- package/package.json +1 -1
- package/src/builders/borrowIncentiveBuilder.ts +11 -25
- package/src/builders/coreBuilder.ts +15 -72
- package/src/builders/oracle.ts +73 -46
- package/src/builders/referralBuilder.ts +9 -20
- package/src/builders/spoolBuilder.ts +10 -38
- package/src/builders/vescaBuilder.ts +11 -26
- package/src/constants/enum.ts +10 -5
- package/src/constants/index.ts +1 -0
- package/src/constants/poolAddress.ts +343 -184
- package/src/constants/testAddress.ts +35 -252
- package/src/constants/xoracle.ts +25 -0
- package/src/models/scallopIndexer.ts +11 -0
- package/src/models/scallopPrice.ts +0 -0
- package/src/models/scallopQuery.ts +58 -11
- package/src/models/scallopUtils.ts +1 -1
- package/src/queries/coreQuery.ts +16 -6
- package/src/queries/index.ts +1 -0
- package/src/queries/poolAddressesQuery.ts +5 -2
- package/src/queries/priceQuery.ts +10 -3
- package/src/queries/vescaQuery.ts +8 -17
- package/src/queries/xOracleQuery.ts +124 -0
- package/src/types/address.ts +1 -0
- package/src/types/constant/index.ts +1 -0
- package/src/types/constant/xOracle.ts +11 -0
- package/src/utils/util.ts +1 -1
package/dist/index.mjs
CHANGED
|
@@ -328,8 +328,10 @@ var voloCoinIds = {
|
|
|
328
328
|
vsui: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55"
|
|
329
329
|
};
|
|
330
330
|
var sCoinIds = {
|
|
331
|
-
ssui:
|
|
332
|
-
|
|
331
|
+
// ssui: '0xaafc4f740de0dd0dde642a31148fb94517087052f19afb0f7bed1dc41a50c77b::scallop_sui::SCALLOP_SUI', // @TODO: restore on prod
|
|
332
|
+
ssui: "0x88618204de2dfdc2597681a8441ee726b0dc13494c41e319c3264eb7b35fea90::scallop_sui::SCALLOP_SUI",
|
|
333
|
+
// ssca: '0x5ca17430c1d046fae9edeaa8fd76c7b4193a00d764a0ecfa9418d733ad27bc1e::scallop_sca::SCALLOP_SCA', // @TODO: restore on prod
|
|
334
|
+
ssca: "0x9f64a180373a6b66595025ae16a4ab701f0af1dd5c7ce1ac91dc112e52c2a3f8::scallop_sca::SCALLOP_SCA",
|
|
333
335
|
scetus: "0xea346ce428f91ab007210443efcea5f5cdbbb3aae7e9affc0ca93f9203c31f0c::scallop_cetus::SCALLOP_CETUS",
|
|
334
336
|
// Wormhole assets
|
|
335
337
|
sweth: "0x67540ceb850d418679e69f1fb6b2093d6df78a2a699ffc733f7646096d552e9b::scallop_wormhole_eth::SCALLOP_WORMHOLE_ETH",
|
|
@@ -340,13 +342,20 @@ var sCoinIds = {
|
|
|
340
342
|
shasui: "0x9a2376943f7d22f88087c259c5889925f332ca4347e669dc37d54c2bf651af3c::scallop_ha_sui::SCALLOP_HA_SUI",
|
|
341
343
|
svsui: "0xe1a1cc6bcf0001a015eab84bcc6713393ce20535f55b8b6f35c142e057a25fbe::scallop_v_sui::SCALLOP_V_SUI",
|
|
342
344
|
// stable coins
|
|
343
|
-
susdc:
|
|
345
|
+
susdc: (
|
|
346
|
+
// '0x854950aa624b1df59fe64e630b2ba7c550642e9342267a33061d59fb31582da5::scallop_usdc::SCALLOP_USDC', // @TODO: restore on prod
|
|
347
|
+
"0x55ed015f9f006c0c96ad36ebe3b3570d088e8498f52defea48e5634c110e485c::scallop_usdc::SCALLOP_USDC"
|
|
348
|
+
),
|
|
344
349
|
swusdc: "0xad4d71551d31092230db1fd482008ea42867dbf27b286e9c70a79d2a6191d58d::scallop_wormhole_usdc::SCALLOP_WORMHOLE_USDC",
|
|
345
350
|
swusdt: "0xe6e5a012ec20a49a3d1d57bd2b67140b96cd4d3400b9d79e541f7bdbab661f95::scallop_wormhole_usdt::SCALLOP_WORMHOLE_USDT",
|
|
346
351
|
sfdusd: "0x6711551c1e7652a270d9fbf0eee25d99594c157cde3cb5fbb49035eb59b1b001::scallop_fdusd::SCALLOP_FDUSD",
|
|
347
352
|
// isolated assets
|
|
348
|
-
sdeep:
|
|
349
|
-
|
|
353
|
+
sdeep: (
|
|
354
|
+
// '0xeb7a05a3224837c5e5503575aed0be73c091d1ce5e43aa3c3e716e0ae614608f::scallop_deep::SCALLOP_DEEP', // @TODO: restore on prod
|
|
355
|
+
"0x34f0a2e793e1f79ceac72cfe3bb95f65541da449418289ccd12922d16140c882::scallop_deep::SCALLOP_DEEP"
|
|
356
|
+
),
|
|
357
|
+
// sfud: '0xe56d5167f427cbe597da9e8150ef5c337839aaf46891d62468dcf80bdd8e10d1::scallop_fud::SCALLOP_FUD', // @TODO: restore on prod
|
|
358
|
+
sfud: "0x3b23c05f917052255a0b16a534dbd4446911aa4a30bd3497cdf5b736551e7ef8::scallop_fud::SCALLOP_FUD",
|
|
350
359
|
sblub: "0xe72f65446eabfad2103037af2d49d24599106fb44bf4c046c1e7e9acf6844dd0::scallop_blub::SCALLOP_BLUB",
|
|
351
360
|
// Sui bridge assets
|
|
352
361
|
ssbeth: "0xb14f82d8506d139eacef109688d1b71e7236bcce9b2c0ad526abcd6aa5be7de0::scallop_sb_eth::SCALLOP_SB_ETH",
|
|
@@ -453,30 +462,54 @@ var POOL_ADDRESSES = {
|
|
|
453
462
|
pythFeedObjectId: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2"
|
|
454
463
|
},
|
|
455
464
|
usdc: {
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
465
|
+
...{
|
|
466
|
+
coinName: "usdc",
|
|
467
|
+
symbol: "USDC",
|
|
468
|
+
lendingPoolAddress: "0xd3be98bf540f7603eeb550c0c0a19dbfc78822f25158b5fa84ebd9609def415f",
|
|
469
|
+
collateralPoolAddress: "0x8f0d529ba179c5b3d508213003eab813aaae31f78226099639b9a69d1aec17af",
|
|
470
|
+
borrowDynamic: "0x77837ecd4f26fac9a410fff594f2c0bd3288904a15492ca77cb8a52684dbb866",
|
|
471
|
+
interestModel: "0xaae3f179d63009380cbdcb9acb12907afc9c3cb79cc3460be296a9c6d28f3ff3",
|
|
472
|
+
riskModel: "0x198b24db213bfeb8b3c80ae63dde92e32fd24984d25da8233ff777b851edd574",
|
|
473
|
+
borrowFeeKey: "0xd37c5316cfe0a5967d14264fa6b423f880518b294a1ee6581ccbb49ccc401fb8",
|
|
474
|
+
supplyLimitKey: "0x4be9ae54ac4d320f4f9c14cae78cb85c8e0e67791dd9bdba6d2db20614a28a24",
|
|
475
|
+
borrowLimitKey: "0x6b01093cba95b835181f00e3a2c31ed8dfc8d64fe3db0fb80933a09f66e1ccf1",
|
|
476
|
+
spool: "0x0b5f5f413bd3799e4052c37311966c77f3a4545eb125d2e93e67a68478021918",
|
|
477
|
+
spoolReward: "0x85ed6ed72ea97c35dbf0cdc7ed6fbc48d8ec15de9b17c74bf4512df8a6d7f166",
|
|
478
|
+
sCoinTreasury: "0xbe6b63021f3d82e0e7e977cdd718ed7c019cf2eba374b7b546220402452f938e",
|
|
479
|
+
sCoinType: "0x854950aa624b1df59fe64e630b2ba7c550642e9342267a33061d59fb31582da5::scallop_usdc::SCALLOP_USDC",
|
|
480
|
+
sCoinName: "susdc",
|
|
481
|
+
sCoinSymbol: "sUSDC",
|
|
482
|
+
coinMetadataId: "0x69b7a7c3c200439c1b5f3b19d7d495d5966d5f08de66c69276152f8db3992ec6",
|
|
483
|
+
coinType: "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC",
|
|
484
|
+
sCoinMetadataId: "0x763a21eba338e00bc684aaad80491c89eea5f247b59c47df45b17610c9ad58f2",
|
|
485
|
+
spoolName: "susdc",
|
|
486
|
+
decimals: 6,
|
|
487
|
+
pythFeed: "eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a",
|
|
488
|
+
pythFeedObjectId: "0x5dec622733a204ca27f5a90d8c2fad453cc6665186fd5dff13a83d0b6c9027ab"
|
|
489
|
+
},
|
|
490
|
+
...{
|
|
491
|
+
coinName: "usdc",
|
|
492
|
+
symbol: "USDC",
|
|
493
|
+
lendingPoolAddress: "0x13319d295914b390b22484373f20f822bca10314c34c227ae6e28df3d9aa8e01",
|
|
494
|
+
collateralPoolAddress: "0x2fdcf63682577f6bfdd4296500067543ba9877d5d5e41ebd9e51b97ab071ce69",
|
|
495
|
+
borrowDynamic: "0x7fd0660f0102789ad039542165c6cbc2d90ba3c1d9dbd4ac4ae8804d80817542",
|
|
496
|
+
interestModel: "0xd4e7b06a79f63706523167f055296db641b0f8ddd6734c05e205f2de0fcefdd0",
|
|
497
|
+
riskModel: "0x19e5993350186f192ffeb2cba0650b04c291390e149c8ac9b324ecf394daaa1a",
|
|
498
|
+
spool: "0x0b5f5f413bd3799e4052c37311966c77f3a4545eb125d2e93e67a68478021918",
|
|
499
|
+
spoolReward: "0x85ed6ed72ea97c35dbf0cdc7ed6fbc48d8ec15de9b17c74bf4512df8a6d7f166",
|
|
500
|
+
sCoinTreasury: "0x6ef82ef94472dcb8c2cdeac8df38874024c08570ca165986ba56d1e38fe0c0a3",
|
|
501
|
+
sCoinType: "0x55ed015f9f006c0c96ad36ebe3b3570d088e8498f52defea48e5634c110e485c::scallop_usdc::SCALLOP_USDC",
|
|
502
|
+
sCoinName: "susdc",
|
|
503
|
+
sCoinSymbol: "sUSDC",
|
|
504
|
+
coinMetadataId: "0x69b7a7c3c200439c1b5f3b19d7d495d5966d5f08de66c69276152f8db3992ec6",
|
|
505
|
+
coinType: "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC",
|
|
506
|
+
spoolName: "susdc",
|
|
507
|
+
decimals: 6,
|
|
508
|
+
pythFeed: "eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a",
|
|
509
|
+
pythFeedObjectId: "0x5dec622733a204ca27f5a90d8c2fad453cc6665186fd5dff13a83d0b6c9027ab"
|
|
510
|
+
}
|
|
479
511
|
},
|
|
512
|
+
// @TODO: restore on prod
|
|
480
513
|
weth: {
|
|
481
514
|
coinName: "weth",
|
|
482
515
|
symbol: "wETH",
|
|
@@ -575,30 +608,54 @@ var POOL_ADDRESSES = {
|
|
|
575
608
|
pythFeedObjectId: "0x985e3db9f93f76ee8bace7c3dd5cc676a096accd5d9e09e9ae0fb6e492b14572"
|
|
576
609
|
},
|
|
577
610
|
sui: {
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
611
|
+
...{
|
|
612
|
+
coinName: "sui",
|
|
613
|
+
symbol: "SUI",
|
|
614
|
+
lendingPoolAddress: "0x9c9077abf7a29eebce41e33addbcd6f5246a5221dd733e56ea0f00ae1b25c9e8",
|
|
615
|
+
collateralPoolAddress: "0x75aacfb7dcbf92ee0111fc1bf975b12569e4ba632e81ed7ae5ac090d40cd3acb",
|
|
616
|
+
borrowDynamic: "0xbf68e6159c99dcaf87717385f1143d2891c2d19663bd51f0bc9b6909e4bb7c27",
|
|
617
|
+
interestModel: "0x0dad9baa89b863c15a0487575de7cc428b01f1aa3998ad7a9e9752d96e83ffa9",
|
|
618
|
+
riskModel: "0xcd6675864690b5648a6e309f2f02a66914b2b2bd9c31936f4e0f7fc0f792bc86",
|
|
619
|
+
borrowFeeKey: "0xda5ede87a05c0677b17511c859b22d0a2b0229ee374d5d7a1274cb836b9fe5f8",
|
|
620
|
+
supplyLimitKey: "0x0602418e66fb7a73fa997077bd66f248ad5b090d43344a14b9f1db598ecc1d47",
|
|
621
|
+
borrowLimitKey: "0x2b33a7efdcf6a6df24f4d8a356dd52f58d75bc023c3f171d99502d4d008b53f0",
|
|
622
|
+
spool: "0x4f0ba970d3c11db05c8f40c64a15b6a33322db3702d634ced6536960ab6f3ee4",
|
|
623
|
+
spoolReward: "0x162250ef72393a4ad3d46294c4e1bdfcb03f04c869d390e7efbfc995353a7ee9",
|
|
624
|
+
sCoinTreasury: "0x5c1678c8261ac9eec024d4d630006a9f55c80dc0b1aa38a003fcb1d425818c6b",
|
|
625
|
+
sCoinType: "0xaafc4f740de0dd0dde642a31148fb94517087052f19afb0f7bed1dc41a50c77b::scallop_sui::SCALLOP_SUI",
|
|
626
|
+
sCoinName: "ssui",
|
|
627
|
+
sCoinSymbol: "sSUI",
|
|
628
|
+
coinMetadataId: "0x9258181f5ceac8dbffb7030890243caed69a9599d2886d957a9cb7656af3bdb3",
|
|
629
|
+
coinType: "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI",
|
|
630
|
+
sCoinMetadataId: "0xac724644f481f4870ecdc29b9549aa8ea5180f10827c0d97b493f9f65a91455d",
|
|
631
|
+
spoolName: "ssui",
|
|
632
|
+
decimals: 9,
|
|
633
|
+
pythFeed: "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744",
|
|
634
|
+
pythFeedObjectId: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37"
|
|
635
|
+
},
|
|
636
|
+
...{
|
|
637
|
+
coinName: "sui",
|
|
638
|
+
symbol: "SUI",
|
|
639
|
+
lendingPoolAddress: "0xeb86ad67543c1ac2c4cbaf178d38a45ab27c2e69d60f0f8badd83f563f012c3c",
|
|
640
|
+
collateralPoolAddress: "0xcba7bb07d4d3ce01d81e71d9def680aa8b417347bfd7834aee8fc3b85b61c9a1",
|
|
641
|
+
borrowDynamic: "0xd47c2fd3dbb95ed06e5da92f6b99611ba94a36efa6a13d9b33b02519761cc84e",
|
|
642
|
+
interestModel: "0x4742bb49aa49ab4e5d9dfa119cddc027d1b7811ac42ca1ce794818d4a4da68e7",
|
|
643
|
+
riskModel: "0x6dc356e829cfca2d79f0d68a79b5ddd5296ad0c955a38e2fc397485e2b629367",
|
|
644
|
+
spool: "0xb9617f83c06ebdeac0a8834782b1015e1cc7ea23739e30c132c4bfb95c37a579",
|
|
645
|
+
spoolReward: "0xc3206071a8d43212efb6e3b5504f2321f8df97ab122b466c0bc7cfdf398dc13a",
|
|
646
|
+
sCoinTreasury: "0x03f1d94a40bd9f5d556bacb5c5245732b185572f6a29b36ad8b555d9a8a24f09",
|
|
647
|
+
sCoinType: "0x88618204de2dfdc2597681a8441ee726b0dc13494c41e319c3264eb7b35fea90::scallop_sui::SCALLOP_SUI",
|
|
648
|
+
sCoinName: "ssui",
|
|
649
|
+
sCoinSymbol: "sSUI",
|
|
650
|
+
coinMetadataId: "0x9258181f5ceac8dbffb7030890243caed69a9599d2886d957a9cb7656af3bdb3",
|
|
651
|
+
coinType: "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI",
|
|
652
|
+
spoolName: "ssui",
|
|
653
|
+
decimals: 9,
|
|
654
|
+
pythFeed: "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744",
|
|
655
|
+
pythFeedObjectId: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37"
|
|
656
|
+
}
|
|
601
657
|
},
|
|
658
|
+
// @TODO: restore on prod
|
|
602
659
|
wapt: {
|
|
603
660
|
coinName: "wapt",
|
|
604
661
|
symbol: "wAPT",
|
|
@@ -737,48 +794,88 @@ var POOL_ADDRESSES = {
|
|
|
737
794
|
pythFeedObjectId: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37"
|
|
738
795
|
},
|
|
739
796
|
sca: {
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
797
|
+
...{
|
|
798
|
+
coinName: "sca",
|
|
799
|
+
symbol: "SCA",
|
|
800
|
+
lendingPoolAddress: "0x6fc7d4211fc7018b6c75e7b908b88f2e0536443239804a3d32af547637bd28d7",
|
|
801
|
+
collateralPoolAddress: "0xff677a5d9e9dc8f08f0a8681ebfc7481d1c7d57bc441f2881974adcdd7b13c31",
|
|
802
|
+
borrowDynamic: "0x4e24f52edd739dab59ca4c6353ca430b7ce57e7f333abd0957958570a7cd09ca",
|
|
803
|
+
interestModel: "0xbdcd48cf5b1a814911dc2d5c72d393a980c87820199fe5d799289ce94f4c47df",
|
|
804
|
+
riskModel: "0xc437c24b67b8e2676907700fa395af337ad6463d2c0b4f4fa2e9276414026089",
|
|
805
|
+
borrowFeeKey: "0xee55ba0f9800a62d9e7aef667f87e658258f41814d2c9fa02e25590671b4e5ad",
|
|
806
|
+
supplyLimitKey: "0x8dd938856b972a10ea27ecab2af7ed78e48fc5f6ccedaf2b2119959f747dc2e3",
|
|
807
|
+
borrowLimitKey: "0x04c7de61c5b42972f9bf6a8b1848e5fea2d037ee8deba81741ecd4a70aa80d30",
|
|
808
|
+
sCoinTreasury: "0xe04bfc95e00252bd654ee13c08edef9ac5e4b6ae4074e8390db39e9a0109c529",
|
|
809
|
+
sCoinType: "0x5ca17430c1d046fae9edeaa8fd76c7b4193a00d764a0ecfa9418d733ad27bc1e::scallop_sca::SCALLOP_SCA",
|
|
810
|
+
sCoinName: "ssca",
|
|
811
|
+
sCoinSymbol: "sSCA",
|
|
812
|
+
coinMetadataId: "0x5d26a1e9a55c88147ac870bfa31b729d7f49f8804b8b3adfdf3582d301cca844",
|
|
813
|
+
coinType: "0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6::sca::SCA",
|
|
814
|
+
sCoinMetadataId: "0x27e3877491b308dfac46fb3d9f7dfa6a1e8b7dc3c374e92ecda7976055746964",
|
|
815
|
+
decimals: 9,
|
|
816
|
+
pythFeed: "7e17f0ac105abe9214deb9944c30264f5986bf292869c6bd8e8da3ccd92d79bc",
|
|
817
|
+
pythFeedObjectId: "0xf6de1d3279a269a597d813cbaca59aa906543ab9a8c64e84a4722f1a20863985"
|
|
818
|
+
},
|
|
819
|
+
...{
|
|
820
|
+
coinName: "sca",
|
|
821
|
+
symbol: "SCA",
|
|
822
|
+
lendingPoolAddress: "0xd08ef85bc753616ce0f1e3ac01bbc8bd1ee53e03b1e82aaa9690db5cd285ef4c",
|
|
823
|
+
collateralPoolAddress: "0x4f59b8ef2cdd195830890cf0c01e29c159e48a6a6c766c64fd4b26cfa9ee58c6",
|
|
824
|
+
borrowDynamic: "0x7f6e11fbd32b5d0223f03bfda67a5b48c551a09cfff88edc187591f9a4b0ab10",
|
|
825
|
+
interestModel: "0xcb10daf0fee6f416463444f5b47aac0f0197a889bc60be2c4f90916f6a8d2faa",
|
|
826
|
+
riskModel: "0x043f21a35bd1e1060a7c579db46e10cfd039d0b75d6bfd758de97b60434ae708",
|
|
827
|
+
sCoinTreasury: "0x1b05d2cd8b20dba19da073a54195fc52d2f438ea19dea0713bae7a7dab308199",
|
|
828
|
+
sCoinType: "0x9f64a180373a6b66595025ae16a4ab701f0af1dd5c7ce1ac91dc112e52c2a3f8::scallop_sca::SCALLOP_SCA",
|
|
829
|
+
sCoinName: "ssca",
|
|
830
|
+
sCoinSymbol: "sSCA",
|
|
831
|
+
coinMetadataId: "0x5d26a1e9a55c88147ac870bfa31b729d7f49f8804b8b3adfdf3582d301cca844",
|
|
832
|
+
coinType: "0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6::sca::SCA",
|
|
833
|
+
decimals: 9,
|
|
834
|
+
pythFeed: "7e17f0ac105abe9214deb9944c30264f5986bf292869c6bd8e8da3ccd92d79bc",
|
|
835
|
+
pythFeedObjectId: "0xf6de1d3279a269a597d813cbaca59aa906543ab9a8c64e84a4722f1a20863985"
|
|
836
|
+
}
|
|
760
837
|
},
|
|
838
|
+
// @TODO: restore on prod
|
|
761
839
|
fud: {
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
840
|
+
...{
|
|
841
|
+
coinName: "fud",
|
|
842
|
+
symbol: "FUD",
|
|
843
|
+
lendingPoolAddress: "0xefed2cbe76b344792ac724523c8b2236740d1cea2100d46a0ed0dc760c7f4231",
|
|
844
|
+
borrowDynamic: "0x14367ddca30e2860cb89ed4eaca20c7ece260c5d59dd9990d2c85a8321326acb",
|
|
845
|
+
interestModel: "0x2600ac100ef154eb2329ffd3aad47aca308ff9f9348de3e8e94aaeb906ec2303",
|
|
846
|
+
borrowFeeKey: "0xa87e8b26e07ff35ac9fb57adcc779be2883080fc7d12de2d9e7e16d8d8d5e529",
|
|
847
|
+
supplyLimitKey: "0xf98419aecc37a3c5de716f8ec590f8991a5be34da72ce1a2da09531ff45adf7d",
|
|
848
|
+
borrowLimitKey: "0x3d928a001c453c50004baa54e14b0a0e1b0907d9c613dfd76064fd7ed4e8beb8",
|
|
849
|
+
isolatedAssetKey: "0xfcb533e9e4e31f9c9f32d6cbf7fbb3425f1d60474e229a363a2dc7f835d587e2",
|
|
850
|
+
sCoinTreasury: "0xf25212f11d182decff7a86165699a73e3d5787aced203ca539f43cfbc10db867",
|
|
851
|
+
sCoinType: "0xe56d5167f427cbe597da9e8150ef5c337839aaf46891d62468dcf80bdd8e10d1::scallop_fud::SCALLOP_FUD",
|
|
852
|
+
sCoinName: "sfud",
|
|
853
|
+
sCoinSymbol: "sFUD",
|
|
854
|
+
coinMetadataId: "0x01087411ef48aaac1eb6e24803213e3a60a03b147dac930e5e341f17a85e524e",
|
|
855
|
+
coinType: "0x76cb819b01abed502bee8a702b4c2d547532c12f25001c9dea795a5e631c26f1::fud::FUD",
|
|
856
|
+
sCoinMetadataId: "0x4e03390de36b8c84e0a8297d3d0d08a8a34bed93787e37fcb26bfc26df33226c",
|
|
857
|
+
decimals: 5,
|
|
858
|
+
pythFeed: "6a4090703da959247727f2b490eb21aea95c8684ecfac675f432008830890c75",
|
|
859
|
+
pythFeedObjectId: "0x4531c3ed0d22f21f5fce882905372006c9aafa30f01db03b789e95a6c50de7b2"
|
|
860
|
+
},
|
|
861
|
+
...{
|
|
862
|
+
coinName: "fud",
|
|
863
|
+
symbol: "FUD",
|
|
864
|
+
lendingPoolAddress: "0xc8a078d15ee7bbff49a14835f36951833d2d55c91ffd2972251dadbff8045ca8",
|
|
865
|
+
borrowDynamic: "0x345a2fa0fe5d5d704fd8ad609a9b7529f22e3cda738ad26756ad2a85e5d43777",
|
|
866
|
+
interestModel: "0xc84a22d8bca58e5f05673d1de2a7406b1b7bc9dcd15fd848ba6555c7ecab9d83",
|
|
867
|
+
sCoinTreasury: "0x858c492d51425b922c040c1a389e185b3b00d565e7d72ead1a81dc733104660d",
|
|
868
|
+
sCoinType: "0x3b23c05f917052255a0b16a534dbd4446911aa4a30bd3497cdf5b736551e7ef8::scallop_fud::SCALLOP_FUD",
|
|
869
|
+
sCoinName: "sfud",
|
|
870
|
+
sCoinSymbol: "sFUD",
|
|
871
|
+
coinMetadataId: "0x01087411ef48aaac1eb6e24803213e3a60a03b147dac930e5e341f17a85e524e",
|
|
872
|
+
coinType: "0x76cb819b01abed502bee8a702b4c2d547532c12f25001c9dea795a5e631c26f1::fud::FUD",
|
|
873
|
+
decimals: 5,
|
|
874
|
+
pythFeed: "6a4090703da959247727f2b490eb21aea95c8684ecfac675f432008830890c75",
|
|
875
|
+
pythFeedObjectId: "0x4531c3ed0d22f21f5fce882905372006c9aafa30f01db03b789e95a6c50de7b2"
|
|
876
|
+
}
|
|
781
877
|
},
|
|
878
|
+
// @TODO: restore on prod
|
|
782
879
|
blub: {
|
|
783
880
|
coinName: "blub",
|
|
784
881
|
symbol: "BLUB",
|
|
@@ -799,26 +896,45 @@ var POOL_ADDRESSES = {
|
|
|
799
896
|
pythFeedObjectId: "0x246658c3324f2477568c78cca622518fbc6969a004b841d81409d24a7ec39b18"
|
|
800
897
|
},
|
|
801
898
|
deep: {
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
899
|
+
...{
|
|
900
|
+
coinName: "deep",
|
|
901
|
+
symbol: "DEEP",
|
|
902
|
+
lendingPoolAddress: "0xf4a67ffb43da1e1c61c049f188f19463ea8dbbf2d5ef4722d6df854ff1b1cc03",
|
|
903
|
+
borrowDynamic: "0x95e00d7466f97a100e70f08bd37788dc49335796f6f49fab996d40dd0681c6d3",
|
|
904
|
+
interestModel: "0x4143c298506a332d92ea8a995e6f3991ee3215f58f6fc6441752835d275b9a69",
|
|
905
|
+
borrowFeeKey: "0xb14ee43f4ad2a2c40bac8c4406a401690e93c982e289cf3802fedf74a159cab2",
|
|
906
|
+
supplyLimitKey: "0x599528fdfdc253e90dfd0acf4f4a166b391e2aac1ca6528abbff63225b548fee",
|
|
907
|
+
borrowLimitKey: "0xf4217e8ef9d9c32e8992092e910a77535a8124c19b8a762a673f227f5f765a4e",
|
|
908
|
+
isolatedAssetKey: "0x208d3a24ba369dcfc8f0387333d1512b98199eb150d2f2a69359ff708cf761e3",
|
|
909
|
+
sCoinTreasury: "0xc63838fabe37b25ad897392d89876d920f5e0c6a406bf3abcb84753d2829bc88",
|
|
910
|
+
sCoinType: "0xeb7a05a3224837c5e5503575aed0be73c091d1ce5e43aa3c3e716e0ae614608f::scallop_deep::SCALLOP_DEEP",
|
|
911
|
+
sCoinName: "sdeep",
|
|
912
|
+
sCoinSymbol: "sDEEP",
|
|
913
|
+
coinMetadataId: "0x6e60b051a08fa836f5a7acd7c464c8d9825bc29c44657fe170fe9b8e1e4770c0",
|
|
914
|
+
coinType: "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP",
|
|
915
|
+
sCoinMetadataId: "0x2443014594a500a9119e11c6c6a86e865834f496c4614280ce8cace33c0b072e",
|
|
916
|
+
decimals: 6,
|
|
917
|
+
pythFeed: "29bdd5248234e33bd93d3b81100b5fa32eaa5997843847e2c2cb16d7c6d9f7ff",
|
|
918
|
+
pythFeedObjectId: "0x8c7f3a322b94cc69db2a2ac575cbd94bf5766113324c3a3eceac91e3e88a51ed"
|
|
919
|
+
},
|
|
920
|
+
...{
|
|
921
|
+
coinName: "deep",
|
|
922
|
+
symbol: "DEEP",
|
|
923
|
+
lendingPoolAddress: "0xfb8e4f68c9b14034da7f1f4703013dda69ebbb4578f835825bcf92ab89c3b5ae",
|
|
924
|
+
borrowDynamic: "0xbf983b12a8707b174c0b037096ba2fbf1b30e6efb9cce14fc35207de0a696f79",
|
|
925
|
+
interestModel: "0xb7f04cd3aaaefe671a79f9aed8646ae085a7e6812c1604044977c9355e0769c8",
|
|
926
|
+
sCoinTreasury: "0x71d41465cf2d16fa0206126526bebdf65c8871d1fcfbd0c2237db2306afd67ba",
|
|
927
|
+
sCoinType: "0x34f0a2e793e1f79ceac72cfe3bb95f65541da449418289ccd12922d16140c882::scallop_deep::SCALLOP_DEEP",
|
|
928
|
+
sCoinName: "sdeep",
|
|
929
|
+
sCoinSymbol: "sDEEP",
|
|
930
|
+
coinMetadataId: "0x6e60b051a08fa836f5a7acd7c464c8d9825bc29c44657fe170fe9b8e1e4770c0",
|
|
931
|
+
coinType: "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP",
|
|
932
|
+
decimals: 6,
|
|
933
|
+
pythFeed: "29bdd5248234e33bd93d3b81100b5fa32eaa5997843847e2c2cb16d7c6d9f7ff",
|
|
934
|
+
pythFeedObjectId: "0x8c7f3a322b94cc69db2a2ac575cbd94bf5766113324c3a3eceac91e3e88a51ed"
|
|
935
|
+
}
|
|
821
936
|
},
|
|
937
|
+
// @TODO: restore on prod
|
|
822
938
|
fdusd: {
|
|
823
939
|
coinName: "fdusd",
|
|
824
940
|
symbol: "FDUSD",
|
|
@@ -975,21 +1091,13 @@ var RPC_PROVIDERS = [
|
|
|
975
1091
|
// src/constants/testAddress.ts
|
|
976
1092
|
var TEST_ADDRESSES = {
|
|
977
1093
|
core: {
|
|
978
|
-
|
|
979
|
-
// '0x07871c4b3c847a0f674510d4978d5cf6f960452795e8ff6f189fd2088a3f6ac7',
|
|
980
|
-
version: "0xd318de9b0f6873879a82cbfcc2daa1d1591a8b54e7cea9f4b567da63c692a52b",
|
|
1094
|
+
version: "0xee15d07800e2ad4852505c57cd86afea774af02c17388f8bd907de75f915b4f4",
|
|
981
1095
|
versionCap: "0x590a4011cb649b3878f3ea14b3a78674642a9548d79b7e091ef679574b158a07",
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
object: "0x6c23585e940a989588432509107e98bae06dbca4e333f26d0635d401b3c7c76d",
|
|
985
|
-
// market:
|
|
986
|
-
// '0xa757975255146dc9686aa823b7838b507f315d704f428cbadad2f4ea061939d9',
|
|
987
|
-
market: "0x9d6434e97f3f98fd9b0c0e1dca22632073985abcd22541feae7ee1e34cbe3af2",
|
|
1096
|
+
object: "0xb03fa00e2d9f17d78a9d48bd94d8852abec68c19d55e819096b1e062e69bfad1",
|
|
1097
|
+
market: "0xa7f41efe3b551c20ad6d6cea6ccd0fd68d2e2eaaacdca5e62d956209f6a51312",
|
|
988
1098
|
adminCap: "0x09689d018e71c337d9db6d67cbca06b74ed92196103624028ccc3ecea411777c",
|
|
989
1099
|
coinDecimalsRegistry: "0x200abe9bf19751cc566ae35aa58e2b7e4ff688fc1130f8d8909ea09bc137d668",
|
|
990
|
-
|
|
991
|
-
// '0x733e30b7c94d619d78cb8f5bc4bfbb759ced9a531239028caabb2474e5be59c9',
|
|
992
|
-
obligationAccessStore: "0x46e9b44a77ee9c9d33cc2689ecdfbb8f681935cbc6bdf6ac3df048e396c36c82",
|
|
1100
|
+
obligationAccessStore: "0xb7d7e1464936fbdcdd4913308b40335e662401029635289bdb317c7dde9d6c68",
|
|
993
1101
|
coins: {
|
|
994
1102
|
usdc: {
|
|
995
1103
|
id: "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7",
|
|
@@ -1004,97 +1112,6 @@ var TEST_ADDRESSES = {
|
|
|
1004
1112
|
}
|
|
1005
1113
|
}
|
|
1006
1114
|
},
|
|
1007
|
-
cetus: {
|
|
1008
|
-
id: "0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b",
|
|
1009
|
-
metaData: "0x4c0dce55eff2db5419bbd2d239d1aa22b4a400c01bbb648b058a9883989025da",
|
|
1010
|
-
treasury: "",
|
|
1011
|
-
oracle: {
|
|
1012
|
-
supra: "",
|
|
1013
|
-
switchboard: "",
|
|
1014
|
-
pyth: {
|
|
1015
|
-
feed: "e5b274b2611143df055d6e7cd8d93fe1961716bcd4dca1cad87a83bc1e78c1ef",
|
|
1016
|
-
feedObject: "0x24c0247fb22457a719efac7f670cdc79be321b521460bd6bd2ccfa9f80713b14"
|
|
1017
|
-
}
|
|
1018
|
-
}
|
|
1019
|
-
},
|
|
1020
|
-
wapt: {
|
|
1021
|
-
id: "0x3a5143bb1196e3bcdfab6203d1683ae29edd26294fc8bfeafe4aaa9d2704df37",
|
|
1022
|
-
metaData: "0xc969c5251f372c0f34c32759f1d315cf1ea0ee5e4454b52aea08778eacfdd0a8",
|
|
1023
|
-
treasury: "",
|
|
1024
|
-
oracle: {
|
|
1025
|
-
supra: "",
|
|
1026
|
-
switchboard: "",
|
|
1027
|
-
pyth: {
|
|
1028
|
-
feed: "03ae4db29ed4ae33d323568895aa00337e658e348b37509f5372ae51f0af00d5",
|
|
1029
|
-
feedObject: "0x7c5b7837c44a69b469325463ac0673ac1aa8435ff44ddb4191c9ae380463647f"
|
|
1030
|
-
}
|
|
1031
|
-
}
|
|
1032
|
-
},
|
|
1033
|
-
wsol: {
|
|
1034
|
-
id: "0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8",
|
|
1035
|
-
metaData: "0x4d2c39082b4477e3e79dc4562d939147ab90c42fc5f3e4acf03b94383cd69b6e",
|
|
1036
|
-
treasury: "",
|
|
1037
|
-
oracle: {
|
|
1038
|
-
supra: "",
|
|
1039
|
-
switchboard: "",
|
|
1040
|
-
pyth: {
|
|
1041
|
-
feed: "ef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d",
|
|
1042
|
-
feedObject: "0x9d0d275efbd37d8a8855f6f2c761fa5983293dd8ce202ee5196626de8fcd4469"
|
|
1043
|
-
}
|
|
1044
|
-
}
|
|
1045
|
-
},
|
|
1046
|
-
wbtc: {
|
|
1047
|
-
id: "0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881",
|
|
1048
|
-
metaData: "0x5d3c6e60eeff8a05b693b481539e7847dfe33013e7070cdcb387f5c0cac05dfd",
|
|
1049
|
-
treasury: "",
|
|
1050
|
-
oracle: {
|
|
1051
|
-
supra: "",
|
|
1052
|
-
switchboard: "",
|
|
1053
|
-
pyth: {
|
|
1054
|
-
feed: "e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43",
|
|
1055
|
-
feedObject: "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2"
|
|
1056
|
-
}
|
|
1057
|
-
}
|
|
1058
|
-
},
|
|
1059
|
-
weth: {
|
|
1060
|
-
id: "0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5",
|
|
1061
|
-
metaData: "0x8900e4ceede3363bef086d6b50ca89d816d0e90bf6bc46efefe1f8455e08f50f",
|
|
1062
|
-
treasury: "",
|
|
1063
|
-
oracle: {
|
|
1064
|
-
supra: "",
|
|
1065
|
-
switchboard: "",
|
|
1066
|
-
pyth: {
|
|
1067
|
-
feed: "ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace",
|
|
1068
|
-
feedObject: "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab"
|
|
1069
|
-
}
|
|
1070
|
-
}
|
|
1071
|
-
},
|
|
1072
|
-
wusdc: {
|
|
1073
|
-
id: "0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf",
|
|
1074
|
-
metaData: "0x4fbf84f3029bd0c0b77164b587963be957f853eccf834a67bb9ecba6ec80f189",
|
|
1075
|
-
treasury: "",
|
|
1076
|
-
oracle: {
|
|
1077
|
-
supra: "",
|
|
1078
|
-
switchboard: "",
|
|
1079
|
-
pyth: {
|
|
1080
|
-
feed: "eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a",
|
|
1081
|
-
feedObject: "0x5dec622733a204ca27f5a90d8c2fad453cc6665186fd5dff13a83d0b6c9027ab"
|
|
1082
|
-
}
|
|
1083
|
-
}
|
|
1084
|
-
},
|
|
1085
|
-
wusdt: {
|
|
1086
|
-
id: "0xc060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c",
|
|
1087
|
-
metaData: "0xfb0e3eb97dd158a5ae979dddfa24348063843c5b20eb8381dd5fa7c93699e45c",
|
|
1088
|
-
treasury: "",
|
|
1089
|
-
oracle: {
|
|
1090
|
-
supra: "",
|
|
1091
|
-
switchboard: "",
|
|
1092
|
-
pyth: {
|
|
1093
|
-
feed: "2b89b9dc8fdf9f34709a5b106b472f0f39bb6ca9ce04b0fd7f2e971688e2e53b",
|
|
1094
|
-
feedObject: "0x985e3db9f93f76ee8bace7c3dd5cc676a096accd5d9e09e9ae0fb6e492b14572"
|
|
1095
|
-
}
|
|
1096
|
-
}
|
|
1097
|
-
},
|
|
1098
1115
|
sui: {
|
|
1099
1116
|
id: "0x0000000000000000000000000000000000000000000000000000000000000002",
|
|
1100
1117
|
metaData: "0x9258181f5ceac8dbffb7030890243caed69a9599d2886d957a9cb7656af3bdb3",
|
|
@@ -1108,45 +1125,6 @@ var TEST_ADDRESSES = {
|
|
|
1108
1125
|
}
|
|
1109
1126
|
}
|
|
1110
1127
|
},
|
|
1111
|
-
afsui: {
|
|
1112
|
-
id: "0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc",
|
|
1113
|
-
metaData: "0x2f9217f533e51334873a39b8026a4aa6919497b47f49d0986a4f1aec66f8a34d",
|
|
1114
|
-
treasury: "",
|
|
1115
|
-
oracle: {
|
|
1116
|
-
supra: "",
|
|
1117
|
-
switchboard: "",
|
|
1118
|
-
pyth: {
|
|
1119
|
-
feed: "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744",
|
|
1120
|
-
feedObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37"
|
|
1121
|
-
}
|
|
1122
|
-
}
|
|
1123
|
-
},
|
|
1124
|
-
hasui: {
|
|
1125
|
-
id: "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d",
|
|
1126
|
-
metaData: "0x2c5f33af93f6511df699aaaa5822d823aac6ed99d4a0de2a4a50b3afa0172e24",
|
|
1127
|
-
treasury: "",
|
|
1128
|
-
oracle: {
|
|
1129
|
-
supra: "",
|
|
1130
|
-
switchboard: "",
|
|
1131
|
-
pyth: {
|
|
1132
|
-
feed: "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744",
|
|
1133
|
-
feedObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37"
|
|
1134
|
-
}
|
|
1135
|
-
}
|
|
1136
|
-
},
|
|
1137
|
-
vsui: {
|
|
1138
|
-
id: "0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55",
|
|
1139
|
-
metaData: "0xabd84a23467b33854ab25cf862006fd97479f8f6f53e50fe732c43a274d939bd",
|
|
1140
|
-
treasury: "",
|
|
1141
|
-
oracle: {
|
|
1142
|
-
supra: "",
|
|
1143
|
-
switchboard: "",
|
|
1144
|
-
pyth: {
|
|
1145
|
-
feed: "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744",
|
|
1146
|
-
feedObject: "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37"
|
|
1147
|
-
}
|
|
1148
|
-
}
|
|
1149
|
-
},
|
|
1150
1128
|
sca: {
|
|
1151
1129
|
id: "0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6",
|
|
1152
1130
|
metaData: "0x5d26a1e9a55c88147ac870bfa31b729d7f49f8804b8b3adfdf3582d301cca844",
|
|
@@ -1160,39 +1138,6 @@ var TEST_ADDRESSES = {
|
|
|
1160
1138
|
}
|
|
1161
1139
|
}
|
|
1162
1140
|
},
|
|
1163
|
-
sbeth: {
|
|
1164
|
-
id: "0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29",
|
|
1165
|
-
metaData: "0x89b04ba87f8832d4d76e17a1c9dce72eb3e64d372cf02012b8d2de5384faeef0",
|
|
1166
|
-
treasury: "",
|
|
1167
|
-
oracle: {
|
|
1168
|
-
supra: "",
|
|
1169
|
-
switchboard: "",
|
|
1170
|
-
pyth: {
|
|
1171
|
-
feed: "ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace",
|
|
1172
|
-
feedObject: "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab"
|
|
1173
|
-
}
|
|
1174
|
-
}
|
|
1175
|
-
},
|
|
1176
|
-
// @TODO: add test address
|
|
1177
|
-
// @ts-ignore
|
|
1178
|
-
sbusdt: {},
|
|
1179
|
-
// @ts-ignore
|
|
1180
|
-
sbwbtc: {},
|
|
1181
|
-
// @ts-ignore
|
|
1182
|
-
blub: {},
|
|
1183
|
-
fdusd: {
|
|
1184
|
-
id: "0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a",
|
|
1185
|
-
metaData: "0xdebee5265a67c186ed87fe93303d33dfe1de53e3b4fd7d9329c2852860acd3e7",
|
|
1186
|
-
treasury: "",
|
|
1187
|
-
oracle: {
|
|
1188
|
-
supra: "",
|
|
1189
|
-
switchboard: "",
|
|
1190
|
-
pyth: {
|
|
1191
|
-
feed: "0xccdc1a08923e2e4f4b1e6ea89de6acbc5fe1948e9706f5604b8cb50bc1ed3979",
|
|
1192
|
-
feedObject: "0x5f6583b2b0fe1ecf94aaffeaab8a838794693960cea48c0da282d5f4a24be027"
|
|
1193
|
-
}
|
|
1194
|
-
}
|
|
1195
|
-
},
|
|
1196
1141
|
deep: {
|
|
1197
1142
|
id: "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270",
|
|
1198
1143
|
metaData: "0x6e60b051a08fa836f5a7acd7c464c8d9825bc29c44657fe170fe9b8e1e4770c0",
|
|
@@ -1221,12 +1166,12 @@ var TEST_ADDRESSES = {
|
|
|
1221
1166
|
}
|
|
1222
1167
|
},
|
|
1223
1168
|
oracles: {
|
|
1224
|
-
xOracle: "
|
|
1169
|
+
xOracle: "0x0c09daac413e834f2fe69601c41e836022fa9a185df6b56a80f6bcd8a3ecb8a2",
|
|
1225
1170
|
xOracleCap: "0x1edeae568fde99e090dbdec4bcdbd33a15f53a1ce1f87aeef1a560dedf4b4a90",
|
|
1226
1171
|
supra: { registry: "", registryCap: "", holder: "" },
|
|
1227
1172
|
switchboard: { registry: "", registryCap: "" },
|
|
1228
1173
|
pyth: {
|
|
1229
|
-
registry: "
|
|
1174
|
+
registry: "0xdcf813893649521abd27816ba8d946b0cb7fc98d776cc9adcecba54688ccc109",
|
|
1230
1175
|
registryCap: "0xbcb07141eb1f7e01fbda4130ecf5f5adaeabb77f5d9c32158b7532bcd2197acd",
|
|
1231
1176
|
state: "0x1f9310238ee9298fb703c3419030b35b22bb1cc37113e3bb5007c99aec79e5b8",
|
|
1232
1177
|
wormhole: "0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a",
|
|
@@ -1251,46 +1196,36 @@ var TEST_ADDRESSES = {
|
|
|
1251
1196
|
upgradeCap: "0x3f203f6fff6a69d151e4f1cd931f22b68c489ef2759765662fc7baf673943c9e"
|
|
1252
1197
|
},
|
|
1253
1198
|
protocol: {
|
|
1254
|
-
id: "
|
|
1199
|
+
id: "0xb03fa00e2d9f17d78a9d48bd94d8852abec68c19d55e819096b1e062e69bfad1",
|
|
1255
1200
|
upgradeCap: "0x38527d154618d1fd5a644b90717fe07cf0e9f26b46b63e9568e611a3f86d5c1a"
|
|
1256
1201
|
},
|
|
1257
|
-
// protocol: {
|
|
1258
|
-
// id: '0x6e641f0dca8aedab3101d047e96439178f16301bf0b57fe8745086ff1195eb3e',
|
|
1259
|
-
// upgradeCap:
|
|
1260
|
-
// '0x38527d154618d1fd5a644b90717fe07cf0e9f26b46b63e9568e611a3f86d5c1a',
|
|
1261
|
-
// },
|
|
1262
1202
|
protocolWhitelist: {
|
|
1263
1203
|
id: "0x4c262d9343dac53ecb28f482a2a3f62c73d0ebac5b5f03d57383d56ff219acdf",
|
|
1264
1204
|
upgradeCap: "0x4a5e88a75039b00988f633f811f58117f31b8627a46bf822aa114d9010049449"
|
|
1265
1205
|
},
|
|
1266
|
-
// query: {
|
|
1267
|
-
// id: '0xb8d603a39114a5efef3dd0bf84df0bed1be1fbd39b78b7dd6e8a61ccc5e6006f',
|
|
1268
|
-
// upgradeCap:
|
|
1269
|
-
// '0x0d535c35f608b9b01b7ccce11acf43b1dd80c1b72bf8b541744a6e28e8d2745f',
|
|
1270
|
-
// },
|
|
1271
1206
|
query: {
|
|
1272
|
-
id: "
|
|
1207
|
+
id: "0x3a0dbce719fc56a96bf8e8dd53cd57eb9c313642a88d99b86f51208762eba258",
|
|
1208
|
+
object: "",
|
|
1273
1209
|
upgradeCap: "0x0d535c35f608b9b01b7ccce11acf43b1dd80c1b72bf8b541744a6e28e8d2745f"
|
|
1274
1210
|
},
|
|
1275
|
-
supra: { id: "", upgradeCap: "" },
|
|
1211
|
+
supra: { id: "", object: "", upgradeCap: "" },
|
|
1276
1212
|
pyth: {
|
|
1277
|
-
id: "
|
|
1213
|
+
id: "0xe622909f9252d4ef1737c41ea430ef44203d8f5dc8e01e1b3950a31405bc54eb",
|
|
1214
|
+
object: "0xe622909f9252d4ef1737c41ea430ef44203d8f5dc8e01e1b3950a31405bc54eb",
|
|
1278
1215
|
upgradeCap: "0xdf0ffbae1ea5bb25fbca5efba433dcf00c7cced65679af2f04728901275c6157"
|
|
1279
1216
|
},
|
|
1280
1217
|
switchboard: { id: "", upgradeCap: "" },
|
|
1281
1218
|
xOracle: {
|
|
1282
|
-
id: "
|
|
1219
|
+
id: "0xe7511600c924f1d0ac4b3fa5de3ae26b8845545902b015dc5fc7894307365d7b",
|
|
1220
|
+
object: "0xe7511600c924f1d0ac4b3fa5de3ae26b8845545902b015dc5fc7894307365d7b",
|
|
1283
1221
|
upgradeCap: "0x0f928a6b2e26b73330fecaf9b44acfc9800a4a9794d6415c2a3153bc70e3c1f0"
|
|
1284
1222
|
},
|
|
1285
1223
|
testCoin: { id: "", upgradeCap: "" }
|
|
1286
1224
|
}
|
|
1287
1225
|
},
|
|
1288
1226
|
spool: {
|
|
1289
|
-
// id: '0x7c4fdabe81c31b19a45d1e572a52a539997a90903fbb5bfab71480abe0fa62c3',
|
|
1290
1227
|
id: "0x1742655fe5872dfa6456673f9e38612a4965e6979e6cd7696a7f1225f28bae21",
|
|
1291
1228
|
adminCap: "0xdd8a047cbbf802bfcde5288b8ef1910965d789cc614da11d39af05fca0bd020a",
|
|
1292
|
-
// object:
|
|
1293
|
-
// '0xe87f1b2d498106a2c61421cec75b7b5c5e348512b0dc263949a0e7a3c256571a',
|
|
1294
1229
|
object: "0x1742655fe5872dfa6456673f9e38612a4965e6979e6cd7696a7f1225f28bae21",
|
|
1295
1230
|
pools: {
|
|
1296
1231
|
sweth: {
|
|
@@ -1298,72 +1233,48 @@ var TEST_ADDRESSES = {
|
|
|
1298
1233
|
rewardPoolId: "0x957de68a18d87817de8309b30c1ec269a4d87ae513abbeed86b5619cb9ce1077"
|
|
1299
1234
|
},
|
|
1300
1235
|
ssui: {
|
|
1301
|
-
// id: '0x4f0ba970d3c11db05c8f40c64a15b6a33322db3702d634ced6536960ab6f3ee4',
|
|
1302
1236
|
id: "0xb9617f83c06ebdeac0a8834782b1015e1cc7ea23739e30c132c4bfb95c37a579",
|
|
1303
|
-
rewardPoolId:
|
|
1304
|
-
// '0x162250ef72393a4ad3d46294c4e1bdfcb03f04c869d390e7efbfc995353a7ee9',
|
|
1305
|
-
"0xc3206071a8d43212efb6e3b5504f2321f8df97ab122b466c0bc7cfdf398dc13a"
|
|
1306
|
-
)
|
|
1237
|
+
rewardPoolId: "0xc3206071a8d43212efb6e3b5504f2321f8df97ab122b466c0bc7cfdf398dc13a"
|
|
1307
1238
|
},
|
|
1308
1239
|
susdc: {
|
|
1309
1240
|
id: "0x0b5f5f413bd3799e4052c37311966c77f3a4545eb125d2e93e67a68478021918",
|
|
1310
1241
|
rewardPoolId: "0x85ed6ed72ea97c35dbf0cdc7ed6fbc48d8ec15de9b17c74bf4512df8a6d7f166"
|
|
1311
1242
|
},
|
|
1312
1243
|
swusdc: {
|
|
1313
|
-
// id: '0x4ace6648ddc64e646ba47a957c562c32c9599b3bba8f5ac1aadb2ae23a2f8ca0',
|
|
1314
1244
|
id: "0xf1b383b9cf2e9f515fc69567df1053098f273849d09cd84b0278a773429bd2b2",
|
|
1315
|
-
rewardPoolId:
|
|
1316
|
-
// '0xf4268cc9b9413b9bfe09e8966b8de650494c9e5784bf0930759cfef4904daff8',
|
|
1317
|
-
"0xc71c53ee6505d928ba15bea4fe4f45d98c9c31eced94b72d00a7827d4b7ba3ff"
|
|
1318
|
-
)
|
|
1245
|
+
rewardPoolId: "0xc71c53ee6505d928ba15bea4fe4f45d98c9c31eced94b72d00a7827d4b7ba3ff"
|
|
1319
1246
|
},
|
|
1320
1247
|
swusdt: {
|
|
1321
|
-
// id: '0xcb328f7ffa7f9342ed85af3fdb2f22919e1a06dfb2f713c04c73543870d7548f',
|
|
1322
1248
|
id: "0xb5567dfa5c7fc17a249e959732664c50713dd8c23db1a11376b27df800c17418",
|
|
1323
|
-
rewardPoolId:
|
|
1324
|
-
// '0x2c9f934d67a5baa586ceec2cc24163a2f049a6af3d5ba36b84d8ac40f25c4080',
|
|
1325
|
-
"0x60768b0687ff0235e376a039709a683e4c436098785e473b67b32dbab47b69ab"
|
|
1326
|
-
)
|
|
1249
|
+
rewardPoolId: "0x60768b0687ff0235e376a039709a683e4c436098785e473b67b32dbab47b69ab"
|
|
1327
1250
|
},
|
|
1328
1251
|
scetus: {
|
|
1329
1252
|
id: "0xac1bb13bf4472a637c18c2415fb0e3c1227ea2bcf35242e50563c98215bd298e",
|
|
1330
1253
|
rewardPoolId: "0x6835c1224126a45086fc6406adc249e3f30df18d779ca4f4e570e38716a17f3f"
|
|
1331
1254
|
},
|
|
1332
1255
|
safsui: {
|
|
1333
|
-
// id: '0xeedf438abcaa6ce4d9625ffca110920592d5867e4c5637d84ad9f466c4feb800',
|
|
1334
1256
|
id: "0xc568bb4c991258e839aa54802ecda04fcd9838c826bc3b42b40af81b23c458c8",
|
|
1335
|
-
rewardPoolId:
|
|
1336
|
-
// '0x89255a2f86ed7fbfef35ab8b7be48cc7667015975be2685dd9a55a9a64baf76e',
|
|
1337
|
-
"0x389a3cbeda742b918941bb24fd00e077bad3367484394d6234f8209b9a6aa03d"
|
|
1338
|
-
)
|
|
1257
|
+
rewardPoolId: "0x389a3cbeda742b918941bb24fd00e077bad3367484394d6234f8209b9a6aa03d"
|
|
1339
1258
|
},
|
|
1340
1259
|
shasui: {
|
|
1341
|
-
// id: '0xa6148bc1b623e936d39a952ceb5bea79e8b37228a8f595067bf1852efd3c34aa',
|
|
1342
1260
|
id: "0x93f3f4499bf89f2d05ddc1f8b15f51701a7c6c4d0ac0b9c3bc99462cbbd8e321",
|
|
1343
|
-
rewardPoolId:
|
|
1344
|
-
// '0x6f3563644d3e2ef13176dbf9d865bd93479df60ccbe07b7e66db57f6309f5a66',
|
|
1345
|
-
"0x94cee1be7f5ff34193f3aabef0b14142cb28af4d905fe487a9a7d85a15edb6aa"
|
|
1346
|
-
)
|
|
1261
|
+
rewardPoolId: "0x94cee1be7f5ff34193f3aabef0b14142cb28af4d905fe487a9a7d85a15edb6aa"
|
|
1347
1262
|
},
|
|
1348
1263
|
svsui: {
|
|
1349
|
-
// id: '0x69ce8e537e750a95381e6040794afa5ab1758353a1a2e1de7760391b01f91670',
|
|
1350
1264
|
id: "0xa970e9087f80cb59e9299b8e7af7175d977ad6c9af0322aa4440e138fbd7ae00",
|
|
1351
|
-
rewardPoolId:
|
|
1352
|
-
// '0xbca914adce058ad0902c7f3cfcd698392a475f00dcfdc3f76001d0370b98777a',
|
|
1353
|
-
"0x38eee9699c4fc132a6623e54b865f047df4fc6eb83af807300f44e8f4b235ff0"
|
|
1354
|
-
)
|
|
1265
|
+
rewardPoolId: "0x38eee9699c4fc132a6623e54b865f047df4fc6eb83af807300f44e8f4b235ff0"
|
|
1355
1266
|
}
|
|
1356
1267
|
},
|
|
1357
1268
|
config: ""
|
|
1358
1269
|
},
|
|
1359
1270
|
borrowIncentive: {
|
|
1360
|
-
id: "
|
|
1271
|
+
id: "0x8fe05c796e779c71e7739dcaecefb8757ff9482f62e419dbd0dd9c35b740054f",
|
|
1361
1272
|
adminCap: "0x56ac8e6f2b360b2b35c0168d72cc6cd17d9592afb83709865cb87af24bb2025b",
|
|
1362
|
-
object: "
|
|
1363
|
-
query: "
|
|
1364
|
-
incentivePools: "
|
|
1365
|
-
incentiveAccounts: "
|
|
1366
|
-
config: "
|
|
1273
|
+
object: "0x8fe05c796e779c71e7739dcaecefb8757ff9482f62e419dbd0dd9c35b740054f",
|
|
1274
|
+
query: "0x5fba54ac5862f087112c54c02339623bd245721f5e21ea3330fc8c8afc8f51f4",
|
|
1275
|
+
incentivePools: "0xcace4f4736229043d9f897667d046370b8a4d6534bfd307787c40b4c9f42514a",
|
|
1276
|
+
incentiveAccounts: "0x41ff558f580ca0f711910fd6ef687fce9df76ee8e7fc5e150bdfae08e17fae62",
|
|
1277
|
+
config: "0x9636e7b947b806b9fe438d037f02bb24026c5b2691d2f6bad349c2e117f77cc3"
|
|
1367
1278
|
},
|
|
1368
1279
|
referral: {
|
|
1369
1280
|
id: "0x1bf5a8ce77050d8052549d743e16b469f15aa6b81b752b78b6ebb65179665f5a",
|
|
@@ -1375,8 +1286,6 @@ var TEST_ADDRESSES = {
|
|
|
1375
1286
|
revenueTableId: "0x595baa3654c297bff84ab7786a2d250f019cefc66e8df8e89fd9d41e02bd30dd",
|
|
1376
1287
|
referralTiers: "0x144350f3db9b46d11b140084cd54e6de0b9c3b8d265ce8059b51d0ef58ea464b",
|
|
1377
1288
|
tiersTableId: "0xeac755a7a8b7798530905ac79e8c114f19d0f130f6eab012954f08faac29c75d",
|
|
1378
|
-
// authorizedWitnessList:
|
|
1379
|
-
// '0xf21b0ed043c9bb70842c0129159f4943dbcc3c9ef2f2f808af65f8be25cfd20e',
|
|
1380
1289
|
authorizedWitnessList: "0x9d6223dc52015b8a3986a573590ef2af8f1b8f3e4685513888c052f001b87e7f",
|
|
1381
1290
|
version: "0x3545849eb97723e676a476ec9d4fe5f2eb0eb2c6b78972851114fd4c7ed4639f"
|
|
1382
1291
|
},
|
|
@@ -1396,19 +1305,19 @@ var TEST_ADDRESSES = {
|
|
|
1396
1305
|
userRewardTableId: "0x748a80395849ed37db1b0e14f2ab5d1d96458d2359ab3a84eb079d0f4ac7cf2e"
|
|
1397
1306
|
},
|
|
1398
1307
|
scoin: {
|
|
1399
|
-
id: "
|
|
1308
|
+
id: "0x826a4934bee9487e558eed603cf42f30cdc4321d6f31083930791b95f903b9f9",
|
|
1400
1309
|
coins: {
|
|
1401
1310
|
ssui: {
|
|
1402
|
-
coinType: "
|
|
1403
|
-
treasury: "
|
|
1404
|
-
},
|
|
1405
|
-
scetus: {
|
|
1406
|
-
coinType: "0x8b71e6d323ed78515af2bead13bf3d0da1562ba4a99234eb7c4f14fd39ef0427::scallop_cetus::SCALLOP_CETUS",
|
|
1407
|
-
treasury: "0xd786f4b2d26278cc7911a3445b1b085eab60f269ef9dbb6b87e803d52f155003"
|
|
1311
|
+
coinType: "0x88618204de2dfdc2597681a8441ee726b0dc13494c41e319c3264eb7b35fea90::scallop_sui::SCALLOP_SUI",
|
|
1312
|
+
treasury: "0x03f1d94a40bd9f5d556bacb5c5245732b185572f6a29b36ad8b555d9a8a24f09"
|
|
1408
1313
|
},
|
|
1409
1314
|
ssca: {
|
|
1410
|
-
coinType: "
|
|
1411
|
-
treasury: "
|
|
1315
|
+
coinType: "0x9f64a180373a6b66595025ae16a4ab701f0af1dd5c7ce1ac91dc112e52c2a3f8::scallop_sca::SCALLOP_SCA",
|
|
1316
|
+
treasury: "0x1b05d2cd8b20dba19da073a54195fc52d2f438ea19dea0713bae7a7dab308199"
|
|
1317
|
+
},
|
|
1318
|
+
susdc: {
|
|
1319
|
+
coinType: "0x55ed015f9f006c0c96ad36ebe3b3570d088e8498f52defea48e5634c110e485c::scallop_usdc::SCALLOP_USDC",
|
|
1320
|
+
treasury: "0x6ef82ef94472dcb8c2cdeac8df38874024c08570ca165986ba56d1e38fe0c0a3"
|
|
1412
1321
|
},
|
|
1413
1322
|
swusdc: {
|
|
1414
1323
|
coinType: "0xf5447c4305a486d8c8557559887c2c39449ddb5e748f15d33946d02a1663c158::scallop_wormhole_usdc::SCALLOP_WORMHOLE_USDC",
|
|
@@ -1443,12 +1352,12 @@ var TEST_ADDRESSES = {
|
|
|
1443
1352
|
treasury: "0xdad9bc6293e694f67a5274ea51b596e0bdabfafc585ae6d7e82888e65f1a03e0"
|
|
1444
1353
|
},
|
|
1445
1354
|
sdeep: {
|
|
1446
|
-
coinType: "
|
|
1447
|
-
treasury: "
|
|
1355
|
+
coinType: "0x34f0a2e793e1f79ceac72cfe3bb95f65541da449418289ccd12922d16140c882::scallop_deep::SCALLOP_DEEP",
|
|
1356
|
+
treasury: "0x71d41465cf2d16fa0206126526bebdf65c8871d1fcfbd0c2237db2306afd67ba"
|
|
1448
1357
|
},
|
|
1449
1358
|
sfud: {
|
|
1450
|
-
coinType: "
|
|
1451
|
-
treasury: "
|
|
1359
|
+
coinType: "0x3b23c05f917052255a0b16a534dbd4446911aa4a30bd3497cdf5b736551e7ef8::scallop_fud::SCALLOP_FUD",
|
|
1360
|
+
treasury: "0x858c492d51425b922c040c1a389e185b3b00d565e7d72ead1a81dc733104660d"
|
|
1452
1361
|
}
|
|
1453
1362
|
}
|
|
1454
1363
|
}
|
|
@@ -1461,6 +1370,31 @@ var MAX_LOCK_DURATION = MAX_LOCK_ROUNDS * UNLOCK_ROUND_DURATION;
|
|
|
1461
1370
|
var MIN_INITIAL_LOCK_AMOUNT = 1e10;
|
|
1462
1371
|
var MIN_TOP_UP_AMOUNT = 1e9;
|
|
1463
1372
|
|
|
1373
|
+
// src/constants/xoracle.ts
|
|
1374
|
+
var xOracleList = {
|
|
1375
|
+
// @TODO: Update to real oracle list
|
|
1376
|
+
usdc: { primary: ["pyth"], secondary: [] },
|
|
1377
|
+
sbeth: { primary: [], secondary: [] },
|
|
1378
|
+
sbusdt: { primary: [], secondary: [] },
|
|
1379
|
+
sbwbtc: { primary: [], secondary: [] },
|
|
1380
|
+
weth: { primary: [], secondary: [] },
|
|
1381
|
+
wbtc: { primary: [], secondary: [] },
|
|
1382
|
+
wusdc: { primary: [], secondary: [] },
|
|
1383
|
+
wusdt: { primary: [], secondary: [] },
|
|
1384
|
+
sui: { primary: ["pyth"], secondary: [] },
|
|
1385
|
+
wapt: { primary: [], secondary: [] },
|
|
1386
|
+
wsol: { primary: [], secondary: [] },
|
|
1387
|
+
cetus: { primary: [], secondary: [] },
|
|
1388
|
+
afsui: { primary: [], secondary: [] },
|
|
1389
|
+
hasui: { primary: [], secondary: [] },
|
|
1390
|
+
vsui: { primary: [], secondary: [] },
|
|
1391
|
+
sca: { primary: ["pyth"], secondary: [] },
|
|
1392
|
+
fud: { primary: ["pyth"], secondary: [] },
|
|
1393
|
+
deep: { primary: ["pyth"], secondary: [] },
|
|
1394
|
+
fdusd: { primary: [], secondary: [] },
|
|
1395
|
+
blub: { primary: [], secondary: [] }
|
|
1396
|
+
};
|
|
1397
|
+
|
|
1464
1398
|
// src/models/scallopCache.ts
|
|
1465
1399
|
import { QueryClient } from "@tanstack/query-core";
|
|
1466
1400
|
import {
|
|
@@ -3036,7 +2970,7 @@ var parseDataFromPythPriceFeed = (feed, address) => {
|
|
|
3036
2970
|
publishTime: Number(feed.price.publishTime) * 10 ** 3
|
|
3037
2971
|
};
|
|
3038
2972
|
} else {
|
|
3039
|
-
throw new Error(
|
|
2973
|
+
throw new Error(`Invalid feed id: ${feed.id}`);
|
|
3040
2974
|
}
|
|
3041
2975
|
};
|
|
3042
2976
|
var findClosestUnlockRound = (unlockAtInSecondTimestamp) => {
|
|
@@ -3284,7 +3218,7 @@ var getBindedVeScaKey = async ({
|
|
|
3284
3218
|
};
|
|
3285
3219
|
|
|
3286
3220
|
// src/queries/coreQuery.ts
|
|
3287
|
-
import { normalizeStructTag as normalizeStructTag4 } from "@mysten/sui/utils";
|
|
3221
|
+
import { normalizeStructTag as normalizeStructTag4, SUI_CLOCK_OBJECT_ID } from "@mysten/sui/utils";
|
|
3288
3222
|
import BigNumber3 from "bignumber.js";
|
|
3289
3223
|
|
|
3290
3224
|
// src/queries/supplyLimitQuery.ts
|
|
@@ -4025,7 +3959,7 @@ var getObligations = async ({
|
|
|
4025
3959
|
address
|
|
4026
3960
|
}, ownerAddress) => {
|
|
4027
3961
|
const owner = ownerAddress;
|
|
4028
|
-
const protocolObjectId = address.get("core.object")
|
|
3962
|
+
const protocolObjectId = address.get("core.object") || PROTOCOL_OBJECT_ID;
|
|
4029
3963
|
const keyObjectsResponse = [];
|
|
4030
3964
|
let hasNextPage = false;
|
|
4031
3965
|
let nextCursor = null;
|
|
@@ -4086,10 +4020,19 @@ var getObligationLocked = async (cache, obligation) => {
|
|
|
4086
4020
|
};
|
|
4087
4021
|
var queryObligation = async ({
|
|
4088
4022
|
address
|
|
4089
|
-
}, obligationId) => {
|
|
4023
|
+
}, obligationId, version = address.get("core.version"), market = address.get("core.market")) => {
|
|
4090
4024
|
const packageId = address.get("core.packages.query.id");
|
|
4091
4025
|
const queryTarget = `${packageId}::obligation_query::obligation_data`;
|
|
4092
|
-
const args = [
|
|
4026
|
+
const args = [
|
|
4027
|
+
version,
|
|
4028
|
+
market,
|
|
4029
|
+
obligationId,
|
|
4030
|
+
{
|
|
4031
|
+
objectId: SUI_CLOCK_OBJECT_ID,
|
|
4032
|
+
mutable: false,
|
|
4033
|
+
initialSharedVersion: "1"
|
|
4034
|
+
}
|
|
4035
|
+
];
|
|
4093
4036
|
const queryResult = await address.cache.queryInspectTxn(
|
|
4094
4037
|
{ queryTarget, args }
|
|
4095
4038
|
// txBlock
|
|
@@ -5043,9 +4986,9 @@ var getPythPrices = async ({
|
|
|
5043
4986
|
{}
|
|
5044
4987
|
);
|
|
5045
4988
|
};
|
|
5046
|
-
var getAllCoinPrices = async (query, marketPools, coinPrices) => {
|
|
5047
|
-
coinPrices = coinPrices ?? await query.utils.getCoinPrices();
|
|
5048
|
-
marketPools = marketPools ?? (await query.getMarketPools(void 0, { coinPrices })).pools;
|
|
4989
|
+
var getAllCoinPrices = async (query, marketPools, coinPrices, indexer = false) => {
|
|
4990
|
+
coinPrices = coinPrices ?? (indexer ? await query.getCoinPricesByIndexer() : await query.utils.getCoinPrices());
|
|
4991
|
+
marketPools = marketPools ?? (await query.getMarketPools(void 0, { coinPrices, indexer })).pools;
|
|
5049
4992
|
if (!marketPools) {
|
|
5050
4993
|
throw new Error(`Failed to fetch market pool for getAllCoinPrices`);
|
|
5051
4994
|
}
|
|
@@ -5525,7 +5468,7 @@ var getStakeRewardPool = async ({
|
|
|
5525
5468
|
|
|
5526
5469
|
// src/queries/vescaQuery.ts
|
|
5527
5470
|
import BigNumber8 from "bignumber.js";
|
|
5528
|
-
import { SUI_CLOCK_OBJECT_ID, SuiTxBlock as SuiTxBlock2 } from "@scallop-io/sui-kit";
|
|
5471
|
+
import { SUI_CLOCK_OBJECT_ID as SUI_CLOCK_OBJECT_ID2, SuiTxBlock as SuiTxBlock2 } from "@scallop-io/sui-kit";
|
|
5529
5472
|
import { bcs as bcs2 } from "@mysten/sui/bcs";
|
|
5530
5473
|
import { z as zod5 } from "zod";
|
|
5531
5474
|
import assert2 from "assert";
|
|
@@ -5626,25 +5569,15 @@ var getTotalVeScaTreasuryAmount = async (utils, veScaTreasury) => {
|
|
|
5626
5569
|
const veScaConfig = utils.address.get("vesca.config");
|
|
5627
5570
|
veScaTreasury = veScaTreasury ?? utils.address.get("vesca.treasury");
|
|
5628
5571
|
const txb = new SuiTxBlock2();
|
|
5572
|
+
const clockObjectRef = txb.sharedObjectRef({
|
|
5573
|
+
objectId: SUI_CLOCK_OBJECT_ID2,
|
|
5574
|
+
mutable: false,
|
|
5575
|
+
initialSharedVersion: "1"
|
|
5576
|
+
});
|
|
5629
5577
|
const refreshQueryTarget = `${veScaPkgId}::treasury::refresh`;
|
|
5630
|
-
const refreshArgs = [
|
|
5631
|
-
veScaConfig,
|
|
5632
|
-
veScaTreasury,
|
|
5633
|
-
txb.sharedObjectRef({
|
|
5634
|
-
objectId: SUI_CLOCK_OBJECT_ID,
|
|
5635
|
-
mutable: false,
|
|
5636
|
-
initialSharedVersion: "1"
|
|
5637
|
-
})
|
|
5638
|
-
];
|
|
5578
|
+
const refreshArgs = [veScaConfig, veScaTreasury, clockObjectRef];
|
|
5639
5579
|
const veScaAmountQueryTarget = `${veScaPkgId}::treasury::total_ve_sca_amount`;
|
|
5640
|
-
const veScaAmountArgs = [
|
|
5641
|
-
veScaTreasury,
|
|
5642
|
-
txb.sharedObjectRef({
|
|
5643
|
-
objectId: SUI_CLOCK_OBJECT_ID,
|
|
5644
|
-
mutable: false,
|
|
5645
|
-
initialSharedVersion: "1"
|
|
5646
|
-
})
|
|
5647
|
-
];
|
|
5580
|
+
const veScaAmountArgs = [veScaTreasury, clockObjectRef];
|
|
5648
5581
|
const resolvedRefreshArgs = await Promise.all(
|
|
5649
5582
|
refreshArgs.map(async (arg) => {
|
|
5650
5583
|
if (typeof arg === "string") {
|
|
@@ -5708,14 +5641,14 @@ var getVeScaTreasuryInfo = async (utils) => {
|
|
|
5708
5641
|
};
|
|
5709
5642
|
|
|
5710
5643
|
// src/queries/poolAddressesQuery.ts
|
|
5711
|
-
var getAllAddresses = async (query) => {
|
|
5644
|
+
var getAllAddresses = async (query, pools = [...SUPPORT_POOLS]) => {
|
|
5712
5645
|
const results = {};
|
|
5713
5646
|
const marketId = query.address.get("core.market");
|
|
5714
5647
|
const marketObject = (await query.cache.queryGetObject(marketId))?.data;
|
|
5715
5648
|
if (!(marketObject && marketObject.content?.dataType === "moveObject"))
|
|
5716
5649
|
throw new Error(`Failed to fetch marketObject`);
|
|
5717
5650
|
const fields = marketObject.content.fields;
|
|
5718
|
-
const coinTypesPairs =
|
|
5651
|
+
const coinTypesPairs = pools.reduce(
|
|
5719
5652
|
(acc, pool) => {
|
|
5720
5653
|
acc.push([pool, query.utils.parseCoinType(pool).substring(2)]);
|
|
5721
5654
|
return acc;
|
|
@@ -5833,6 +5766,78 @@ var getAllAddresses = async (query) => {
|
|
|
5833
5766
|
return results;
|
|
5834
5767
|
};
|
|
5835
5768
|
|
|
5769
|
+
// src/queries/xOracleQuery.ts
|
|
5770
|
+
var PRIMARY_PRICE_UPDATE_POLICY = "0xbcd908d0ee6d63d726e61676f3feeec3d19817f4849bbecf372dd3399f247f6b";
|
|
5771
|
+
var SECONDARY_PRICE_UPDDATE_POLICY = "0x624a6f120777bb30e718b86e836c205ef4229448052377dc3d78272a6662b2c0";
|
|
5772
|
+
var getPriceUpdatePolicies = async (address) => {
|
|
5773
|
+
const priceUpdatePolicyRulesKeyType = `${address.get("core.packages.xOracle.object")}::price_update_policy::PriceUpdatePolicyRulesKey`;
|
|
5774
|
+
const [primaryPriceUpdatePolicyTable, secondaryPriceUpdatePolicyTable] = await Promise.all([
|
|
5775
|
+
address.cache.queryGetDynamicFieldObject({
|
|
5776
|
+
parentId: PRIMARY_PRICE_UPDATE_POLICY,
|
|
5777
|
+
name: {
|
|
5778
|
+
type: priceUpdatePolicyRulesKeyType,
|
|
5779
|
+
value: { dummy_field: false }
|
|
5780
|
+
}
|
|
5781
|
+
}),
|
|
5782
|
+
address.cache.queryGetDynamicFieldObject({
|
|
5783
|
+
parentId: SECONDARY_PRICE_UPDDATE_POLICY,
|
|
5784
|
+
name: {
|
|
5785
|
+
type: priceUpdatePolicyRulesKeyType,
|
|
5786
|
+
value: { dummy_field: false }
|
|
5787
|
+
}
|
|
5788
|
+
})
|
|
5789
|
+
]);
|
|
5790
|
+
return {
|
|
5791
|
+
primary: primaryPriceUpdatePolicyTable,
|
|
5792
|
+
secondary: secondaryPriceUpdatePolicyTable
|
|
5793
|
+
};
|
|
5794
|
+
};
|
|
5795
|
+
var PRIMARY_PRICE_UPDATE_POLICY_VECSET_ID = "0xfb1330aa028ed6a159b742c71b5a79b3b6824cf71efa40ea82b52486ad209264";
|
|
5796
|
+
var SECONDARY_PRICE_UPDATE_POLICY_VECSET_ID = "0x4b827acc73f3f53f808dd73a7ee0a60ae61e84322176bece72b26467030b467c";
|
|
5797
|
+
var getAssetOracles = async (utils, ruleType) => {
|
|
5798
|
+
const ruleTypeNameToOracleType = {
|
|
5799
|
+
[`${utils.address.get("core.packages.pyth.object")}::rule::Rule`]: "pyth",
|
|
5800
|
+
[`${utils.address.get("core.packages.supra.object")}::rule::Rule`]: "supra",
|
|
5801
|
+
[`${utils.address.get("core.packages.switchboard.object")}::rule::Rule`]: "switchboard"
|
|
5802
|
+
};
|
|
5803
|
+
const assetPrimaryOracles = {};
|
|
5804
|
+
let cursor = null;
|
|
5805
|
+
do {
|
|
5806
|
+
const response = await utils.cache.queryGetDynamicFields({
|
|
5807
|
+
parentId: ruleType === "primary" ? PRIMARY_PRICE_UPDATE_POLICY_VECSET_ID : SECONDARY_PRICE_UPDATE_POLICY_VECSET_ID,
|
|
5808
|
+
cursor,
|
|
5809
|
+
limit: 10
|
|
5810
|
+
});
|
|
5811
|
+
if (!response)
|
|
5812
|
+
break;
|
|
5813
|
+
const { data, hasNextPage, nextCursor } = response;
|
|
5814
|
+
cursor = nextCursor;
|
|
5815
|
+
const objectIds = data.map((dynamicField) => dynamicField.objectId);
|
|
5816
|
+
const objectResponses = await utils.cache.queryGetObjects(objectIds);
|
|
5817
|
+
objectResponses.forEach((object) => {
|
|
5818
|
+
if (!object.content || object.content.dataType !== "moveObject")
|
|
5819
|
+
return;
|
|
5820
|
+
const fields = object.content.fields;
|
|
5821
|
+
const typeName = fields.name.fields.name;
|
|
5822
|
+
const assetName = utils.parseCoinNameFromType(`0x${typeName}`);
|
|
5823
|
+
if (!assetName)
|
|
5824
|
+
throw new Error(`Invalid asset name: ${assetName}`);
|
|
5825
|
+
if (!assetPrimaryOracles[assetName]) {
|
|
5826
|
+
assetPrimaryOracles[assetName] = [];
|
|
5827
|
+
}
|
|
5828
|
+
const value = fields.value;
|
|
5829
|
+
value.fields.contents.forEach((content) => {
|
|
5830
|
+
assetPrimaryOracles[assetName].push(
|
|
5831
|
+
ruleTypeNameToOracleType[`0x${content.fields.name}`]
|
|
5832
|
+
);
|
|
5833
|
+
});
|
|
5834
|
+
});
|
|
5835
|
+
if (!hasNextPage)
|
|
5836
|
+
break;
|
|
5837
|
+
} while (cursor);
|
|
5838
|
+
return assetPrimaryOracles;
|
|
5839
|
+
};
|
|
5840
|
+
|
|
5836
5841
|
// src/models/scallopUtils.ts
|
|
5837
5842
|
var ScallopUtils = class {
|
|
5838
5843
|
constructor(params, instance) {
|
|
@@ -6024,7 +6029,7 @@ var ScallopUtils = class {
|
|
|
6024
6029
|
* @return Market coin type.
|
|
6025
6030
|
*/
|
|
6026
6031
|
parseMarketCoinType(coinName) {
|
|
6027
|
-
const protocolObjectId = this.address.get("core.object")
|
|
6032
|
+
const protocolObjectId = this.address.get("core.object") || PROTOCOL_OBJECT_ID;
|
|
6028
6033
|
const coinType = this.parseCoinType(coinName, true);
|
|
6029
6034
|
return `${protocolObjectId}::reserve::MarketCoin<${coinType}>`;
|
|
6030
6035
|
}
|
|
@@ -6315,22 +6320,28 @@ import { normalizeSuiAddress as normalizeSuiAddress2 } from "@mysten/sui/utils";
|
|
|
6315
6320
|
|
|
6316
6321
|
// src/builders/coreBuilder.ts
|
|
6317
6322
|
import { Transaction } from "@mysten/sui/transactions";
|
|
6318
|
-
import { SUI_CLOCK_OBJECT_ID as
|
|
6323
|
+
import { SUI_CLOCK_OBJECT_ID as SUI_CLOCK_OBJECT_ID4 } from "@mysten/sui/utils";
|
|
6319
6324
|
import { SuiTxBlock as SuiKitTxBlock } from "@scallop-io/sui-kit";
|
|
6320
6325
|
|
|
6321
6326
|
// src/builders/oracle.ts
|
|
6322
|
-
import { SUI_CLOCK_OBJECT_ID as
|
|
6327
|
+
import { SUI_CLOCK_OBJECT_ID as SUI_CLOCK_OBJECT_ID3 } from "@mysten/sui/utils";
|
|
6323
6328
|
import {
|
|
6324
6329
|
SuiPythClient,
|
|
6325
6330
|
SuiPriceServiceConnection as SuiPriceServiceConnection2
|
|
6326
6331
|
} from "@pythnetwork/pyth-sui-js";
|
|
6327
|
-
var updateOracles = async (builder, txBlock, assetCoinNames
|
|
6332
|
+
var updateOracles = async (builder, txBlock, assetCoinNames = [
|
|
6333
|
+
.../* @__PURE__ */ new Set([...SUPPORT_POOLS, ...SUPPORT_COLLATERALS])
|
|
6334
|
+
], options = { usePythPullModel: true }) => {
|
|
6328
6335
|
const usePythPullModel = builder.params.usePythPullModel ?? options.usePythPullModel;
|
|
6329
|
-
|
|
6330
|
-
|
|
6336
|
+
const flattenedRules = [
|
|
6337
|
+
...new Set(
|
|
6338
|
+
Object.values(xOracleList).flatMap(({ primary, secondary }) => [
|
|
6339
|
+
...primary,
|
|
6340
|
+
...secondary
|
|
6341
|
+
])
|
|
6342
|
+
)
|
|
6331
6343
|
];
|
|
6332
|
-
|
|
6333
|
-
if (usePythPullModel && rules.includes("pyth")) {
|
|
6344
|
+
if (flattenedRules.includes("pyth") && usePythPullModel) {
|
|
6334
6345
|
const pythClient = new SuiPythClient(
|
|
6335
6346
|
builder.suiKit.client(),
|
|
6336
6347
|
builder.address.get("core.oracles.pyth.state"),
|
|
@@ -6360,7 +6371,12 @@ var updateOracles = async (builder, txBlock, assetCoinNames, options = { usePyth
|
|
|
6360
6371
|
}
|
|
6361
6372
|
const updateAssetCoinNames = [...new Set(assetCoinNames)];
|
|
6362
6373
|
for (const assetCoinName of updateAssetCoinNames) {
|
|
6363
|
-
await updateOracle(
|
|
6374
|
+
await updateOracle(
|
|
6375
|
+
builder,
|
|
6376
|
+
txBlock,
|
|
6377
|
+
assetCoinName,
|
|
6378
|
+
xOracleList[assetCoinName]
|
|
6379
|
+
);
|
|
6364
6380
|
}
|
|
6365
6381
|
};
|
|
6366
6382
|
var updateOracle = async (builder, txBlock, assetCoinName, rules) => {
|
|
@@ -6390,37 +6406,42 @@ var updatePrice = (txBlock, rules, xOraclePackageId, xOracleId, pythPackageId, p
|
|
|
6390
6406
|
xOracleId,
|
|
6391
6407
|
coinType
|
|
6392
6408
|
);
|
|
6393
|
-
|
|
6394
|
-
|
|
6395
|
-
|
|
6396
|
-
|
|
6397
|
-
|
|
6398
|
-
|
|
6399
|
-
|
|
6400
|
-
|
|
6401
|
-
|
|
6402
|
-
|
|
6403
|
-
|
|
6404
|
-
|
|
6405
|
-
|
|
6406
|
-
|
|
6407
|
-
|
|
6408
|
-
|
|
6409
|
-
|
|
6410
|
-
|
|
6411
|
-
|
|
6412
|
-
|
|
6413
|
-
|
|
6414
|
-
|
|
6415
|
-
|
|
6416
|
-
|
|
6417
|
-
|
|
6418
|
-
|
|
6419
|
-
|
|
6420
|
-
|
|
6421
|
-
|
|
6422
|
-
|
|
6423
|
-
|
|
6409
|
+
Object.entries(rules).forEach(([type, rule]) => {
|
|
6410
|
+
if (rule.includes("pyth")) {
|
|
6411
|
+
updatePythPrice(
|
|
6412
|
+
type,
|
|
6413
|
+
txBlock,
|
|
6414
|
+
pythPackageId,
|
|
6415
|
+
request,
|
|
6416
|
+
pythStateId,
|
|
6417
|
+
pythFeedObjectId,
|
|
6418
|
+
pythRegistryId,
|
|
6419
|
+
coinType
|
|
6420
|
+
);
|
|
6421
|
+
}
|
|
6422
|
+
if (rule.includes("supra")) {
|
|
6423
|
+
updateSupraPrice(
|
|
6424
|
+
type,
|
|
6425
|
+
txBlock,
|
|
6426
|
+
supraPackageId,
|
|
6427
|
+
request,
|
|
6428
|
+
supraHolderId,
|
|
6429
|
+
supraRegistryId,
|
|
6430
|
+
coinType
|
|
6431
|
+
);
|
|
6432
|
+
}
|
|
6433
|
+
if (rule.includes("switchboard")) {
|
|
6434
|
+
updateSwitchboardPrice(
|
|
6435
|
+
type,
|
|
6436
|
+
txBlock,
|
|
6437
|
+
switchboardPackageId,
|
|
6438
|
+
request,
|
|
6439
|
+
switchboardAggregatorId,
|
|
6440
|
+
switchboardRegistryId,
|
|
6441
|
+
coinType
|
|
6442
|
+
);
|
|
6443
|
+
}
|
|
6444
|
+
});
|
|
6424
6445
|
confirmPriceUpdateRequest(
|
|
6425
6446
|
txBlock,
|
|
6426
6447
|
xOraclePackageId,
|
|
@@ -6444,7 +6465,7 @@ var confirmPriceUpdateRequest = (txBlock, packageId, xOracleId, request, coinTyp
|
|
|
6444
6465
|
xOracleId,
|
|
6445
6466
|
request,
|
|
6446
6467
|
txBlock.sharedObjectRef({
|
|
6447
|
-
objectId:
|
|
6468
|
+
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6448
6469
|
mutable: false,
|
|
6449
6470
|
initialSharedVersion: "1"
|
|
6450
6471
|
})
|
|
@@ -6453,50 +6474,50 @@ var confirmPriceUpdateRequest = (txBlock, packageId, xOracleId, request, coinTyp
|
|
|
6453
6474
|
);
|
|
6454
6475
|
return txBlock;
|
|
6455
6476
|
};
|
|
6456
|
-
var updateSupraPrice = (txBlock, packageId, request, holderId, registryId, coinType) => {
|
|
6477
|
+
var updateSupraPrice = (type, txBlock, packageId, request, holderId, registryId, coinType) => {
|
|
6457
6478
|
txBlock.moveCall(
|
|
6458
|
-
`${packageId}::rule::
|
|
6479
|
+
`${packageId}::rule::set_price_as_${type}`,
|
|
6459
6480
|
[
|
|
6460
6481
|
request,
|
|
6461
6482
|
holderId,
|
|
6462
6483
|
registryId,
|
|
6463
6484
|
txBlock.sharedObjectRef({
|
|
6464
|
-
objectId:
|
|
6465
|
-
|
|
6466
|
-
|
|
6485
|
+
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6486
|
+
initialSharedVersion: "1",
|
|
6487
|
+
mutable: false
|
|
6467
6488
|
})
|
|
6468
6489
|
],
|
|
6469
6490
|
[coinType]
|
|
6470
6491
|
);
|
|
6471
6492
|
};
|
|
6472
|
-
var updateSwitchboardPrice = (txBlock, packageId, request, aggregatorId, registryId, coinType) => {
|
|
6493
|
+
var updateSwitchboardPrice = (type, txBlock, packageId, request, aggregatorId, registryId, coinType) => {
|
|
6473
6494
|
txBlock.moveCall(
|
|
6474
|
-
`${packageId}::rule::
|
|
6495
|
+
`${packageId}::rule::set_price_as_${type}`,
|
|
6475
6496
|
[
|
|
6476
6497
|
request,
|
|
6477
6498
|
aggregatorId,
|
|
6478
6499
|
registryId,
|
|
6479
6500
|
txBlock.sharedObjectRef({
|
|
6480
|
-
objectId:
|
|
6481
|
-
|
|
6482
|
-
|
|
6501
|
+
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6502
|
+
initialSharedVersion: "1",
|
|
6503
|
+
mutable: false
|
|
6483
6504
|
})
|
|
6484
6505
|
],
|
|
6485
6506
|
[coinType]
|
|
6486
6507
|
);
|
|
6487
6508
|
};
|
|
6488
|
-
var updatePythPrice = (txBlock, packageId, request, stateId, feedObjectId, registryId, coinType) => {
|
|
6509
|
+
var updatePythPrice = (type, txBlock, packageId, request, stateId, feedObjectId, registryId, coinType) => {
|
|
6489
6510
|
txBlock.moveCall(
|
|
6490
|
-
`${packageId}::rule::
|
|
6511
|
+
`${packageId}::rule::set_price_as_${type}`,
|
|
6491
6512
|
[
|
|
6492
6513
|
request,
|
|
6493
6514
|
stateId,
|
|
6494
6515
|
feedObjectId,
|
|
6495
6516
|
registryId,
|
|
6496
6517
|
txBlock.sharedObjectRef({
|
|
6497
|
-
objectId:
|
|
6498
|
-
|
|
6499
|
-
|
|
6518
|
+
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6519
|
+
initialSharedVersion: "1",
|
|
6520
|
+
mutable: false
|
|
6500
6521
|
})
|
|
6501
6522
|
],
|
|
6502
6523
|
[coinType]
|
|
@@ -6533,6 +6554,11 @@ var generateCoreNormalMethod = ({
|
|
|
6533
6554
|
};
|
|
6534
6555
|
const referralPkgId = builder.address.get("referral.id");
|
|
6535
6556
|
const referralWitnessType = `${referralPkgId}::scallop_referral_program::REFERRAL_WITNESS`;
|
|
6557
|
+
const clockObjectRef = txBlock.sharedObjectRef({
|
|
6558
|
+
objectId: SUI_CLOCK_OBJECT_ID4,
|
|
6559
|
+
mutable: false,
|
|
6560
|
+
initialSharedVersion: "1"
|
|
6561
|
+
});
|
|
6536
6562
|
return {
|
|
6537
6563
|
openObligation: () => {
|
|
6538
6564
|
const [obligation, obligationKey, obligationHotPotato] = builder.moveCall(
|
|
@@ -6578,11 +6604,7 @@ var generateCoreNormalMethod = ({
|
|
|
6578
6604
|
coreIds.coinDecimalsRegistry,
|
|
6579
6605
|
txBlock.pure.u64(amount),
|
|
6580
6606
|
coreIds.xOracle,
|
|
6581
|
-
|
|
6582
|
-
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6583
|
-
mutable: false,
|
|
6584
|
-
initialSharedVersion: "1"
|
|
6585
|
-
})
|
|
6607
|
+
clockObjectRef
|
|
6586
6608
|
],
|
|
6587
6609
|
[coinType]
|
|
6588
6610
|
);
|
|
@@ -6592,16 +6614,7 @@ var generateCoreNormalMethod = ({
|
|
|
6592
6614
|
return builder.moveCall(
|
|
6593
6615
|
txBlock,
|
|
6594
6616
|
`${coreIds.protocolPkg}::mint::mint`,
|
|
6595
|
-
[
|
|
6596
|
-
coreIds.version,
|
|
6597
|
-
coreIds.market,
|
|
6598
|
-
coin,
|
|
6599
|
-
txBlock.sharedObjectRef({
|
|
6600
|
-
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6601
|
-
mutable: false,
|
|
6602
|
-
initialSharedVersion: "1"
|
|
6603
|
-
})
|
|
6604
|
-
],
|
|
6617
|
+
[coreIds.version, coreIds.market, coin, clockObjectRef],
|
|
6605
6618
|
[coinType]
|
|
6606
6619
|
);
|
|
6607
6620
|
},
|
|
@@ -6610,16 +6623,7 @@ var generateCoreNormalMethod = ({
|
|
|
6610
6623
|
return builder.moveCall(
|
|
6611
6624
|
txBlock,
|
|
6612
6625
|
`${coreIds.protocolPkg}::mint::mint_entry`,
|
|
6613
|
-
[
|
|
6614
|
-
coreIds.version,
|
|
6615
|
-
coreIds.market,
|
|
6616
|
-
coin,
|
|
6617
|
-
txBlock.sharedObjectRef({
|
|
6618
|
-
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6619
|
-
mutable: false,
|
|
6620
|
-
initialSharedVersion: "1"
|
|
6621
|
-
})
|
|
6622
|
-
],
|
|
6626
|
+
[coreIds.version, coreIds.market, coin, clockObjectRef],
|
|
6623
6627
|
[coinType]
|
|
6624
6628
|
);
|
|
6625
6629
|
},
|
|
@@ -6628,16 +6632,7 @@ var generateCoreNormalMethod = ({
|
|
|
6628
6632
|
return builder.moveCall(
|
|
6629
6633
|
txBlock,
|
|
6630
6634
|
`${coreIds.protocolPkg}::redeem::redeem`,
|
|
6631
|
-
[
|
|
6632
|
-
coreIds.version,
|
|
6633
|
-
coreIds.market,
|
|
6634
|
-
marketCoin,
|
|
6635
|
-
txBlock.sharedObjectRef({
|
|
6636
|
-
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6637
|
-
mutable: false,
|
|
6638
|
-
initialSharedVersion: "1"
|
|
6639
|
-
})
|
|
6640
|
-
],
|
|
6635
|
+
[coreIds.version, coreIds.market, marketCoin, clockObjectRef],
|
|
6641
6636
|
[coinType]
|
|
6642
6637
|
);
|
|
6643
6638
|
},
|
|
@@ -6646,16 +6641,7 @@ var generateCoreNormalMethod = ({
|
|
|
6646
6641
|
return builder.moveCall(
|
|
6647
6642
|
txBlock,
|
|
6648
6643
|
`${coreIds.protocolPkg}::redeem::redeem_entry`,
|
|
6649
|
-
[
|
|
6650
|
-
coreIds.version,
|
|
6651
|
-
coreIds.market,
|
|
6652
|
-
marketCoin,
|
|
6653
|
-
txBlock.sharedObjectRef({
|
|
6654
|
-
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6655
|
-
mutable: false,
|
|
6656
|
-
initialSharedVersion: "1"
|
|
6657
|
-
})
|
|
6658
|
-
],
|
|
6644
|
+
[coreIds.version, coreIds.market, marketCoin, clockObjectRef],
|
|
6659
6645
|
[coinType]
|
|
6660
6646
|
);
|
|
6661
6647
|
},
|
|
@@ -6672,11 +6658,7 @@ var generateCoreNormalMethod = ({
|
|
|
6672
6658
|
coreIds.coinDecimalsRegistry,
|
|
6673
6659
|
amount,
|
|
6674
6660
|
coreIds.xOracle,
|
|
6675
|
-
|
|
6676
|
-
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6677
|
-
mutable: false,
|
|
6678
|
-
initialSharedVersion: "1"
|
|
6679
|
-
})
|
|
6661
|
+
clockObjectRef
|
|
6680
6662
|
],
|
|
6681
6663
|
[coinType]
|
|
6682
6664
|
);
|
|
@@ -6695,11 +6677,7 @@ var generateCoreNormalMethod = ({
|
|
|
6695
6677
|
borrowReferral,
|
|
6696
6678
|
typeof amount === "number" ? txBlock.pure.u64(amount) : amount,
|
|
6697
6679
|
coreIds.xOracle,
|
|
6698
|
-
|
|
6699
|
-
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6700
|
-
mutable: false,
|
|
6701
|
-
initialSharedVersion: "1"
|
|
6702
|
-
})
|
|
6680
|
+
clockObjectRef
|
|
6703
6681
|
],
|
|
6704
6682
|
[coinType, referralWitnessType]
|
|
6705
6683
|
);
|
|
@@ -6717,11 +6695,7 @@ var generateCoreNormalMethod = ({
|
|
|
6717
6695
|
coreIds.coinDecimalsRegistry,
|
|
6718
6696
|
txBlock.pure.u64(amount),
|
|
6719
6697
|
coreIds.xOracle,
|
|
6720
|
-
|
|
6721
|
-
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6722
|
-
mutable: false,
|
|
6723
|
-
initialSharedVersion: "1"
|
|
6724
|
-
})
|
|
6698
|
+
clockObjectRef
|
|
6725
6699
|
],
|
|
6726
6700
|
[coinType]
|
|
6727
6701
|
);
|
|
@@ -6731,17 +6705,7 @@ var generateCoreNormalMethod = ({
|
|
|
6731
6705
|
builder.moveCall(
|
|
6732
6706
|
txBlock,
|
|
6733
6707
|
`${coreIds.protocolPkg}::repay::repay`,
|
|
6734
|
-
[
|
|
6735
|
-
coreIds.version,
|
|
6736
|
-
obligation,
|
|
6737
|
-
coreIds.market,
|
|
6738
|
-
coin,
|
|
6739
|
-
txBlock.sharedObjectRef({
|
|
6740
|
-
objectId: SUI_CLOCK_OBJECT_ID3,
|
|
6741
|
-
mutable: false,
|
|
6742
|
-
initialSharedVersion: "1"
|
|
6743
|
-
})
|
|
6744
|
-
],
|
|
6708
|
+
[coreIds.version, obligation, coreIds.market, coin, clockObjectRef],
|
|
6745
6709
|
[coinType]
|
|
6746
6710
|
);
|
|
6747
6711
|
},
|
|
@@ -6886,7 +6850,7 @@ var generateCoreQuickMethod = ({
|
|
|
6886
6850
|
) ?? [];
|
|
6887
6851
|
const updateCoinNames = [...obligationCoinNames, poolCoinName];
|
|
6888
6852
|
await updateOracles(builder, txBlock, updateCoinNames);
|
|
6889
|
-
return
|
|
6853
|
+
return txBlock.borrow(
|
|
6890
6854
|
obligationInfo.obligationId,
|
|
6891
6855
|
obligationInfo.obligationKey,
|
|
6892
6856
|
amount,
|
|
@@ -6977,7 +6941,7 @@ var newCoreTxBlock = (builder, initTxBlock) => {
|
|
|
6977
6941
|
|
|
6978
6942
|
// src/builders/spoolBuilder.ts
|
|
6979
6943
|
import { Transaction as Transaction2 } from "@mysten/sui/transactions";
|
|
6980
|
-
import { SUI_CLOCK_OBJECT_ID as
|
|
6944
|
+
import { SUI_CLOCK_OBJECT_ID as SUI_CLOCK_OBJECT_ID5 } from "@mysten/sui/utils";
|
|
6981
6945
|
import { SuiTxBlock as SuiKitTxBlock2 } from "@scallop-io/sui-kit";
|
|
6982
6946
|
var requireStakeAccountIds = async (...params) => {
|
|
6983
6947
|
const [builder, txBlock, stakeMarketCoinName, stakeAccountId] = params;
|
|
@@ -7024,6 +6988,11 @@ var generateSpoolNormalMethod = ({
|
|
|
7024
6988
|
const spoolIds = {
|
|
7025
6989
|
spoolPkg: builder.address.get("spool.id")
|
|
7026
6990
|
};
|
|
6991
|
+
const clockObjectRef = txBlock.sharedObjectRef({
|
|
6992
|
+
objectId: SUI_CLOCK_OBJECT_ID5,
|
|
6993
|
+
mutable: false,
|
|
6994
|
+
initialSharedVersion: "1"
|
|
6995
|
+
});
|
|
7027
6996
|
return {
|
|
7028
6997
|
createStakeAccount: (stakeMarketCoinName) => {
|
|
7029
6998
|
const marketCoinType = builder.utils.parseMarketCoinType(stakeMarketCoinName);
|
|
@@ -7033,14 +7002,7 @@ var generateSpoolNormalMethod = ({
|
|
|
7033
7002
|
return builder.moveCall(
|
|
7034
7003
|
txBlock,
|
|
7035
7004
|
`${spoolIds.spoolPkg}::user::new_spool_account`,
|
|
7036
|
-
[
|
|
7037
|
-
stakePoolId,
|
|
7038
|
-
txBlock.sharedObjectRef({
|
|
7039
|
-
objectId: SUI_CLOCK_OBJECT_ID4,
|
|
7040
|
-
mutable: false,
|
|
7041
|
-
initialSharedVersion: "1"
|
|
7042
|
-
})
|
|
7043
|
-
],
|
|
7005
|
+
[stakePoolId, clockObjectRef],
|
|
7044
7006
|
[marketCoinType]
|
|
7045
7007
|
);
|
|
7046
7008
|
},
|
|
@@ -7052,16 +7014,7 @@ var generateSpoolNormalMethod = ({
|
|
|
7052
7014
|
builder.moveCall(
|
|
7053
7015
|
txBlock,
|
|
7054
7016
|
`${spoolIds.spoolPkg}::user::stake`,
|
|
7055
|
-
[
|
|
7056
|
-
stakePoolId,
|
|
7057
|
-
stakeAccount,
|
|
7058
|
-
coin,
|
|
7059
|
-
txBlock.sharedObjectRef({
|
|
7060
|
-
objectId: SUI_CLOCK_OBJECT_ID4,
|
|
7061
|
-
mutable: false,
|
|
7062
|
-
initialSharedVersion: "1"
|
|
7063
|
-
})
|
|
7064
|
-
],
|
|
7017
|
+
[stakePoolId, stakeAccount, coin, clockObjectRef],
|
|
7065
7018
|
[marketCoinType]
|
|
7066
7019
|
);
|
|
7067
7020
|
},
|
|
@@ -7073,16 +7026,7 @@ var generateSpoolNormalMethod = ({
|
|
|
7073
7026
|
return builder.moveCall(
|
|
7074
7027
|
txBlock,
|
|
7075
7028
|
`${spoolIds.spoolPkg}::user::unstake`,
|
|
7076
|
-
[
|
|
7077
|
-
stakePoolId,
|
|
7078
|
-
stakeAccount,
|
|
7079
|
-
amount,
|
|
7080
|
-
txBlock.sharedObjectRef({
|
|
7081
|
-
objectId: SUI_CLOCK_OBJECT_ID4,
|
|
7082
|
-
mutable: false,
|
|
7083
|
-
initialSharedVersion: "1"
|
|
7084
|
-
})
|
|
7085
|
-
],
|
|
7029
|
+
[stakePoolId, stakeAccount, amount, clockObjectRef],
|
|
7086
7030
|
[marketCoinType]
|
|
7087
7031
|
);
|
|
7088
7032
|
},
|
|
@@ -7099,16 +7043,7 @@ var generateSpoolNormalMethod = ({
|
|
|
7099
7043
|
return builder.moveCall(
|
|
7100
7044
|
txBlock,
|
|
7101
7045
|
`${spoolIds.spoolPkg}::user::redeem_rewards`,
|
|
7102
|
-
[
|
|
7103
|
-
stakePoolId,
|
|
7104
|
-
rewardPoolId,
|
|
7105
|
-
stakeAccount,
|
|
7106
|
-
txBlock.sharedObjectRef({
|
|
7107
|
-
objectId: SUI_CLOCK_OBJECT_ID4,
|
|
7108
|
-
mutable: false,
|
|
7109
|
-
initialSharedVersion: "1"
|
|
7110
|
-
})
|
|
7111
|
-
],
|
|
7046
|
+
[stakePoolId, rewardPoolId, stakeAccount, clockObjectRef],
|
|
7112
7047
|
[marketCoinType, rewardCoinType]
|
|
7113
7048
|
);
|
|
7114
7049
|
}
|
|
@@ -7245,7 +7180,7 @@ var newSpoolTxBlock = (builder, initTxBlock) => {
|
|
|
7245
7180
|
import { Transaction as Transaction3 } from "@mysten/sui/transactions";
|
|
7246
7181
|
import {
|
|
7247
7182
|
SuiTxBlock as SuiKitTxBlock3,
|
|
7248
|
-
SUI_CLOCK_OBJECT_ID as
|
|
7183
|
+
SUI_CLOCK_OBJECT_ID as SUI_CLOCK_OBJECT_ID6
|
|
7249
7184
|
} from "@scallop-io/sui-kit";
|
|
7250
7185
|
var requireObligationInfo2 = async (...params) => {
|
|
7251
7186
|
const [builder, txBlock, obligationId, obligationKey] = params;
|
|
@@ -7286,6 +7221,11 @@ var generateBorrowIncentiveNormalMethod = ({ builder, txBlock }) => {
|
|
|
7286
7221
|
treasury: builder.address.get("vesca.treasury"),
|
|
7287
7222
|
config: builder.address.get("vesca.config")
|
|
7288
7223
|
};
|
|
7224
|
+
const clockObjectRef = txBlock.sharedObjectRef({
|
|
7225
|
+
objectId: SUI_CLOCK_OBJECT_ID6,
|
|
7226
|
+
mutable: false,
|
|
7227
|
+
initialSharedVersion: "1"
|
|
7228
|
+
});
|
|
7289
7229
|
return {
|
|
7290
7230
|
stakeObligation: (obligationId, obligationKey) => {
|
|
7291
7231
|
builder.moveCall(
|
|
@@ -7298,11 +7238,7 @@ var generateBorrowIncentiveNormalMethod = ({ builder, txBlock }) => {
|
|
|
7298
7238
|
obligationKey,
|
|
7299
7239
|
obligationId,
|
|
7300
7240
|
borrowIncentiveIds.obligationAccessStore,
|
|
7301
|
-
|
|
7302
|
-
objectId: SUI_CLOCK_OBJECT_ID5,
|
|
7303
|
-
mutable: false,
|
|
7304
|
-
initialSharedVersion: "1"
|
|
7305
|
-
})
|
|
7241
|
+
clockObjectRef
|
|
7306
7242
|
]
|
|
7307
7243
|
);
|
|
7308
7244
|
},
|
|
@@ -7321,11 +7257,7 @@ var generateBorrowIncentiveNormalMethod = ({ builder, txBlock }) => {
|
|
|
7321
7257
|
veScaIds.treasury,
|
|
7322
7258
|
veScaIds.table,
|
|
7323
7259
|
veScaKey,
|
|
7324
|
-
|
|
7325
|
-
objectId: SUI_CLOCK_OBJECT_ID5,
|
|
7326
|
-
mutable: false,
|
|
7327
|
-
initialSharedVersion: "1"
|
|
7328
|
-
})
|
|
7260
|
+
clockObjectRef
|
|
7329
7261
|
],
|
|
7330
7262
|
[]
|
|
7331
7263
|
);
|
|
@@ -7340,11 +7272,7 @@ var generateBorrowIncentiveNormalMethod = ({ builder, txBlock }) => {
|
|
|
7340
7272
|
borrowIncentiveIds.incentiveAccounts,
|
|
7341
7273
|
obligationKey,
|
|
7342
7274
|
obligationId,
|
|
7343
|
-
|
|
7344
|
-
objectId: SUI_CLOCK_OBJECT_ID5,
|
|
7345
|
-
mutable: false,
|
|
7346
|
-
initialSharedVersion: "1"
|
|
7347
|
-
})
|
|
7275
|
+
clockObjectRef
|
|
7348
7276
|
]
|
|
7349
7277
|
);
|
|
7350
7278
|
},
|
|
@@ -7359,11 +7287,7 @@ var generateBorrowIncentiveNormalMethod = ({ builder, txBlock }) => {
|
|
|
7359
7287
|
borrowIncentiveIds.incentiveAccounts,
|
|
7360
7288
|
obligationKey,
|
|
7361
7289
|
obligationId,
|
|
7362
|
-
|
|
7363
|
-
objectId: SUI_CLOCK_OBJECT_ID5,
|
|
7364
|
-
mutable: false,
|
|
7365
|
-
initialSharedVersion: "1"
|
|
7366
|
-
})
|
|
7290
|
+
clockObjectRef
|
|
7367
7291
|
],
|
|
7368
7292
|
[rewardType]
|
|
7369
7293
|
);
|
|
@@ -7378,11 +7302,7 @@ var generateBorrowIncentiveNormalMethod = ({ builder, txBlock }) => {
|
|
|
7378
7302
|
borrowIncentiveIds.incentiveAccounts,
|
|
7379
7303
|
obligation,
|
|
7380
7304
|
veScaKey,
|
|
7381
|
-
|
|
7382
|
-
objectId: SUI_CLOCK_OBJECT_ID5,
|
|
7383
|
-
mutable: false,
|
|
7384
|
-
initialSharedVersion: "1"
|
|
7385
|
-
})
|
|
7305
|
+
clockObjectRef
|
|
7386
7306
|
]
|
|
7387
7307
|
);
|
|
7388
7308
|
}
|
|
@@ -7496,7 +7416,7 @@ var newBorrowIncentiveTxBlock = (builder, initTxBlock) => {
|
|
|
7496
7416
|
|
|
7497
7417
|
// src/builders/vescaBuilder.ts
|
|
7498
7418
|
import {
|
|
7499
|
-
SUI_CLOCK_OBJECT_ID as
|
|
7419
|
+
SUI_CLOCK_OBJECT_ID as SUI_CLOCK_OBJECT_ID7,
|
|
7500
7420
|
Transaction as Transaction4,
|
|
7501
7421
|
SuiTxBlock as SuiKitTxBlock4
|
|
7502
7422
|
} from "@scallop-io/sui-kit";
|
|
@@ -7526,6 +7446,11 @@ var generateNormalVeScaMethod = ({
|
|
|
7526
7446
|
treasury: builder.address.get("vesca.treasury"),
|
|
7527
7447
|
config: builder.address.get("vesca.config")
|
|
7528
7448
|
};
|
|
7449
|
+
const clockObjectRef = txBlock.sharedObjectRef({
|
|
7450
|
+
objectId: SUI_CLOCK_OBJECT_ID7,
|
|
7451
|
+
mutable: false,
|
|
7452
|
+
initialSharedVersion: "1"
|
|
7453
|
+
});
|
|
7529
7454
|
return {
|
|
7530
7455
|
lockSca: (scaCoin, unlockAtInSecondTimestamp) => {
|
|
7531
7456
|
return builder.moveCall(
|
|
@@ -7537,11 +7462,7 @@ var generateNormalVeScaMethod = ({
|
|
|
7537
7462
|
veScaIds.treasury,
|
|
7538
7463
|
scaCoin,
|
|
7539
7464
|
unlockAtInSecondTimestamp,
|
|
7540
|
-
|
|
7541
|
-
objectId: SUI_CLOCK_OBJECT_ID6,
|
|
7542
|
-
mutable: false,
|
|
7543
|
-
initialSharedVersion: "1"
|
|
7544
|
-
})
|
|
7465
|
+
clockObjectRef
|
|
7545
7466
|
],
|
|
7546
7467
|
[]
|
|
7547
7468
|
);
|
|
@@ -7556,11 +7477,7 @@ var generateNormalVeScaMethod = ({
|
|
|
7556
7477
|
veScaIds.table,
|
|
7557
7478
|
veScaIds.treasury,
|
|
7558
7479
|
newUnlockAtInSecondTimestamp,
|
|
7559
|
-
|
|
7560
|
-
objectId: SUI_CLOCK_OBJECT_ID6,
|
|
7561
|
-
mutable: false,
|
|
7562
|
-
initialSharedVersion: "1"
|
|
7563
|
-
})
|
|
7480
|
+
clockObjectRef
|
|
7564
7481
|
],
|
|
7565
7482
|
[]
|
|
7566
7483
|
);
|
|
@@ -7575,11 +7492,7 @@ var generateNormalVeScaMethod = ({
|
|
|
7575
7492
|
veScaIds.table,
|
|
7576
7493
|
veScaIds.treasury,
|
|
7577
7494
|
scaCoin,
|
|
7578
|
-
|
|
7579
|
-
objectId: SUI_CLOCK_OBJECT_ID6,
|
|
7580
|
-
mutable: false,
|
|
7581
|
-
initialSharedVersion: "1"
|
|
7582
|
-
})
|
|
7495
|
+
clockObjectRef
|
|
7583
7496
|
],
|
|
7584
7497
|
[]
|
|
7585
7498
|
);
|
|
@@ -7595,11 +7508,7 @@ var generateNormalVeScaMethod = ({
|
|
|
7595
7508
|
veScaIds.treasury,
|
|
7596
7509
|
scaCoin,
|
|
7597
7510
|
newUnlockAtInSecondTimestamp,
|
|
7598
|
-
|
|
7599
|
-
objectId: SUI_CLOCK_OBJECT_ID6,
|
|
7600
|
-
mutable: false,
|
|
7601
|
-
initialSharedVersion: "1"
|
|
7602
|
-
})
|
|
7511
|
+
clockObjectRef
|
|
7603
7512
|
],
|
|
7604
7513
|
[]
|
|
7605
7514
|
);
|
|
@@ -7613,11 +7522,7 @@ var generateNormalVeScaMethod = ({
|
|
|
7613
7522
|
veScaKey,
|
|
7614
7523
|
veScaIds.table,
|
|
7615
7524
|
veScaIds.treasury,
|
|
7616
|
-
|
|
7617
|
-
objectId: SUI_CLOCK_OBJECT_ID6,
|
|
7618
|
-
mutable: false,
|
|
7619
|
-
initialSharedVersion: "1"
|
|
7620
|
-
})
|
|
7525
|
+
clockObjectRef
|
|
7621
7526
|
],
|
|
7622
7527
|
[]
|
|
7623
7528
|
);
|
|
@@ -7762,7 +7667,7 @@ var generateQuickVeScaMethod = ({
|
|
|
7762
7667
|
const veSca = await requireVeSca(builder, txBlock, veScaKey);
|
|
7763
7668
|
checkVesca(veSca?.unlockAt);
|
|
7764
7669
|
if (veSca) {
|
|
7765
|
-
const sca =
|
|
7670
|
+
const sca = txBlock.redeemSca(veSca.keyId);
|
|
7766
7671
|
if (transferSca) {
|
|
7767
7672
|
txBlock.transferObjects([sca], sender);
|
|
7768
7673
|
return;
|
|
@@ -7802,7 +7707,7 @@ var newVeScaTxBlock = (builder, initTxBlock) => {
|
|
|
7802
7707
|
|
|
7803
7708
|
// src/builders/referralBuilder.ts
|
|
7804
7709
|
import {
|
|
7805
|
-
SUI_CLOCK_OBJECT_ID as
|
|
7710
|
+
SUI_CLOCK_OBJECT_ID as SUI_CLOCK_OBJECT_ID8,
|
|
7806
7711
|
SuiTxBlock as SuiKitTxBlock5,
|
|
7807
7712
|
Transaction as Transaction5
|
|
7808
7713
|
} from "@scallop-io/sui-kit";
|
|
@@ -7821,6 +7726,11 @@ var generateReferralNormalMethod = ({
|
|
|
7821
7726
|
version: builder.address.get("referral.version")
|
|
7822
7727
|
};
|
|
7823
7728
|
const veScaTable = builder.address.get("vesca.table");
|
|
7729
|
+
const clockObjectRef = txBlock.sharedObjectRef({
|
|
7730
|
+
objectId: SUI_CLOCK_OBJECT_ID8,
|
|
7731
|
+
mutable: false,
|
|
7732
|
+
initialSharedVersion: "1"
|
|
7733
|
+
});
|
|
7824
7734
|
return {
|
|
7825
7735
|
bindToReferral: (veScaKeyId) => {
|
|
7826
7736
|
builder.moveCall(
|
|
@@ -7830,11 +7740,7 @@ var generateReferralNormalMethod = ({
|
|
|
7830
7740
|
referralIds.referralBindings,
|
|
7831
7741
|
txBlock.pure.id(veScaKeyId),
|
|
7832
7742
|
veScaTable,
|
|
7833
|
-
|
|
7834
|
-
objectId: SUI_CLOCK_OBJECT_ID7,
|
|
7835
|
-
mutable: false,
|
|
7836
|
-
initialSharedVersion: "1"
|
|
7837
|
-
})
|
|
7743
|
+
clockObjectRef
|
|
7838
7744
|
],
|
|
7839
7745
|
[]
|
|
7840
7746
|
);
|
|
@@ -7850,11 +7756,7 @@ var generateReferralNormalMethod = ({
|
|
|
7850
7756
|
referralIds.referralBindings,
|
|
7851
7757
|
referralIds.authorizedWitnessList,
|
|
7852
7758
|
referralIds.referralTiers,
|
|
7853
|
-
|
|
7854
|
-
objectId: SUI_CLOCK_OBJECT_ID7,
|
|
7855
|
-
mutable: false,
|
|
7856
|
-
initialSharedVersion: "1"
|
|
7857
|
-
})
|
|
7759
|
+
clockObjectRef
|
|
7858
7760
|
],
|
|
7859
7761
|
[coinType]
|
|
7860
7762
|
);
|
|
@@ -7868,11 +7770,7 @@ var generateReferralNormalMethod = ({
|
|
|
7868
7770
|
referralIds.version,
|
|
7869
7771
|
ticket,
|
|
7870
7772
|
referralIds.referralRevenuePool,
|
|
7871
|
-
|
|
7872
|
-
objectId: SUI_CLOCK_OBJECT_ID7,
|
|
7873
|
-
mutable: false,
|
|
7874
|
-
initialSharedVersion: "1"
|
|
7875
|
-
})
|
|
7773
|
+
clockObjectRef
|
|
7876
7774
|
],
|
|
7877
7775
|
[coinType]
|
|
7878
7776
|
);
|
|
@@ -7886,11 +7784,7 @@ var generateReferralNormalMethod = ({
|
|
|
7886
7784
|
referralIds.version,
|
|
7887
7785
|
referralIds.referralRevenuePool,
|
|
7888
7786
|
veScaKey,
|
|
7889
|
-
|
|
7890
|
-
objectId: SUI_CLOCK_OBJECT_ID7,
|
|
7891
|
-
mutable: false,
|
|
7892
|
-
initialSharedVersion: "1"
|
|
7893
|
-
})
|
|
7787
|
+
clockObjectRef
|
|
7894
7788
|
],
|
|
7895
7789
|
[coinType]
|
|
7896
7790
|
);
|
|
@@ -8331,6 +8225,16 @@ var ScallopIndexer = class {
|
|
|
8331
8225
|
async getCoinPrice(poolCoinName) {
|
|
8332
8226
|
return (await this.getMarketPool(poolCoinName))?.coinPrice ?? 0;
|
|
8333
8227
|
}
|
|
8228
|
+
async getCoinPrices() {
|
|
8229
|
+
const marketPools = await this.getMarketPools();
|
|
8230
|
+
return Object.entries(marketPools).reduce(
|
|
8231
|
+
(prev, [coinName, market]) => {
|
|
8232
|
+
prev[coinName] = market.coinPrice;
|
|
8233
|
+
return prev;
|
|
8234
|
+
},
|
|
8235
|
+
{}
|
|
8236
|
+
);
|
|
8237
|
+
}
|
|
8334
8238
|
};
|
|
8335
8239
|
|
|
8336
8240
|
// src/models/scallopQuery.ts
|
|
@@ -8489,8 +8393,8 @@ var ScallopQuery = class {
|
|
|
8489
8393
|
* @param obligationId - The obligation id.
|
|
8490
8394
|
* @return Obligation data.
|
|
8491
8395
|
*/
|
|
8492
|
-
async queryObligation(obligationId) {
|
|
8493
|
-
return queryObligation(this, obligationId);
|
|
8396
|
+
async queryObligation(obligationId, args) {
|
|
8397
|
+
return queryObligation(this, obligationId, args?.version, args?.market);
|
|
8494
8398
|
}
|
|
8495
8399
|
/**
|
|
8496
8400
|
* Get all asset coin amounts.
|
|
@@ -8908,19 +8812,31 @@ var ScallopQuery = class {
|
|
|
8908
8812
|
async getCoinPriceByIndexer(poolName) {
|
|
8909
8813
|
return this.indexer.getCoinPrice(poolName);
|
|
8910
8814
|
}
|
|
8815
|
+
/**
|
|
8816
|
+
* Get all supported pool price from indexer
|
|
8817
|
+
* @returns prices data
|
|
8818
|
+
*/
|
|
8819
|
+
async getCoinPricesByIndexer() {
|
|
8820
|
+
return this.indexer.getCoinPrices();
|
|
8821
|
+
}
|
|
8911
8822
|
/**
|
|
8912
8823
|
* Get all coin prices, including sCoin
|
|
8913
8824
|
* @returns prices data
|
|
8914
8825
|
*/
|
|
8915
8826
|
async getAllCoinPrices(args) {
|
|
8916
|
-
return getAllCoinPrices(
|
|
8827
|
+
return getAllCoinPrices(
|
|
8828
|
+
this,
|
|
8829
|
+
args?.marketPools,
|
|
8830
|
+
args?.coinPrices,
|
|
8831
|
+
args?.indexer
|
|
8832
|
+
);
|
|
8917
8833
|
}
|
|
8918
8834
|
/**
|
|
8919
8835
|
* Query all address (lending pool, collateral pool, borrow dynamics, interest models, etc.) of all pool
|
|
8920
8836
|
* @returns
|
|
8921
8837
|
*/
|
|
8922
|
-
async getPoolAddresses() {
|
|
8923
|
-
return getAllAddresses(this);
|
|
8838
|
+
async getPoolAddresses(poolNames) {
|
|
8839
|
+
return getAllAddresses(this, poolNames);
|
|
8924
8840
|
}
|
|
8925
8841
|
/**
|
|
8926
8842
|
* Get user portfolio
|
|
@@ -8932,6 +8848,33 @@ var ScallopQuery = class {
|
|
|
8932
8848
|
args?.indexer ?? false
|
|
8933
8849
|
);
|
|
8934
8850
|
}
|
|
8851
|
+
/**
|
|
8852
|
+
* Get both primary and secondary price update policy objects
|
|
8853
|
+
* @returns price update policies
|
|
8854
|
+
*/
|
|
8855
|
+
async getPriceUpdatePolicies() {
|
|
8856
|
+
return await getPriceUpdatePolicies(this.address);
|
|
8857
|
+
}
|
|
8858
|
+
/**
|
|
8859
|
+
* Return the supported primary and secondary oracles for all supported pool assets
|
|
8860
|
+
* @returns
|
|
8861
|
+
*/
|
|
8862
|
+
async getAssetOracles() {
|
|
8863
|
+
const [primary, secondary] = await Promise.all([
|
|
8864
|
+
getAssetOracles(this.utils, "primary"),
|
|
8865
|
+
getAssetOracles(this.utils, "secondary")
|
|
8866
|
+
]);
|
|
8867
|
+
return SUPPORT_POOLS.reduce(
|
|
8868
|
+
(acc, pool) => {
|
|
8869
|
+
acc[pool] = {
|
|
8870
|
+
primary: primary[pool] ?? [],
|
|
8871
|
+
secondary: secondary[pool] ?? []
|
|
8872
|
+
};
|
|
8873
|
+
return acc;
|
|
8874
|
+
},
|
|
8875
|
+
{}
|
|
8876
|
+
);
|
|
8877
|
+
}
|
|
8935
8878
|
};
|
|
8936
8879
|
|
|
8937
8880
|
// src/models/scallopBuilder.ts
|
|
@@ -9943,6 +9886,7 @@ export {
|
|
|
9943
9886
|
stakeMarketCoins,
|
|
9944
9887
|
suiBridgeCoins,
|
|
9945
9888
|
voloCoinIds,
|
|
9946
|
-
wormholeCoinIds
|
|
9889
|
+
wormholeCoinIds,
|
|
9890
|
+
xOracleList
|
|
9947
9891
|
};
|
|
9948
9892
|
//# sourceMappingURL=index.mjs.map
|