@suilend/sdk 3.0.8 → 5.0.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/_generated/_dependencies/source/0x1/ascii/structs.d.ts +4 -4
- package/_generated/_dependencies/source/0x1/ascii/structs.js +42 -41
- package/_generated/_dependencies/source/0x1/option/structs.js +22 -26
- package/_generated/_dependencies/source/0x1/type-name/structs.d.ts +3 -3
- package/_generated/_dependencies/source/0x1/type-name/structs.js +21 -25
- package/_generated/_dependencies/source/0x2/bag/structs.d.ts +5 -5
- package/_generated/_dependencies/source/0x2/bag/structs.js +22 -25
- package/_generated/_dependencies/source/0x2/balance/structs.d.ts +4 -4
- package/_generated/_dependencies/source/0x2/balance/structs.js +42 -41
- package/_generated/_dependencies/source/0x2/object/structs.d.ts +5 -5
- package/_generated/_dependencies/source/0x2/object/structs.js +42 -41
- package/_generated/_dependencies/source/0x2/object-table/structs.d.ts +5 -5
- package/_generated/_dependencies/source/0x2/object-table/structs.js +22 -25
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs.d.ts +3 -3
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs.js +22 -25
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs.d.ts +9 -9
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs.js +24 -25
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs.d.ts +21 -21
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs.js +23 -25
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.d.ts +2 -2
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.js +21 -25
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs.d.ts +52 -52
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs.js +45 -41
- package/_generated/_framework/vector.js +9 -6
- package/_generated/suilend/cell/structs.d.ts +1 -1
- package/_generated/suilend/cell/structs.js +21 -25
- package/_generated/suilend/decimal/structs.d.ts +2 -2
- package/_generated/suilend/decimal/structs.js +21 -25
- package/_generated/suilend/lending-market/structs.d.ts +129 -129
- package/_generated/suilend/lending-market/structs.js +391 -265
- package/_generated/suilend/liquidity-mining/structs.d.ts +44 -44
- package/_generated/suilend/liquidity-mining/structs.js +122 -89
- package/_generated/suilend/obligation/structs.d.ts +98 -98
- package/_generated/suilend/obligation/structs.js +194 -121
- package/_generated/suilend/rate-limiter/structs.d.ts +12 -12
- package/_generated/suilend/rate-limiter/structs.js +46 -41
- package/_generated/suilend/reserve/structs.d.ts +128 -128
- package/_generated/suilend/reserve/structs.js +243 -153
- package/_generated/suilend/reserve-config/structs.d.ts +30 -30
- package/_generated/suilend/reserve-config/structs.js +60 -41
- package/api/events.js +5 -14
- package/client.js +267 -319
- package/lib/initialize.d.ts +85 -3
- package/lib/initialize.js +119 -52
- package/lib/liquidityMining.js +15 -19
- package/lib/pyth.d.ts +16 -0
- package/lib/pyth.js +30 -15
- package/lib/pythAdapter.js +96 -112
- package/lib/strategyOwnerCap.js +8 -17
- package/margin/margin/admin_cap.d.ts +2 -2
- package/margin/margin/deps/std/type_name.d.ts +1 -1
- package/margin/margin/deps/suilend/lending_market.d.ts +2 -2
- package/margin/margin/market.d.ts +11 -11
- package/margin/margin/market.js +22 -22
- package/margin/margin/permissions.js +14 -14
- package/margin/margin/position.d.ts +47 -47
- package/margin/margin/position.js +10 -10
- package/margin/margin/router.d.ts +5 -5
- package/margin/margin/router.js +16 -16
- package/margin/margin/version.d.ts +1 -1
- package/margin/utils/index.js +22 -36
- package/package.json +1 -1
- package/parsers/apiReserveAssetDataEvent.js +4 -1
- package/parsers/lendingMarket.js +3 -4
- package/parsers/reserve.js +4 -1
- package/strategies.js +188 -204
- package/swap/quote.d.ts +1 -1
- package/swap/quote.js +28 -39
- package/swap/transaction.js +17 -26
- package/utils/events.js +20 -32
- package/utils/obligation.js +111 -135
- package/utils/simulate.d.ts +68 -1
- package/utils/simulate.js +149 -31
|
@@ -1,85 +1,85 @@
|
|
|
1
1
|
import { type Transaction } from "@mysten/sui/transactions";
|
|
2
2
|
import { MoveStruct, type RawTransactionArgument } from "../utils/index.js";
|
|
3
3
|
export declare const Position: MoveStruct<{
|
|
4
|
-
id: import("@mysten/
|
|
5
|
-
is_long: import("@mysten/
|
|
4
|
+
id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
5
|
+
is_long: import("@mysten/bcs").BcsType<boolean, boolean, "bool">;
|
|
6
6
|
obligation_owner_cap: MoveStruct<{
|
|
7
|
-
id: import("@mysten/
|
|
8
|
-
obligation_id: import("@mysten/
|
|
7
|
+
id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
8
|
+
obligation_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
9
9
|
}, "suilend::lending_market::ObligationOwnerCap<phantom P>">;
|
|
10
|
-
created_ts: import("@mysten/
|
|
11
|
-
owner: import("@mysten/
|
|
12
|
-
market_id: import("@mysten/
|
|
13
|
-
lending_market_id: import("@mysten/
|
|
10
|
+
created_ts: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
11
|
+
owner: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
12
|
+
market_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
13
|
+
lending_market_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
14
14
|
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::position::Position<phantom P>">;
|
|
15
15
|
export declare const PositionCap: MoveStruct<{
|
|
16
|
-
id: import("@mysten/
|
|
17
|
-
position_id: import("@mysten/
|
|
16
|
+
id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
17
|
+
position_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
18
18
|
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::position::PositionCap">;
|
|
19
19
|
export declare const OpenPositionEvent: MoveStruct<{
|
|
20
|
-
position_id: import("@mysten/
|
|
21
|
-
market_id: import("@mysten/
|
|
22
|
-
obligation_id: import("@mysten/
|
|
23
|
-
is_long: import("@mysten/
|
|
20
|
+
position_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
21
|
+
market_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
22
|
+
obligation_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
23
|
+
is_long: import("@mysten/bcs").BcsType<boolean, boolean, "bool">;
|
|
24
24
|
collateral_coin_type: MoveStruct<{
|
|
25
|
-
name: import("@mysten/
|
|
25
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
26
26
|
}, "std::type_name::TypeName">;
|
|
27
27
|
loan_coin_type: MoveStruct<{
|
|
28
|
-
name: import("@mysten/
|
|
28
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
29
29
|
}, "std::type_name::TypeName">;
|
|
30
|
-
owner: import("@mysten/
|
|
31
|
-
timestamp: import("@mysten/
|
|
30
|
+
owner: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
31
|
+
timestamp: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
32
32
|
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::position::OpenPositionEvent">;
|
|
33
33
|
export declare const ClosePositionEvent: MoveStruct<{
|
|
34
|
-
position_id: import("@mysten/
|
|
35
|
-
market_id: import("@mysten/
|
|
36
|
-
owner: import("@mysten/
|
|
37
|
-
timestamp: import("@mysten/
|
|
34
|
+
position_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
35
|
+
market_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
36
|
+
owner: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
37
|
+
timestamp: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
38
38
|
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::position::ClosePositionEvent">;
|
|
39
39
|
export declare const DepositEvent: MoveStruct<{
|
|
40
|
-
position_id: import("@mysten/
|
|
41
|
-
owner: import("@mysten/
|
|
40
|
+
position_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
41
|
+
owner: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
42
42
|
coin_type: MoveStruct<{
|
|
43
|
-
name: import("@mysten/
|
|
43
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
44
44
|
}, "std::type_name::TypeName">;
|
|
45
|
-
deposit_amount: import("@mysten/
|
|
46
|
-
timestamp: import("@mysten/
|
|
45
|
+
deposit_amount: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
46
|
+
timestamp: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
47
47
|
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::position::DepositEvent">;
|
|
48
48
|
export declare const WithdrawEvent: MoveStruct<{
|
|
49
|
-
position_id: import("@mysten/
|
|
50
|
-
owner: import("@mysten/
|
|
49
|
+
position_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
50
|
+
owner: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
51
51
|
coin_type: MoveStruct<{
|
|
52
|
-
name: import("@mysten/
|
|
52
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
53
53
|
}, "std::type_name::TypeName">;
|
|
54
|
-
withdraw_amount: import("@mysten/
|
|
55
|
-
timestamp: import("@mysten/
|
|
54
|
+
withdraw_amount: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
55
|
+
timestamp: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
56
56
|
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::position::WithdrawEvent">;
|
|
57
57
|
export declare const BorrowEvent: MoveStruct<{
|
|
58
|
-
position_id: import("@mysten/
|
|
59
|
-
owner: import("@mysten/
|
|
58
|
+
position_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
59
|
+
owner: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
60
60
|
coin_type: MoveStruct<{
|
|
61
|
-
name: import("@mysten/
|
|
61
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
62
62
|
}, "std::type_name::TypeName">;
|
|
63
|
-
borrow_amount: import("@mysten/
|
|
64
|
-
timestamp: import("@mysten/
|
|
63
|
+
borrow_amount: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
64
|
+
timestamp: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
65
65
|
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::position::BorrowEvent">;
|
|
66
66
|
export declare const RepayEvent: MoveStruct<{
|
|
67
|
-
position_id: import("@mysten/
|
|
68
|
-
owner: import("@mysten/
|
|
67
|
+
position_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
68
|
+
owner: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
69
69
|
repay_coin_type: MoveStruct<{
|
|
70
|
-
name: import("@mysten/
|
|
70
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
71
71
|
}, "std::type_name::TypeName">;
|
|
72
|
-
repay_amount: import("@mysten/
|
|
73
|
-
timestamp: import("@mysten/
|
|
72
|
+
repay_amount: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
73
|
+
timestamp: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
74
74
|
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::position::RepayEvent">;
|
|
75
75
|
export declare const ClaimRewardEvent: MoveStruct<{
|
|
76
|
-
position_id: import("@mysten/
|
|
77
|
-
owner: import("@mysten/
|
|
76
|
+
position_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
77
|
+
owner: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
78
78
|
reward_coin_type: MoveStruct<{
|
|
79
|
-
name: import("@mysten/
|
|
79
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
80
80
|
}, "std::type_name::TypeName">;
|
|
81
|
-
reward_amount: import("@mysten/
|
|
82
|
-
timestamp: import("@mysten/
|
|
81
|
+
reward_amount: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
82
|
+
timestamp: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
83
83
|
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::position::ClaimRewardEvent">;
|
|
84
84
|
export interface OwnerArguments {
|
|
85
85
|
position: RawTransactionArgument<string>;
|
|
@@ -99,8 +99,8 @@ export const ClaimRewardEvent = new MoveStruct({
|
|
|
99
99
|
});
|
|
100
100
|
/** Get position owner */
|
|
101
101
|
export function owner(options) {
|
|
102
|
-
|
|
103
|
-
|
|
102
|
+
const packageAddress = options.package ??
|
|
103
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
104
104
|
const argumentsTypes = [null];
|
|
105
105
|
const parameterNames = ["position"];
|
|
106
106
|
return (tx) => tx.moveCall({
|
|
@@ -113,8 +113,8 @@ export function owner(options) {
|
|
|
113
113
|
}
|
|
114
114
|
/** Check if it's a long position */
|
|
115
115
|
export function isLong(options) {
|
|
116
|
-
|
|
117
|
-
|
|
116
|
+
const packageAddress = options.package ??
|
|
117
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
118
118
|
const argumentsTypes = [null];
|
|
119
119
|
const parameterNames = ["position"];
|
|
120
120
|
return (tx) => tx.moveCall({
|
|
@@ -126,8 +126,8 @@ export function isLong(options) {
|
|
|
126
126
|
});
|
|
127
127
|
}
|
|
128
128
|
export function obligationId(options) {
|
|
129
|
-
|
|
130
|
-
|
|
129
|
+
const packageAddress = options.package ??
|
|
130
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
131
131
|
const argumentsTypes = [null];
|
|
132
132
|
const parameterNames = ["position"];
|
|
133
133
|
return (tx) => tx.moveCall({
|
|
@@ -139,8 +139,8 @@ export function obligationId(options) {
|
|
|
139
139
|
});
|
|
140
140
|
}
|
|
141
141
|
export function lendingMarketId(options) {
|
|
142
|
-
|
|
143
|
-
|
|
142
|
+
const packageAddress = options.package ??
|
|
143
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
144
144
|
const argumentsTypes = [null];
|
|
145
145
|
const parameterNames = ["position"];
|
|
146
146
|
return (tx) => tx.moveCall({
|
|
@@ -152,8 +152,8 @@ export function lendingMarketId(options) {
|
|
|
152
152
|
});
|
|
153
153
|
}
|
|
154
154
|
export function marketId(options) {
|
|
155
|
-
|
|
156
|
-
|
|
155
|
+
const packageAddress = options.package ??
|
|
156
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
157
157
|
const argumentsTypes = [null];
|
|
158
158
|
const parameterNames = ["position"];
|
|
159
159
|
return (tx) => tx.moveCall({
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { type Transaction } from "@mysten/sui/transactions";
|
|
2
2
|
import { MoveStruct, type RawTransactionArgument } from "../utils/index.js";
|
|
3
3
|
export declare const FeeCollectedEvent: MoveStruct<{
|
|
4
|
-
market_id: import("@mysten/
|
|
5
|
-
is_open: import("@mysten/
|
|
6
|
-
fee_amount: import("@mysten/
|
|
4
|
+
market_id: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
5
|
+
is_open: import("@mysten/bcs").BcsType<boolean, boolean, "bool">;
|
|
6
|
+
fee_amount: import("@mysten/bcs").BcsType<string, string | number | bigint, "u64">;
|
|
7
7
|
fee_coin_type: MoveStruct<{
|
|
8
|
-
name: import("@mysten/
|
|
8
|
+
name: import("@mysten/bcs").BcsType<string, string, "string">;
|
|
9
9
|
}, "std::type_name::TypeName">;
|
|
10
|
-
recipient: import("@mysten/
|
|
10
|
+
recipient: import("@mysten/bcs").BcsType<string, string | Uint8Array<ArrayBufferLike>, "bytes[32]">;
|
|
11
11
|
}, "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::router::FeeCollectedEvent">;
|
|
12
12
|
export interface OpenPositionArguments {
|
|
13
13
|
market: RawTransactionArgument<string>;
|
package/margin/margin/router.js
CHANGED
|
@@ -16,8 +16,8 @@ export const FeeCollectedEvent = new MoveStruct({
|
|
|
16
16
|
},
|
|
17
17
|
});
|
|
18
18
|
export function openPosition(options) {
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
const packageAddress = options.package ??
|
|
20
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
21
21
|
const argumentsTypes = [null, null, "bool", "0x2::clock::Clock"];
|
|
22
22
|
const parameterNames = ["market", "lendingMarket", "isLong"];
|
|
23
23
|
return (tx) => tx.moveCall({
|
|
@@ -30,8 +30,8 @@ export function openPosition(options) {
|
|
|
30
30
|
}
|
|
31
31
|
/** Close position */
|
|
32
32
|
export function closePosition(options) {
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
const packageAddress = options.package ??
|
|
34
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
35
35
|
const argumentsTypes = [
|
|
36
36
|
null,
|
|
37
37
|
null,
|
|
@@ -49,8 +49,8 @@ export function closePosition(options) {
|
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
51
|
export function borrow(options) {
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
const packageAddress = options.package ??
|
|
53
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
54
54
|
const argumentsTypes = [
|
|
55
55
|
null,
|
|
56
56
|
null,
|
|
@@ -76,8 +76,8 @@ export function borrow(options) {
|
|
|
76
76
|
});
|
|
77
77
|
}
|
|
78
78
|
export function repay(options) {
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
const packageAddress = options.package ??
|
|
80
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
81
81
|
const argumentsTypes = [
|
|
82
82
|
null,
|
|
83
83
|
null,
|
|
@@ -102,8 +102,8 @@ export function repay(options) {
|
|
|
102
102
|
});
|
|
103
103
|
}
|
|
104
104
|
export function withdraw(options) {
|
|
105
|
-
|
|
106
|
-
|
|
105
|
+
const packageAddress = options.package ??
|
|
106
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
107
107
|
const argumentsTypes = [
|
|
108
108
|
null,
|
|
109
109
|
null,
|
|
@@ -131,8 +131,8 @@ export function withdraw(options) {
|
|
|
131
131
|
});
|
|
132
132
|
}
|
|
133
133
|
export function deposit(options) {
|
|
134
|
-
|
|
135
|
-
|
|
134
|
+
const packageAddress = options.package ??
|
|
135
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
136
136
|
const argumentsTypes = [
|
|
137
137
|
null,
|
|
138
138
|
null,
|
|
@@ -157,8 +157,8 @@ export function deposit(options) {
|
|
|
157
157
|
});
|
|
158
158
|
}
|
|
159
159
|
export function claimRewards(options) {
|
|
160
|
-
|
|
161
|
-
|
|
160
|
+
const packageAddress = options.package ??
|
|
161
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
162
162
|
const argumentsTypes = [
|
|
163
163
|
null,
|
|
164
164
|
null,
|
|
@@ -187,8 +187,8 @@ export function claimRewards(options) {
|
|
|
187
187
|
});
|
|
188
188
|
}
|
|
189
189
|
export function compoundDebt(options) {
|
|
190
|
-
|
|
191
|
-
|
|
190
|
+
const packageAddress = options.package ??
|
|
191
|
+
"0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53";
|
|
192
192
|
const argumentsTypes = [null, null, null, null, "u64"];
|
|
193
193
|
const parameterNames = [
|
|
194
194
|
"lendingMarket",
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { MoveTuple } from "../utils/index.js";
|
|
2
|
-
export declare const Version: MoveTuple<readonly [import("@mysten/
|
|
2
|
+
export declare const Version: MoveTuple<readonly [import("@mysten/bcs").BcsType<number, number, "u16">], "0xd5f3054404ec9275b50985851a5b515728f131a3bdd9c9a5f738a9326b738d53::version::Version">;
|
package/margin/utils/index.js
CHANGED
|
@@ -1,23 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
11
|
-
var t = {};
|
|
12
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
13
|
-
t[p] = s[p];
|
|
14
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
15
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
16
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
17
|
-
t[p[i]] = s[p[i]];
|
|
18
|
-
}
|
|
19
|
-
return t;
|
|
20
|
-
};
|
|
21
1
|
/* eslint-disable @typescript-eslint/no-empty-object-type */
|
|
22
2
|
import { BcsEnum, BcsStruct, BcsTuple, TypeTagSerializer, bcs, } from "@mysten/sui/bcs";
|
|
23
3
|
import { isArgument } from "@mysten/sui/transactions";
|
|
@@ -139,23 +119,29 @@ export function normalizeMoveArguments(args, argTypes, parameterNames) {
|
|
|
139
119
|
return normalizedArgs;
|
|
140
120
|
}
|
|
141
121
|
export class MoveStruct extends BcsStruct {
|
|
142
|
-
get(
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
return res;
|
|
122
|
+
async get({ objectId, ...options }) {
|
|
123
|
+
const [res] = await this.getMany({
|
|
124
|
+
...options,
|
|
125
|
+
objectIds: [objectId],
|
|
147
126
|
});
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
127
|
+
return res;
|
|
128
|
+
}
|
|
129
|
+
async getMany({ client, ...options }) {
|
|
130
|
+
const response = (await client.core.getObjects({
|
|
131
|
+
...options,
|
|
132
|
+
include: {
|
|
133
|
+
...options.include,
|
|
134
|
+
content: true,
|
|
135
|
+
},
|
|
136
|
+
}));
|
|
137
|
+
return response.objects.map((obj) => {
|
|
138
|
+
if (obj instanceof Error) {
|
|
139
|
+
throw obj;
|
|
140
|
+
}
|
|
141
|
+
return {
|
|
142
|
+
...obj,
|
|
143
|
+
json: this.parse(obj.content),
|
|
144
|
+
};
|
|
159
145
|
});
|
|
160
146
|
}
|
|
161
147
|
}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@suilend/sdk","version":"
|
|
1
|
+
{"name":"@suilend/sdk","version":"5.0.0","private":false,"description":"A TypeScript SDK for interacting with the Suilend program","author":"Suilend","license":"MIT","main":"./index.js","exports":{".":"./index.js","./mmt":"./mmt.js","./strategies":"./strategies.js","./client":"./client.js","./utils":"./utils/index.js","./utils/simulate":"./utils/simulate.js","./utils/obligation":"./utils/obligation.js","./utils/events":"./utils/events.js","./margin":"./margin/index.js","./lib/transactions":"./lib/transactions.js","./lib/strategyOwnerCap":"./lib/strategyOwnerCap.js","./lib/constants":"./lib/constants.js","./lib/types":"./lib/types.js","./lib":"./lib/index.js","./lib/pyth":"./lib/pyth.js","./lib/liquidityMining":"./lib/liquidityMining.js","./lib/initialize":"./lib/initialize.js","./lib/pythAdapter":"./lib/pythAdapter.js","./swap":"./swap/index.js","./swap/transaction":"./swap/transaction.js","./swap/quote":"./swap/quote.js","./parsers/reserve":"./parsers/reserve.js","./parsers/rateLimiter":"./parsers/rateLimiter.js","./parsers":"./parsers/index.js","./parsers/apiReserveAssetDataEvent":"./parsers/apiReserveAssetDataEvent.js","./parsers/obligation":"./parsers/obligation.js","./parsers/lendingMarket":"./parsers/lendingMarket.js","./api":"./api/index.js","./api/events":"./api/events.js","./margin/utils":"./margin/utils/index.js","./margin/margin/market":"./margin/margin/market.js","./margin/margin/version":"./margin/margin/version.js","./margin/margin/position":"./margin/margin/position.js","./margin/margin/router":"./margin/margin/router.js","./margin/margin/admin_cap":"./margin/margin/admin_cap.js","./margin/margin/permissions":"./margin/margin/permissions.js","./_generated/suilend":"./_generated/suilend/index.js","./_generated/_framework/reified":"./_generated/_framework/reified.js","./_generated/_framework/util":"./_generated/_framework/util.js","./_generated/_framework/vector":"./_generated/_framework/vector.js","./_generated/suilend/lending-market-registry/functions":"./_generated/suilend/lending-market-registry/functions.js","./_generated/suilend/obligation/structs":"./_generated/suilend/obligation/structs.js","./_generated/suilend/reserve-config/structs":"./_generated/suilend/reserve-config/structs.js","./_generated/suilend/reserve-config/functions":"./_generated/suilend/reserve-config/functions.js","./_generated/suilend/rate-limiter/structs":"./_generated/suilend/rate-limiter/structs.js","./_generated/suilend/rate-limiter/functions":"./_generated/suilend/rate-limiter/functions.js","./_generated/suilend/cell/structs":"./_generated/suilend/cell/structs.js","./_generated/suilend/liquidity-mining/structs":"./_generated/suilend/liquidity-mining/structs.js","./_generated/suilend/lending-market/structs":"./_generated/suilend/lending-market/structs.js","./_generated/suilend/lending-market/functions":"./_generated/suilend/lending-market/functions.js","./_generated/suilend/decimal/structs":"./_generated/suilend/decimal/structs.js","./_generated/suilend/reserve/structs":"./_generated/suilend/reserve/structs.js","./margin/margin/deps/suilend/lending_market":"./margin/margin/deps/suilend/lending_market.js","./margin/margin/deps/sui/vec_set":"./margin/margin/deps/sui/vec_set.js","./margin/margin/deps/std/type_name":"./margin/margin/deps/std/type_name.js","./_generated/_dependencies/source/0x1":"./_generated/_dependencies/source/0x1/index.js","./_generated/_dependencies/source/0x2":"./_generated/_dependencies/source/0x2/index.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.js","./_generated/_dependencies/source/0x1/option/structs":"./_generated/_dependencies/source/0x1/option/structs.js","./_generated/_dependencies/source/0x1/ascii/structs":"./_generated/_dependencies/source/0x1/ascii/structs.js","./_generated/_dependencies/source/0x1/type-name/structs":"./_generated/_dependencies/source/0x1/type-name/structs.js","./_generated/_dependencies/source/0x2/balance/structs":"./_generated/_dependencies/source/0x2/balance/structs.js","./_generated/_dependencies/source/0x2/object/structs":"./_generated/_dependencies/source/0x2/object/structs.js","./_generated/_dependencies/source/0x2/object-table/structs":"./_generated/_dependencies/source/0x2/object-table/structs.js","./_generated/_dependencies/source/0x2/bag/structs":"./_generated/_dependencies/source/0x2/bag/structs.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs.js","./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs":"./_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs.js"},"types":"./index.d.ts","scripts":{"build":"rm -rf ./dist && bun tsc && node ./fix-esm-imports.js","typecheck":"tsc --noEmit && tsc --noEmit -p tsconfig.test.json","test":"bun test tests/","lint:ci":"bun run typecheck","prettier":"prettier --write src/ tests/","release":"bun run build && bun ./release.js && cd ./dist && npm publish --access public"},"repository":{"type":"git","url":"git+https://github.com/fireflyprotocol/lending-mono.git","directory":"ts/sdks/sdk"},"dependencies":{"@bluefin-exchange/bluefin7k-aggregator-sdk":"^7.3.0","@cetusprotocol/aggregator-sdk":"^1.5.7","@flowx-finance/sdk":"^2.1.0","@pythnetwork/pyth-sui-js":"2.2.0","@suilend/springsui-sdk":"^4.0.0","bignumber.js":"^9.1.2","bn.js":"^5.2.2","crypto-js":"^4.2.0","lodash":"^4.17.21","p-limit":"3.1.0","uuid":"^11.0.3"},"devDependencies":{"@types/bn.js":"^5.2.0","@types/lodash":"^4.17.20","ts-node":"^10.9.2","typescript":"^6.0.3","@tsconfig/recommended":"^1.0.8","@types/node":"^22.9.0"},"peerDependencies":{"@mysten/bcs":"^2.0.5","@mysten/sui":"2.17.0","@suilend/sui-core":"^1.0.0"},"type":"module"}
|
|
@@ -55,5 +55,8 @@ export const parseReserveAssetDataEvent = (event, reserve) => {
|
|
|
55
55
|
};
|
|
56
56
|
};
|
|
57
57
|
export const parseDownsampledApiReserveAssetDataEvent = (event, reserve) => {
|
|
58
|
-
return
|
|
58
|
+
return {
|
|
59
|
+
...parseReserveAssetDataEvent(event, reserve),
|
|
60
|
+
sampleTimestampS: event.sampletimestamp,
|
|
61
|
+
};
|
|
59
62
|
};
|
package/parsers/lendingMarket.js
CHANGED
|
@@ -2,7 +2,6 @@ import BigNumber from "bignumber.js";
|
|
|
2
2
|
import { parseRateLimiter } from "./rateLimiter.js";
|
|
3
3
|
import { parseReserve } from "./reserve.js";
|
|
4
4
|
export const parseLendingMarket = (lendingMarket, reserves, coinMetadataMap, nowS, lendingMarketMetadata) => {
|
|
5
|
-
var _a, _b, _c;
|
|
6
5
|
const id = lendingMarket.id;
|
|
7
6
|
const type = lendingMarket.$typeArgs[0];
|
|
8
7
|
const version = lendingMarket.version;
|
|
@@ -35,9 +34,9 @@ export const parseLendingMarket = (lendingMarket, reserves, coinMetadataMap, now
|
|
|
35
34
|
// Metadata
|
|
36
35
|
id,
|
|
37
36
|
type,
|
|
38
|
-
ownerCapId:
|
|
39
|
-
name:
|
|
40
|
-
isHidden:
|
|
37
|
+
ownerCapId: lendingMarketMetadata?.lendingMarketOwnerCapId ?? undefined,
|
|
38
|
+
name: lendingMarketMetadata?.name ?? type.split("::").slice(2).join(" "),
|
|
39
|
+
isHidden: lendingMarketMetadata?.isHidden ?? true,
|
|
41
40
|
/**
|
|
42
41
|
* @deprecated since version 1.0.3. Use `depositedAmountUsd` instead.
|
|
43
42
|
*/
|
package/parsers/reserve.js
CHANGED
|
@@ -74,7 +74,10 @@ export const parseReserve = (reserve, coinMetadataMap) => {
|
|
|
74
74
|
borrowAprPercent,
|
|
75
75
|
depositAprPercent,
|
|
76
76
|
utilizationPercent,
|
|
77
|
-
token:
|
|
77
|
+
token: {
|
|
78
|
+
coinType,
|
|
79
|
+
...coinMetadata,
|
|
80
|
+
},
|
|
78
81
|
/**
|
|
79
82
|
* @deprecated since version 1.1.19. Use `token.symbol` instead.
|
|
80
83
|
*/
|