@scallop-io/sui-scallop-sdk 1.4.27 → 1.5.0
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.d.mts +30 -2
- package/dist/index.d.ts +30 -2
- package/dist/index.js +53 -52
- package/dist/index.mjs +7 -7
- 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 +79 -287
- package/src/constants/xoracle.ts +28 -0
- package/src/models/scallopPrice.ts +0 -0
- package/src/models/scallopQuery.ts +41 -8
- package/src/models/scallopUtils.ts +1 -1
- package/src/queries/coreQuery.ts +16 -6
- package/src/queries/index.ts +1 -0
- 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
|
@@ -3,19 +3,19 @@ import { AddressesInterface } from 'src/types';
|
|
|
3
3
|
export const TEST_ADDRESSES: AddressesInterface = {
|
|
4
4
|
core: {
|
|
5
5
|
version:
|
|
6
|
-
'
|
|
6
|
+
'0xee15d07800e2ad4852505c57cd86afea774af02c17388f8bd907de75f915b4f4',
|
|
7
7
|
versionCap:
|
|
8
8
|
'0x590a4011cb649b3878f3ea14b3a78674642a9548d79b7e091ef679574b158a07',
|
|
9
9
|
object:
|
|
10
|
-
'
|
|
10
|
+
'0xb03fa00e2d9f17d78a9d48bd94d8852abec68c19d55e819096b1e062e69bfad1',
|
|
11
11
|
market:
|
|
12
|
-
'
|
|
12
|
+
'0xa7f41efe3b551c20ad6d6cea6ccd0fd68d2e2eaaacdca5e62d956209f6a51312',
|
|
13
13
|
adminCap:
|
|
14
14
|
'0x09689d018e71c337d9db6d67cbca06b74ed92196103624028ccc3ecea411777c',
|
|
15
15
|
coinDecimalsRegistry:
|
|
16
16
|
'0x200abe9bf19751cc566ae35aa58e2b7e4ff688fc1130f8d8909ea09bc137d668',
|
|
17
17
|
obligationAccessStore:
|
|
18
|
-
'
|
|
18
|
+
'0xb7d7e1464936fbdcdd4913308b40335e662401029635289bdb317c7dde9d6c68',
|
|
19
19
|
coins: {
|
|
20
20
|
usdc: {
|
|
21
21
|
id: '0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7',
|
|
@@ -32,111 +32,6 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
32
32
|
},
|
|
33
33
|
},
|
|
34
34
|
},
|
|
35
|
-
cetus: {
|
|
36
|
-
id: '0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b',
|
|
37
|
-
metaData:
|
|
38
|
-
'0x4c0dce55eff2db5419bbd2d239d1aa22b4a400c01bbb648b058a9883989025da',
|
|
39
|
-
treasury: '',
|
|
40
|
-
oracle: {
|
|
41
|
-
supra: '',
|
|
42
|
-
switchboard: '',
|
|
43
|
-
pyth: {
|
|
44
|
-
feed: 'e5b274b2611143df055d6e7cd8d93fe1961716bcd4dca1cad87a83bc1e78c1ef',
|
|
45
|
-
feedObject:
|
|
46
|
-
'0x24c0247fb22457a719efac7f670cdc79be321b521460bd6bd2ccfa9f80713b14',
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
|
-
},
|
|
50
|
-
wapt: {
|
|
51
|
-
id: '0x3a5143bb1196e3bcdfab6203d1683ae29edd26294fc8bfeafe4aaa9d2704df37',
|
|
52
|
-
metaData:
|
|
53
|
-
'0xc969c5251f372c0f34c32759f1d315cf1ea0ee5e4454b52aea08778eacfdd0a8',
|
|
54
|
-
treasury: '',
|
|
55
|
-
oracle: {
|
|
56
|
-
supra: '',
|
|
57
|
-
switchboard: '',
|
|
58
|
-
pyth: {
|
|
59
|
-
feed: '03ae4db29ed4ae33d323568895aa00337e658e348b37509f5372ae51f0af00d5',
|
|
60
|
-
feedObject:
|
|
61
|
-
'0x7c5b7837c44a69b469325463ac0673ac1aa8435ff44ddb4191c9ae380463647f',
|
|
62
|
-
},
|
|
63
|
-
},
|
|
64
|
-
},
|
|
65
|
-
wsol: {
|
|
66
|
-
id: '0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8',
|
|
67
|
-
metaData:
|
|
68
|
-
'0x4d2c39082b4477e3e79dc4562d939147ab90c42fc5f3e4acf03b94383cd69b6e',
|
|
69
|
-
treasury: '',
|
|
70
|
-
oracle: {
|
|
71
|
-
supra: '',
|
|
72
|
-
switchboard: '',
|
|
73
|
-
pyth: {
|
|
74
|
-
feed: 'ef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d',
|
|
75
|
-
feedObject:
|
|
76
|
-
'0x9d0d275efbd37d8a8855f6f2c761fa5983293dd8ce202ee5196626de8fcd4469',
|
|
77
|
-
},
|
|
78
|
-
},
|
|
79
|
-
},
|
|
80
|
-
wbtc: {
|
|
81
|
-
id: '0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881',
|
|
82
|
-
metaData:
|
|
83
|
-
'0x5d3c6e60eeff8a05b693b481539e7847dfe33013e7070cdcb387f5c0cac05dfd',
|
|
84
|
-
treasury: '',
|
|
85
|
-
oracle: {
|
|
86
|
-
supra: '',
|
|
87
|
-
switchboard: '',
|
|
88
|
-
pyth: {
|
|
89
|
-
feed: 'e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43',
|
|
90
|
-
feedObject:
|
|
91
|
-
'0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2',
|
|
92
|
-
},
|
|
93
|
-
},
|
|
94
|
-
},
|
|
95
|
-
weth: {
|
|
96
|
-
id: '0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5',
|
|
97
|
-
metaData:
|
|
98
|
-
'0x8900e4ceede3363bef086d6b50ca89d816d0e90bf6bc46efefe1f8455e08f50f',
|
|
99
|
-
treasury: '',
|
|
100
|
-
oracle: {
|
|
101
|
-
supra: '',
|
|
102
|
-
switchboard: '',
|
|
103
|
-
pyth: {
|
|
104
|
-
feed: 'ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace',
|
|
105
|
-
feedObject:
|
|
106
|
-
'0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab',
|
|
107
|
-
},
|
|
108
|
-
},
|
|
109
|
-
},
|
|
110
|
-
wusdc: {
|
|
111
|
-
id: '0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf',
|
|
112
|
-
metaData:
|
|
113
|
-
'0x4fbf84f3029bd0c0b77164b587963be957f853eccf834a67bb9ecba6ec80f189',
|
|
114
|
-
treasury: '',
|
|
115
|
-
oracle: {
|
|
116
|
-
supra: '',
|
|
117
|
-
switchboard: '',
|
|
118
|
-
pyth: {
|
|
119
|
-
feed: 'eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a',
|
|
120
|
-
feedObject:
|
|
121
|
-
'0x5dec622733a204ca27f5a90d8c2fad453cc6665186fd5dff13a83d0b6c9027ab',
|
|
122
|
-
},
|
|
123
|
-
},
|
|
124
|
-
},
|
|
125
|
-
wusdt: {
|
|
126
|
-
id: '0xc060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c',
|
|
127
|
-
metaData:
|
|
128
|
-
'0xfb0e3eb97dd158a5ae979dddfa24348063843c5b20eb8381dd5fa7c93699e45c',
|
|
129
|
-
treasury: '',
|
|
130
|
-
oracle: {
|
|
131
|
-
supra: '',
|
|
132
|
-
switchboard: '',
|
|
133
|
-
pyth: {
|
|
134
|
-
feed: '2b89b9dc8fdf9f34709a5b106b472f0f39bb6ca9ce04b0fd7f2e971688e2e53b',
|
|
135
|
-
feedObject:
|
|
136
|
-
'0x985e3db9f93f76ee8bace7c3dd5cc676a096accd5d9e09e9ae0fb6e492b14572',
|
|
137
|
-
},
|
|
138
|
-
},
|
|
139
|
-
},
|
|
140
35
|
sui: {
|
|
141
36
|
id: '0x0000000000000000000000000000000000000000000000000000000000000002',
|
|
142
37
|
metaData:
|
|
@@ -153,51 +48,6 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
153
48
|
},
|
|
154
49
|
},
|
|
155
50
|
},
|
|
156
|
-
afsui: {
|
|
157
|
-
id: '0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc',
|
|
158
|
-
metaData:
|
|
159
|
-
'0x2f9217f533e51334873a39b8026a4aa6919497b47f49d0986a4f1aec66f8a34d',
|
|
160
|
-
treasury: '',
|
|
161
|
-
oracle: {
|
|
162
|
-
supra: '',
|
|
163
|
-
switchboard: '',
|
|
164
|
-
pyth: {
|
|
165
|
-
feed: '23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744',
|
|
166
|
-
feedObject:
|
|
167
|
-
'0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37',
|
|
168
|
-
},
|
|
169
|
-
},
|
|
170
|
-
},
|
|
171
|
-
hasui: {
|
|
172
|
-
id: '0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d',
|
|
173
|
-
metaData:
|
|
174
|
-
'0x2c5f33af93f6511df699aaaa5822d823aac6ed99d4a0de2a4a50b3afa0172e24',
|
|
175
|
-
treasury: '',
|
|
176
|
-
oracle: {
|
|
177
|
-
supra: '',
|
|
178
|
-
switchboard: '',
|
|
179
|
-
pyth: {
|
|
180
|
-
feed: '23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744',
|
|
181
|
-
feedObject:
|
|
182
|
-
'0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37',
|
|
183
|
-
},
|
|
184
|
-
},
|
|
185
|
-
},
|
|
186
|
-
vsui: {
|
|
187
|
-
id: '0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55',
|
|
188
|
-
metaData:
|
|
189
|
-
'0xabd84a23467b33854ab25cf862006fd97479f8f6f53e50fe732c43a274d939bd',
|
|
190
|
-
treasury: '',
|
|
191
|
-
oracle: {
|
|
192
|
-
supra: '',
|
|
193
|
-
switchboard: '',
|
|
194
|
-
pyth: {
|
|
195
|
-
feed: '23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744',
|
|
196
|
-
feedObject:
|
|
197
|
-
'0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37',
|
|
198
|
-
},
|
|
199
|
-
},
|
|
200
|
-
},
|
|
201
51
|
sca: {
|
|
202
52
|
id: '0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6',
|
|
203
53
|
metaData:
|
|
@@ -213,36 +63,6 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
213
63
|
},
|
|
214
64
|
},
|
|
215
65
|
},
|
|
216
|
-
sbeth: {
|
|
217
|
-
id: '0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29',
|
|
218
|
-
metaData:
|
|
219
|
-
'0x89b04ba87f8832d4d76e17a1c9dce72eb3e64d372cf02012b8d2de5384faeef0',
|
|
220
|
-
treasury: '',
|
|
221
|
-
oracle: {
|
|
222
|
-
supra: '',
|
|
223
|
-
switchboard: '',
|
|
224
|
-
pyth: {
|
|
225
|
-
feed: 'ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace',
|
|
226
|
-
feedObject:
|
|
227
|
-
'0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab',
|
|
228
|
-
},
|
|
229
|
-
},
|
|
230
|
-
},
|
|
231
|
-
fdusd: {
|
|
232
|
-
id: '0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a',
|
|
233
|
-
metaData:
|
|
234
|
-
'0xdebee5265a67c186ed87fe93303d33dfe1de53e3b4fd7d9329c2852860acd3e7',
|
|
235
|
-
treasury: '',
|
|
236
|
-
oracle: {
|
|
237
|
-
supra: '',
|
|
238
|
-
switchboard: '',
|
|
239
|
-
pyth: {
|
|
240
|
-
feed: 'ccdc1a08923e2e4f4b1e6ea89de6acbc5fe1948e9706f5604b8cb50bc1ed3979',
|
|
241
|
-
feedObject:
|
|
242
|
-
'0x5f6583b2b0fe1ecf94aaffeaab8a838794693960cea48c0da282d5f4a24be027',
|
|
243
|
-
},
|
|
244
|
-
},
|
|
245
|
-
},
|
|
246
66
|
deep: {
|
|
247
67
|
id: '0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270',
|
|
248
68
|
metaData:
|
|
@@ -366,7 +186,7 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
366
186
|
},
|
|
367
187
|
oracles: {
|
|
368
188
|
xOracle:
|
|
369
|
-
'
|
|
189
|
+
'0x0c09daac413e834f2fe69601c41e836022fa9a185df6b56a80f6bcd8a3ecb8a2',
|
|
370
190
|
xOracleCap:
|
|
371
191
|
'0x1edeae568fde99e090dbdec4bcdbd33a15f53a1ce1f87aeef1a560dedf4b4a90',
|
|
372
192
|
supra: {
|
|
@@ -380,7 +200,7 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
380
200
|
},
|
|
381
201
|
pyth: {
|
|
382
202
|
registry:
|
|
383
|
-
'
|
|
203
|
+
'0xdcf813893649521abd27816ba8d946b0cb7fc98d776cc9adcecba54688ccc109',
|
|
384
204
|
registryCap:
|
|
385
205
|
'0xbcb07141eb1f7e01fbda4130ecf5f5adaeabb77f5d9c32158b7532bcd2197acd',
|
|
386
206
|
state:
|
|
@@ -413,7 +233,7 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
413
233
|
'0x3f203f6fff6a69d151e4f1cd931f22b68c489ef2759765662fc7baf673943c9e',
|
|
414
234
|
},
|
|
415
235
|
protocol: {
|
|
416
|
-
id: '
|
|
236
|
+
id: '0xb03fa00e2d9f17d78a9d48bd94d8852abec68c19d55e819096b1e062e69bfad1',
|
|
417
237
|
upgradeCap:
|
|
418
238
|
'0x38527d154618d1fd5a644b90717fe07cf0e9f26b46b63e9568e611a3f86d5c1a',
|
|
419
239
|
},
|
|
@@ -423,16 +243,16 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
423
243
|
'0x4a5e88a75039b00988f633f811f58117f31b8627a46bf822aa114d9010049449',
|
|
424
244
|
},
|
|
425
245
|
query: {
|
|
426
|
-
id: '
|
|
246
|
+
id: '0x3a0dbce719fc56a96bf8e8dd53cd57eb9c313642a88d99b86f51208762eba258',
|
|
247
|
+
object: '',
|
|
427
248
|
upgradeCap:
|
|
428
249
|
'0x0d535c35f608b9b01b7ccce11acf43b1dd80c1b72bf8b541744a6e28e8d2745f',
|
|
429
250
|
},
|
|
430
|
-
supra: {
|
|
431
|
-
id: '',
|
|
432
|
-
upgradeCap: '',
|
|
433
|
-
},
|
|
251
|
+
supra: { id: '', object: '', upgradeCap: '' },
|
|
434
252
|
pyth: {
|
|
435
|
-
id: '
|
|
253
|
+
id: '0xe622909f9252d4ef1737c41ea430ef44203d8f5dc8e01e1b3950a31405bc54eb',
|
|
254
|
+
object:
|
|
255
|
+
'0xe622909f9252d4ef1737c41ea430ef44203d8f5dc8e01e1b3950a31405bc54eb',
|
|
436
256
|
upgradeCap:
|
|
437
257
|
'0xdf0ffbae1ea5bb25fbca5efba433dcf00c7cced65679af2f04728901275c6157',
|
|
438
258
|
},
|
|
@@ -441,7 +261,9 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
441
261
|
upgradeCap: '',
|
|
442
262
|
},
|
|
443
263
|
xOracle: {
|
|
444
|
-
id: '
|
|
264
|
+
id: '0xe7511600c924f1d0ac4b3fa5de3ae26b8845545902b015dc5fc7894307365d7b',
|
|
265
|
+
object:
|
|
266
|
+
'0xe7511600c924f1d0ac4b3fa5de3ae26b8845545902b015dc5fc7894307365d7b',
|
|
445
267
|
upgradeCap:
|
|
446
268
|
'0x0f928a6b2e26b73330fecaf9b44acfc9800a4a9794d6415c2a3153bc70e3c1f0',
|
|
447
269
|
},
|
|
@@ -452,7 +274,7 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
452
274
|
},
|
|
453
275
|
},
|
|
454
276
|
spool: {
|
|
455
|
-
id: '
|
|
277
|
+
id: '0x1742655fe5872dfa6456673f9e38612a4965e6979e6cd7696a7f1225f28bae21',
|
|
456
278
|
adminCap:
|
|
457
279
|
'0xdd8a047cbbf802bfcde5288b8ef1910965d789cc614da11d39af05fca0bd020a',
|
|
458
280
|
object:
|
|
@@ -464,9 +286,9 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
464
286
|
'0x957de68a18d87817de8309b30c1ec269a4d87ae513abbeed86b5619cb9ce1077',
|
|
465
287
|
},
|
|
466
288
|
ssui: {
|
|
467
|
-
id: '
|
|
289
|
+
id: '0xb9617f83c06ebdeac0a8834782b1015e1cc7ea23739e30c132c4bfb95c37a579',
|
|
468
290
|
rewardPoolId:
|
|
469
|
-
'
|
|
291
|
+
'0xc3206071a8d43212efb6e3b5504f2321f8df97ab122b466c0bc7cfdf398dc13a',
|
|
470
292
|
},
|
|
471
293
|
susdc: {
|
|
472
294
|
id: '0x0b5f5f413bd3799e4052c37311966c77f3a4545eb125d2e93e67a68478021918',
|
|
@@ -474,14 +296,14 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
474
296
|
'0x85ed6ed72ea97c35dbf0cdc7ed6fbc48d8ec15de9b17c74bf4512df8a6d7f166',
|
|
475
297
|
},
|
|
476
298
|
swusdc: {
|
|
477
|
-
id: '
|
|
299
|
+
id: '0xf1b383b9cf2e9f515fc69567df1053098f273849d09cd84b0278a773429bd2b2',
|
|
478
300
|
rewardPoolId:
|
|
479
|
-
'
|
|
301
|
+
'0xc71c53ee6505d928ba15bea4fe4f45d98c9c31eced94b72d00a7827d4b7ba3ff',
|
|
480
302
|
},
|
|
481
303
|
swusdt: {
|
|
482
|
-
id: '
|
|
304
|
+
id: '0xb5567dfa5c7fc17a249e959732664c50713dd8c23db1a11376b27df800c17418',
|
|
483
305
|
rewardPoolId:
|
|
484
|
-
'
|
|
306
|
+
'0x60768b0687ff0235e376a039709a683e4c436098785e473b67b32dbab47b69ab',
|
|
485
307
|
},
|
|
486
308
|
scetus: {
|
|
487
309
|
id: '0xac1bb13bf4472a637c18c2415fb0e3c1227ea2bcf35242e50563c98215bd298e',
|
|
@@ -489,37 +311,60 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
489
311
|
'0x6835c1224126a45086fc6406adc249e3f30df18d779ca4f4e570e38716a17f3f',
|
|
490
312
|
},
|
|
491
313
|
safsui: {
|
|
492
|
-
id: '
|
|
314
|
+
id: '0xc568bb4c991258e839aa54802ecda04fcd9838c826bc3b42b40af81b23c458c8',
|
|
493
315
|
rewardPoolId:
|
|
494
|
-
'
|
|
316
|
+
'0x389a3cbeda742b918941bb24fd00e077bad3367484394d6234f8209b9a6aa03d',
|
|
495
317
|
},
|
|
496
318
|
shasui: {
|
|
497
|
-
id: '
|
|
319
|
+
id: '0x93f3f4499bf89f2d05ddc1f8b15f51701a7c6c4d0ac0b9c3bc99462cbbd8e321',
|
|
498
320
|
rewardPoolId:
|
|
499
|
-
'
|
|
321
|
+
'0x94cee1be7f5ff34193f3aabef0b14142cb28af4d905fe487a9a7d85a15edb6aa',
|
|
500
322
|
},
|
|
501
323
|
svsui: {
|
|
502
|
-
id: '
|
|
324
|
+
id: '0xa970e9087f80cb59e9299b8e7af7175d977ad6c9af0322aa4440e138fbd7ae00',
|
|
503
325
|
rewardPoolId:
|
|
504
|
-
'
|
|
326
|
+
'0x38eee9699c4fc132a6623e54b865f047df4fc6eb83af807300f44e8f4b235ff0',
|
|
505
327
|
},
|
|
506
328
|
},
|
|
507
329
|
config: '',
|
|
508
330
|
},
|
|
509
331
|
borrowIncentive: {
|
|
510
|
-
id: '
|
|
332
|
+
id: '0x8fe05c796e779c71e7739dcaecefb8757ff9482f62e419dbd0dd9c35b740054f',
|
|
511
333
|
adminCap:
|
|
512
334
|
'0xc486afa253646f4d381e81d7f1df8aa4723b845a6bb356f69bad635ffefffe2c',
|
|
513
335
|
object:
|
|
514
|
-
'
|
|
515
|
-
query: '
|
|
336
|
+
'0x8fe05c796e779c71e7739dcaecefb8757ff9482f62e419dbd0dd9c35b740054f',
|
|
337
|
+
query: '0x5fba54ac5862f087112c54c02339623bd245721f5e21ea3330fc8c8afc8f51f4',
|
|
516
338
|
incentivePools:
|
|
517
|
-
'
|
|
339
|
+
'0xcace4f4736229043d9f897667d046370b8a4d6534bfd307787c40b4c9f42514a',
|
|
518
340
|
incentiveAccounts:
|
|
519
|
-
'
|
|
341
|
+
'0x41ff558f580ca0f711910fd6ef687fce9df76ee8e7fc5e150bdfae08e17fae62',
|
|
520
342
|
config:
|
|
521
|
-
'
|
|
343
|
+
'0x9636e7b947b806b9fe438d037f02bb24026c5b2691d2f6bad349c2e117f77cc3',
|
|
522
344
|
},
|
|
345
|
+
// referral: {
|
|
346
|
+
// id: '0x1bf5a8ce77050d8052549d743e16b469f15aa6b81b752b78b6ebb65179665f5a',
|
|
347
|
+
// object:
|
|
348
|
+
// '0x5658d4bf5ddcba27e4337b4262108b3ad1716643cac8c2054ac341538adc72ec',
|
|
349
|
+
// adminCap:
|
|
350
|
+
// '0xc5dc06b9074291259f2cac460c940012c781c4430e42125c541cc43101c3bcbd',
|
|
351
|
+
// referralBindings:
|
|
352
|
+
// '0xcf184487782bed962bf678001efe775d31fb94b9992333a57594cf15d79d5ced',
|
|
353
|
+
// bindingTableId:
|
|
354
|
+
// '0x41a50e258c0a266ce84e0e1a618dbf70b878cc943909e613089a50afcceb2bc0',
|
|
355
|
+
// referralRevenuePool:
|
|
356
|
+
// '0xc24e3e5e37032f29a3dd91a9a1f057af8821b7e6c148e9683900ac8b6d30f0c6',
|
|
357
|
+
// revenueTableId:
|
|
358
|
+
// '0x595baa3654c297bff84ab7786a2d250f019cefc66e8df8e89fd9d41e02bd30dd',
|
|
359
|
+
// referralTiers:
|
|
360
|
+
// '0x144350f3db9b46d11b140084cd54e6de0b9c3b8d265ce8059b51d0ef58ea464b',
|
|
361
|
+
// tiersTableId:
|
|
362
|
+
// '0xeac755a7a8b7798530905ac79e8c114f19d0f130f6eab012954f08faac29c75d',
|
|
363
|
+
// authorizedWitnessList:
|
|
364
|
+
// '0x9d6223dc52015b8a3986a573590ef2af8f1b8f3e4685513888c052f001b87e7f',
|
|
365
|
+
// version:
|
|
366
|
+
// '0x3545849eb97723e676a476ec9d4fe5f2eb0eb2c6b78972851114fd4c7ed4639f',
|
|
367
|
+
// },
|
|
523
368
|
vesca: {
|
|
524
369
|
id: '0x1158813b32962c2d22888fae257d5f2365b03631f0cd5d5b912ccdf51ff4e2f2',
|
|
525
370
|
object:
|
|
@@ -567,32 +412,29 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
567
412
|
'0x574a11f8a0fbaa05b8f559cb65634e8eb20f26b1ec29e7d58de9167f3cedd0f7',
|
|
568
413
|
},
|
|
569
414
|
scoin: {
|
|
570
|
-
id: '
|
|
415
|
+
id: '0x826a4934bee9487e558eed603cf42f30cdc4321d6f31083930791b95f903b9f9',
|
|
571
416
|
coins: {
|
|
572
417
|
ssui: {
|
|
573
418
|
coinType:
|
|
574
|
-
'
|
|
419
|
+
'0x88618204de2dfdc2597681a8441ee726b0dc13494c41e319c3264eb7b35fea90::scallop_sui::SCALLOP_SUI',
|
|
420
|
+
metaData: '',
|
|
575
421
|
treasury:
|
|
576
|
-
'
|
|
577
|
-
metaData:
|
|
578
|
-
'0xac724644f481f4870ecdc29b9549aa8ea5180f10827c0d97b493f9f65a91455d',
|
|
579
|
-
},
|
|
580
|
-
scetus: {
|
|
581
|
-
coinType:
|
|
582
|
-
'0xea346ce428f91ab007210443efcea5f5cdbbb3aae7e9affc0ca93f9203c31f0c::scallop_cetus::SCALLOP_CETUS',
|
|
583
|
-
treasury:
|
|
584
|
-
'0xa283c63488773c916cb3d6c64109536160d5eb496caddc721eb39aad2977d735',
|
|
585
|
-
metaData:
|
|
586
|
-
'0xf022d041455a038d762a091f7a9e9521211f20501bcf8b6913ef5493a023218f',
|
|
422
|
+
'0x03f1d94a40bd9f5d556bacb5c5245732b185572f6a29b36ad8b555d9a8a24f09',
|
|
587
423
|
},
|
|
588
424
|
ssca: {
|
|
589
425
|
coinType:
|
|
590
|
-
'
|
|
426
|
+
'0x9f64a180373a6b66595025ae16a4ab701f0af1dd5c7ce1ac91dc112e52c2a3f8::scallop_sca::SCALLOP_SCA',
|
|
427
|
+
metaData: '',
|
|
591
428
|
treasury:
|
|
592
|
-
'
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
429
|
+
'0x1b05d2cd8b20dba19da073a54195fc52d2f438ea19dea0713bae7a7dab308199',
|
|
430
|
+
},
|
|
431
|
+
// susdc: {
|
|
432
|
+
// coinType:
|
|
433
|
+
// '0x55ed015f9f006c0c96ad36ebe3b3570d088e8498f52defea48e5634c110e485c::scallop_usdc::SCALLOP_USDC',
|
|
434
|
+
// metaData: '',
|
|
435
|
+
// treasury:
|
|
436
|
+
// '0x6ef82ef94472dcb8c2cdeac8df38874024c08570ca165986ba56d1e38fe0c0a3',
|
|
437
|
+
// },
|
|
596
438
|
swusdc: {
|
|
597
439
|
coinType:
|
|
598
440
|
'0xad4d71551d31092230db1fd482008ea42867dbf27b286e9c70a79d2a6191d58d::scallop_wormhole_usdc::SCALLOP_WORMHOLE_USDC',
|
|
@@ -683,67 +525,17 @@ export const TEST_ADDRESSES: AddressesInterface = {
|
|
|
683
525
|
},
|
|
684
526
|
sdeep: {
|
|
685
527
|
coinType:
|
|
686
|
-
'
|
|
528
|
+
'0x34f0a2e793e1f79ceac72cfe3bb95f65541da449418289ccd12922d16140c882::scallop_deep::SCALLOP_DEEP',
|
|
529
|
+
metaData: '',
|
|
687
530
|
treasury:
|
|
688
|
-
'
|
|
689
|
-
metaData:
|
|
690
|
-
'0x2443014594a500a9119e11c6c6a86e865834f496c4614280ce8cace33c0b072e',
|
|
531
|
+
'0x71d41465cf2d16fa0206126526bebdf65c8871d1fcfbd0c2237db2306afd67ba',
|
|
691
532
|
},
|
|
692
533
|
sfud: {
|
|
693
534
|
coinType:
|
|
694
|
-
'
|
|
695
|
-
|
|
696
|
-
'0xf25212f11d182decff7a86165699a73e3d5787aced203ca539f43cfbc10db867',
|
|
697
|
-
metaData:
|
|
698
|
-
'0x4e03390de36b8c84e0a8297d3d0d08a8a34bed93787e37fcb26bfc26df33226c',
|
|
699
|
-
},
|
|
700
|
-
ssbusdt: {
|
|
701
|
-
coinType:
|
|
702
|
-
'0xb1d7df34829d1513b73ba17cb7ad90c88d1e104bb65ab8f62f13e0cc103783d3::scallop_sb_usdt::SCALLOP_SB_USDT',
|
|
535
|
+
'0x3b23c05f917052255a0b16a534dbd4446911aa4a30bd3497cdf5b736551e7ef8::scallop_fud::SCALLOP_FUD',
|
|
536
|
+
metaData: '',
|
|
703
537
|
treasury:
|
|
704
|
-
'
|
|
705
|
-
metaData:
|
|
706
|
-
'0x1ce77b036043c8fdcc5cd050ed06433ae60296b194c2abf7ade8b7b7c8386d36',
|
|
707
|
-
},
|
|
708
|
-
sblub: {
|
|
709
|
-
coinType:
|
|
710
|
-
'0xe72f65446eabfad2103037af2d49d24599106fb44bf4c046c1e7e9acf6844dd0::scallop_blub::SCALLOP_BLUB',
|
|
711
|
-
treasury:
|
|
712
|
-
'0x87d34361dfd0e2accc946684d10b176484f348892f6cc51a829418040c4700e1',
|
|
713
|
-
metaData:
|
|
714
|
-
'0xfa11263cb39de80b9e224d7e0391866a7e779d3d62451de82a91ba601bfb1ce3',
|
|
715
|
-
},
|
|
716
|
-
ssbwbtc: {
|
|
717
|
-
coinType:
|
|
718
|
-
'0x08c0fe357d3a138f4552bee393ce3a28a45bebcca43373d6a90bc44ab76f82e2::scallop_sb_wbtc::SCALLOP_SB_WBTC',
|
|
719
|
-
treasury:
|
|
720
|
-
'0x21db1d3b310d32b5fb1383591103bfea57c6aed62ef6d3b6d469bab752b8681f',
|
|
721
|
-
metaData:
|
|
722
|
-
'0x83d3d44ca57f9b1657065865caa497188d6fc1429f0ca846a51a9058f066f591',
|
|
723
|
-
},
|
|
724
|
-
smusd: {
|
|
725
|
-
coinType:
|
|
726
|
-
'0x0a228d1c59071eccf3716076a1f71216846ee256d9fb07ea11fb7c1eb56435a5::scallop_musd::SCALLOP_MUSD',
|
|
727
|
-
treasury:
|
|
728
|
-
'0xadfd554635ccc87e992f23ca838f0f16c14874e324a1b79b77f6bfe118edea9f',
|
|
729
|
-
metaData:
|
|
730
|
-
'0xb924f8c3d4b993172d4fc553c1ea242e8ca539e83edc3edaf5512ae44dfa6863',
|
|
731
|
-
},
|
|
732
|
-
sns: {
|
|
733
|
-
coinType:
|
|
734
|
-
'0x6511052d2f1404934e0d877709949bcda7c1d451d1218a4b2643ca2f3fa93991::scallop_ns::SCALLOP_NS',
|
|
735
|
-
treasury:
|
|
736
|
-
'0xa178587907006828839f312e6b5afa69e8aa9c66bdf06b2a5918bd8d913488e3',
|
|
737
|
-
metaData:
|
|
738
|
-
'0x898320fe66409bdcf580e2a5764217aa51a6fb26890645efff7011b54117e6df',
|
|
739
|
-
},
|
|
740
|
-
susdy: {
|
|
741
|
-
coinType:
|
|
742
|
-
'0xd285cbbf54c87fd93cd15227547467bb3e405da8bbf2ab99f83f323f88ac9a65::scallop_usdy::SCALLOP_USDY',
|
|
743
|
-
treasury:
|
|
744
|
-
'0xc8c5339fb10d9ad96f235fb312bda54df351549a3302e7fa7fd5d1725481604f',
|
|
745
|
-
metaData:
|
|
746
|
-
'0x098c4c77bd29ec803a11fa2b2d684577c6a09e75b77e0a7ab59b8b785fb492df',
|
|
538
|
+
'0x858c492d51425b922c040c1a389e185b3b00d565e7d72ead1a81dc733104660d',
|
|
747
539
|
},
|
|
748
540
|
},
|
|
749
541
|
},
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { xOracleListType } from 'src/types';
|
|
2
|
+
|
|
3
|
+
export const xOracleList: xOracleListType = {
|
|
4
|
+
// @TODO: Update to real oracle list
|
|
5
|
+
usdc: { primary: ['pyth'], secondary: [] },
|
|
6
|
+
sbeth: { primary: [], secondary: [] },
|
|
7
|
+
sbusdt: { primary: [], secondary: [] },
|
|
8
|
+
sbwbtc: { primary: [], secondary: [] },
|
|
9
|
+
weth: { primary: [], secondary: [] },
|
|
10
|
+
wbtc: { primary: [], secondary: [] },
|
|
11
|
+
wusdc: { primary: [], secondary: [] },
|
|
12
|
+
wusdt: { primary: [], secondary: [] },
|
|
13
|
+
sui: { primary: ['pyth'], secondary: [] },
|
|
14
|
+
wapt: { primary: [], secondary: [] },
|
|
15
|
+
wsol: { primary: [], secondary: [] },
|
|
16
|
+
cetus: { primary: [], secondary: [] },
|
|
17
|
+
afsui: { primary: [], secondary: [] },
|
|
18
|
+
hasui: { primary: [], secondary: [] },
|
|
19
|
+
vsui: { primary: [], secondary: [] },
|
|
20
|
+
sca: { primary: ['pyth'], secondary: [] },
|
|
21
|
+
fud: { primary: ['pyth'], secondary: [] },
|
|
22
|
+
deep: { primary: ['pyth'], secondary: [] },
|
|
23
|
+
fdusd: { primary: [], secondary: [] },
|
|
24
|
+
blub: { primary: [], secondary: [] },
|
|
25
|
+
musd: { primary: [], secondary: [] },
|
|
26
|
+
ns: { primary: [], secondary: [] },
|
|
27
|
+
usdy: { primary: [], secondary: [] },
|
|
28
|
+
};
|
|
File without changes
|
|
@@ -43,6 +43,8 @@ import {
|
|
|
43
43
|
getAllAddresses,
|
|
44
44
|
isIsolatedAsset,
|
|
45
45
|
getUserPortfolio,
|
|
46
|
+
getPriceUpdatePolicies,
|
|
47
|
+
getAssetOracles,
|
|
46
48
|
} from '../queries';
|
|
47
49
|
import {
|
|
48
50
|
ScallopQueryParams,
|
|
@@ -60,6 +62,7 @@ import {
|
|
|
60
62
|
CoinPrices,
|
|
61
63
|
MarketPools,
|
|
62
64
|
MarketCollaterals,
|
|
65
|
+
xOracleRules,
|
|
63
66
|
} from '../types';
|
|
64
67
|
import { ScallopAddress } from './scallopAddress';
|
|
65
68
|
import { ScallopUtils } from './scallopUtils';
|
|
@@ -294,8 +297,14 @@ export class ScallopQuery {
|
|
|
294
297
|
* @param obligationId - The obligation id.
|
|
295
298
|
* @return Obligation data.
|
|
296
299
|
*/
|
|
297
|
-
public async queryObligation(
|
|
298
|
-
|
|
300
|
+
public async queryObligation(
|
|
301
|
+
obligationId: SuiObjectArg,
|
|
302
|
+
args?: {
|
|
303
|
+
version: SuiObjectArg;
|
|
304
|
+
market: SuiObjectArg;
|
|
305
|
+
}
|
|
306
|
+
) {
|
|
307
|
+
return queryObligation(this, obligationId, args?.version, args?.market);
|
|
299
308
|
}
|
|
300
309
|
|
|
301
310
|
/**
|
|
@@ -659,12 +668,6 @@ export class ScallopQuery {
|
|
|
659
668
|
return Object.values(results).find(
|
|
660
669
|
(obligation) => obligation?.obligationId === obligationId
|
|
661
670
|
);
|
|
662
|
-
// return await getObligationAccount(
|
|
663
|
-
// this,
|
|
664
|
-
// obligationId,
|
|
665
|
-
// ownerAddress,
|
|
666
|
-
// args?.indexer
|
|
667
|
-
// );
|
|
668
671
|
}
|
|
669
672
|
|
|
670
673
|
/**
|
|
@@ -899,4 +902,34 @@ export class ScallopQuery {
|
|
|
899
902
|
args?.indexer ?? false
|
|
900
903
|
);
|
|
901
904
|
}
|
|
905
|
+
|
|
906
|
+
/**
|
|
907
|
+
* Get both primary and secondary price update policy objects
|
|
908
|
+
* @returns price update policies
|
|
909
|
+
*/
|
|
910
|
+
public async getPriceUpdatePolicies() {
|
|
911
|
+
return await getPriceUpdatePolicies(this.address);
|
|
912
|
+
}
|
|
913
|
+
|
|
914
|
+
/**
|
|
915
|
+
* Return the supported primary and secondary oracles for all supported pool assets
|
|
916
|
+
* @returns
|
|
917
|
+
*/
|
|
918
|
+
public async getAssetOracles() {
|
|
919
|
+
const [primary, secondary] = await Promise.all([
|
|
920
|
+
getAssetOracles(this.utils, 'primary'),
|
|
921
|
+
getAssetOracles(this.utils, 'secondary'),
|
|
922
|
+
]);
|
|
923
|
+
|
|
924
|
+
return SUPPORT_POOLS.reduce(
|
|
925
|
+
(acc, pool) => {
|
|
926
|
+
acc[pool] = {
|
|
927
|
+
primary: primary[pool] ?? [],
|
|
928
|
+
secondary: secondary[pool] ?? [],
|
|
929
|
+
};
|
|
930
|
+
return acc;
|
|
931
|
+
},
|
|
932
|
+
{} as Record<SupportAssetCoins, xOracleRules>
|
|
933
|
+
);
|
|
934
|
+
}
|
|
902
935
|
}
|
|
@@ -289,7 +289,7 @@ export class ScallopUtils {
|
|
|
289
289
|
*/
|
|
290
290
|
public parseMarketCoinType(coinName: SupportCoins) {
|
|
291
291
|
const protocolObjectId =
|
|
292
|
-
this.address.get('core.object')
|
|
292
|
+
this.address.get('core.object') || PROTOCOL_OBJECT_ID;
|
|
293
293
|
const coinType = this.parseCoinType(coinName, true);
|
|
294
294
|
return `${protocolObjectId}::reserve::MarketCoin<${coinType}>`;
|
|
295
295
|
}
|
package/src/queries/coreQuery.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { normalizeStructTag } from '@mysten/sui/utils';
|
|
1
|
+
import { normalizeStructTag, SUI_CLOCK_OBJECT_ID } from '@mysten/sui/utils';
|
|
2
2
|
import {
|
|
3
3
|
SUPPORT_POOLS,
|
|
4
4
|
PROTOCOL_OBJECT_ID,
|
|
@@ -898,7 +898,7 @@ export const getObligations = async (
|
|
|
898
898
|
ownerAddress: string
|
|
899
899
|
) => {
|
|
900
900
|
const owner = ownerAddress;
|
|
901
|
-
const protocolObjectId = address.get('core.object')
|
|
901
|
+
const protocolObjectId = address.get('core.object') || PROTOCOL_OBJECT_ID;
|
|
902
902
|
const keyObjectsResponse: SuiObjectResponse[] = [];
|
|
903
903
|
let hasNextPage = false;
|
|
904
904
|
let nextCursor: string | null | undefined = null;
|
|
@@ -1007,14 +1007,24 @@ export const queryObligation = async (
|
|
|
1007
1007
|
}: {
|
|
1008
1008
|
address: ScallopAddress;
|
|
1009
1009
|
},
|
|
1010
|
-
obligationId: SuiObjectArg
|
|
1010
|
+
obligationId: SuiObjectArg,
|
|
1011
|
+
version: SuiObjectArg = address.get('core.version'),
|
|
1012
|
+
market: SuiObjectArg = address.get('core.market')
|
|
1011
1013
|
) => {
|
|
1012
1014
|
const packageId = address.get('core.packages.query.id');
|
|
1013
1015
|
const queryTarget = `${packageId}::obligation_query::obligation_data`;
|
|
1014
|
-
const args = [obligationId];
|
|
1015
1016
|
|
|
1016
|
-
|
|
1017
|
-
|
|
1017
|
+
const args = [
|
|
1018
|
+
version,
|
|
1019
|
+
market,
|
|
1020
|
+
obligationId,
|
|
1021
|
+
{
|
|
1022
|
+
objectId: SUI_CLOCK_OBJECT_ID,
|
|
1023
|
+
mutable: false,
|
|
1024
|
+
initialSharedVersion: '1',
|
|
1025
|
+
},
|
|
1026
|
+
]; // @TODO: recheck and confirm on production, need to re-deploy the query package (remind Nathan)
|
|
1027
|
+
|
|
1018
1028
|
const queryResult = await address.cache.queryInspectTxn(
|
|
1019
1029
|
{ queryTarget, args }
|
|
1020
1030
|
// txBlock
|