@suilend/sdk 12.7.0 → 13.0.0-next.g803bba0
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/pyth-2/price-identifier/structs.d.ts +46 -0
- package/_generated/_dependencies/{source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e → pyth-2}/price-identifier/structs.js +45 -25
- package/_generated/_dependencies/std/ascii/structs.d.ts +100 -0
- package/_generated/_dependencies/{source/0x1 → std}/ascii/structs.js +153 -103
- package/_generated/_dependencies/{source/0x1 → std}/option/structs.d.ts +29 -21
- package/_generated/_dependencies/std/option/structs.js +155 -0
- package/_generated/_dependencies/std/type-name/structs.d.ts +65 -0
- package/_generated/_dependencies/{source/0x1 → std}/type-name/structs.js +49 -22
- package/_generated/_dependencies/sui/bag/structs.d.ts +75 -0
- package/_generated/_dependencies/sui/bag/structs.js +154 -0
- package/_generated/_dependencies/{source/0x2 → sui}/balance/structs.d.ts +80 -60
- package/_generated/_dependencies/sui/balance/structs.js +306 -0
- package/_generated/_dependencies/sui/object/structs.d.ts +104 -0
- package/_generated/_dependencies/{source/0x2 → sui}/object/structs.js +98 -46
- package/_generated/_dependencies/{source/0x2 → sui}/object-table/structs.d.ts +37 -30
- package/_generated/_dependencies/sui/object-table/structs.js +164 -0
- package/_generated/_envs/index.d.ts +3 -0
- package/_generated/_envs/index.js +18 -0
- package/_generated/_envs/mainnet.d.ts +2 -0
- package/_generated/_envs/mainnet.js +490 -0
- package/_generated/_framework/env.d.ts +137 -0
- package/_generated/_framework/env.js +261 -0
- package/_generated/_framework/reified.d.ts +68 -36
- package/_generated/_framework/reified.js +110 -98
- package/_generated/_framework/util.d.ts +4 -4
- package/_generated/_framework/util.js +82 -79
- package/_generated/_framework/vector.d.ts +11 -9
- package/_generated/_framework/vector.js +10 -10
- package/_generated/suilend/cell/structs.d.ts +24 -22
- package/_generated/suilend/cell/structs.js +68 -24
- package/_generated/suilend/decimal/structs.d.ts +28 -24
- package/_generated/suilend/decimal/structs.js +45 -24
- package/_generated/suilend/index.d.ts +5 -6
- package/_generated/suilend/index.js +10 -19
- package/_generated/suilend/lending-market/functions.d.ts +1123 -149
- package/_generated/suilend/lending-market/functions.js +1121 -207
- package/_generated/suilend/lending-market/structs.d.ts +985 -1290
- package/_generated/suilend/lending-market/structs.js +2482 -1282
- package/_generated/suilend/lending-market-registry/functions.d.ts +32 -3
- package/_generated/suilend/lending-market-registry/functions.js +30 -6
- package/_generated/suilend/liquidity-mining/structs.d.ts +200 -333
- package/_generated/suilend/liquidity-mining/structs.js +449 -319
- package/_generated/suilend/obligation/structs.d.ts +406 -918
- package/_generated/suilend/obligation/structs.js +786 -596
- package/_generated/suilend/rate-limiter/functions.d.ts +134 -15
- package/_generated/suilend/rate-limiter/functions.js +139 -21
- package/_generated/suilend/rate-limiter/structs.d.ts +72 -80
- package/_generated/suilend/rate-limiter/structs.js +98 -48
- package/_generated/suilend/reserve/structs.d.ts +611 -904
- package/_generated/suilend/reserve/structs.js +1528 -736
- package/_generated/suilend/reserve-config/functions.d.ts +718 -96
- package/_generated/suilend/reserve-config/functions.js +751 -157
- package/_generated/suilend/reserve-config/structs.d.ts +148 -163
- package/_generated/suilend/reserve-config/structs.js +260 -94
- package/client.d.ts +2 -2
- package/client.js +22 -39
- package/lib/initialize.d.ts +76 -76
- package/lib/initialize.js +10 -10
- package/lib/proCompatible.js +5 -5
- package/package.json +1 -1
- package/parsers/lendingMarket.d.ts +9 -9
- package/parsers/obligation.d.ts +14 -14
- package/parsers/obligation.js +4 -4
- package/parsers/rateLimiter.d.ts +1 -1
- package/parsers/reserve.d.ts +12 -12
- package/parsers/reserve.js +2 -2
- package/strategies.d.ts +14 -14
- package/utils/simulate.d.ts +1 -1
- package/utils/simulate.js +5 -5
- package/_generated/_dependencies/source/0x1/ascii/structs.d.ts +0 -84
- package/_generated/_dependencies/source/0x1/index.d.ts +0 -3
- package/_generated/_dependencies/source/0x1/index.js +0 -3
- package/_generated/_dependencies/source/0x1/option/structs.js +0 -110
- package/_generated/_dependencies/source/0x1/type-name/structs.d.ts +0 -47
- package/_generated/_dependencies/source/0x2/bag/structs.d.ts +0 -52
- package/_generated/_dependencies/source/0x2/bag/structs.js +0 -113
- package/_generated/_dependencies/source/0x2/balance/structs.js +0 -210
- package/_generated/_dependencies/source/0x2/index.d.ts +0 -3
- package/_generated/_dependencies/source/0x2/index.js +0 -3
- package/_generated/_dependencies/source/0x2/object/structs.d.ts +0 -82
- package/_generated/_dependencies/source/0x2/object-table/structs.js +0 -115
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.d.ts +0 -4
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.js +0 -4
- package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.d.ts +0 -46
|
@@ -1,43 +1,50 @@
|
|
|
1
|
-
import { bcs } from
|
|
2
|
-
import { fromHex, toHex } from
|
|
3
|
-
import { compressSuiType, parseTypeName } from
|
|
1
|
+
import { bcs } from '@mysten/sui/bcs';
|
|
2
|
+
import { fromHex, toHex } from '@mysten/sui/utils';
|
|
3
|
+
import { compressSuiType, parseTypeName } from './util.js';
|
|
4
4
|
// for backwards compatibility
|
|
5
|
-
export { vector } from
|
|
5
|
+
export { vector } from './vector.js';
|
|
6
6
|
export function phantom(type) {
|
|
7
|
-
if (typeof type ===
|
|
7
|
+
if (typeof type === 'string') {
|
|
8
8
|
return {
|
|
9
9
|
phantomType: type,
|
|
10
|
-
kind:
|
|
10
|
+
kind: 'PhantomReified',
|
|
11
11
|
};
|
|
12
12
|
}
|
|
13
13
|
else {
|
|
14
|
+
// Reified handle case: read `fullTypeName` lazily so phantom handles created
|
|
15
|
+
// before `setActiveEnv(...)` still reflect the current env on each access.
|
|
16
|
+
// Without this getter, `phantomType` would freeze the typeName at phantom-call time
|
|
17
|
+
// and leak the wrong address into vector/option type-arg strings produced via
|
|
18
|
+
// `extractType(...)`.
|
|
14
19
|
return {
|
|
15
|
-
phantomType
|
|
16
|
-
|
|
20
|
+
get phantomType() {
|
|
21
|
+
return type.fullTypeName;
|
|
22
|
+
},
|
|
23
|
+
kind: 'PhantomReified',
|
|
17
24
|
};
|
|
18
25
|
}
|
|
19
26
|
}
|
|
20
27
|
const Address = bcs.bytes(32).transform({
|
|
21
28
|
input: (val) => fromHex(val),
|
|
22
|
-
output:
|
|
29
|
+
output: val => toHex(val),
|
|
23
30
|
});
|
|
24
31
|
export function toBcs(arg) {
|
|
25
32
|
switch (arg) {
|
|
26
|
-
case
|
|
33
|
+
case 'bool':
|
|
27
34
|
return bcs.bool();
|
|
28
|
-
case
|
|
35
|
+
case 'u8':
|
|
29
36
|
return bcs.u8();
|
|
30
|
-
case
|
|
37
|
+
case 'u16':
|
|
31
38
|
return bcs.u16();
|
|
32
|
-
case
|
|
39
|
+
case 'u32':
|
|
33
40
|
return bcs.u32();
|
|
34
|
-
case
|
|
41
|
+
case 'u64':
|
|
35
42
|
return bcs.u64();
|
|
36
|
-
case
|
|
43
|
+
case 'u128':
|
|
37
44
|
return bcs.u128();
|
|
38
|
-
case
|
|
45
|
+
case 'u256':
|
|
39
46
|
return bcs.u256();
|
|
40
|
-
case
|
|
47
|
+
case 'address':
|
|
41
48
|
return Address;
|
|
42
49
|
default:
|
|
43
50
|
return arg.bcs;
|
|
@@ -45,56 +52,58 @@ export function toBcs(arg) {
|
|
|
45
52
|
}
|
|
46
53
|
export function extractType(reified) {
|
|
47
54
|
switch (reified) {
|
|
48
|
-
case
|
|
49
|
-
case
|
|
50
|
-
case
|
|
51
|
-
case
|
|
52
|
-
case
|
|
53
|
-
case
|
|
54
|
-
case
|
|
55
|
-
case
|
|
55
|
+
case 'u8':
|
|
56
|
+
case 'u16':
|
|
57
|
+
case 'u32':
|
|
58
|
+
case 'u64':
|
|
59
|
+
case 'u128':
|
|
60
|
+
case 'u256':
|
|
61
|
+
case 'bool':
|
|
62
|
+
case 'address':
|
|
56
63
|
return reified;
|
|
57
64
|
}
|
|
58
65
|
switch (reified.kind) {
|
|
59
|
-
case
|
|
66
|
+
case 'PhantomReified':
|
|
60
67
|
return reified.phantomType;
|
|
61
|
-
case
|
|
68
|
+
case 'StructClassReified':
|
|
62
69
|
return reified.fullTypeName;
|
|
63
|
-
case
|
|
70
|
+
case 'VectorClassReified':
|
|
71
|
+
return reified.fullTypeName;
|
|
72
|
+
case 'EnumClassReified':
|
|
64
73
|
return reified.fullTypeName;
|
|
65
74
|
}
|
|
66
|
-
throw new Error(
|
|
75
|
+
throw new Error('unreachable');
|
|
67
76
|
}
|
|
68
77
|
export function decodeFromFields(reified, field) {
|
|
69
78
|
switch (reified) {
|
|
70
|
-
case
|
|
71
|
-
case
|
|
72
|
-
case
|
|
73
|
-
case
|
|
79
|
+
case 'bool':
|
|
80
|
+
case 'u8':
|
|
81
|
+
case 'u16':
|
|
82
|
+
case 'u32':
|
|
74
83
|
return field;
|
|
75
|
-
case
|
|
76
|
-
case
|
|
77
|
-
case
|
|
84
|
+
case 'u64':
|
|
85
|
+
case 'u128':
|
|
86
|
+
case 'u256':
|
|
78
87
|
return BigInt(field);
|
|
79
|
-
case
|
|
88
|
+
case 'address':
|
|
80
89
|
return `0x${field}`;
|
|
81
90
|
}
|
|
82
|
-
if (reified.kind ===
|
|
91
|
+
if (reified.kind === 'VectorClassReified') {
|
|
83
92
|
return reified.fromFields(field).elements;
|
|
84
93
|
}
|
|
85
94
|
switch (reified.typeName) {
|
|
86
|
-
case
|
|
87
|
-
case
|
|
95
|
+
case '0x1::string::String':
|
|
96
|
+
case '0x1::ascii::String':
|
|
88
97
|
return new TextDecoder().decode(Uint8Array.from(field.bytes)).toString();
|
|
89
|
-
case
|
|
90
|
-
return new TextDecoder()
|
|
91
|
-
|
|
92
|
-
.toString();
|
|
93
|
-
case "0x2::object::ID":
|
|
98
|
+
case '0x2::url::Url':
|
|
99
|
+
return new TextDecoder().decode(Uint8Array.from(field.url.bytes)).toString();
|
|
100
|
+
case '0x2::object::ID':
|
|
94
101
|
return `0x${field.bytes}`;
|
|
95
|
-
case
|
|
102
|
+
case '0x2::object::UID':
|
|
96
103
|
return `0x${field.id.bytes}`;
|
|
97
|
-
case
|
|
104
|
+
case '0x1::type_name::TypeName':
|
|
105
|
+
return new TextDecoder().decode(Uint8Array.from(field.name.bytes)).toString();
|
|
106
|
+
case '0x1::option::Option': {
|
|
98
107
|
if (field.vec.length === 0) {
|
|
99
108
|
return null;
|
|
100
109
|
}
|
|
@@ -106,32 +115,34 @@ export function decodeFromFields(reified, field) {
|
|
|
106
115
|
}
|
|
107
116
|
export function decodeFromFieldsWithTypes(reified, item) {
|
|
108
117
|
switch (reified) {
|
|
109
|
-
case
|
|
110
|
-
case
|
|
111
|
-
case
|
|
112
|
-
case
|
|
118
|
+
case 'bool':
|
|
119
|
+
case 'u8':
|
|
120
|
+
case 'u16':
|
|
121
|
+
case 'u32':
|
|
113
122
|
return item;
|
|
114
|
-
case
|
|
115
|
-
case
|
|
116
|
-
case
|
|
123
|
+
case 'u64':
|
|
124
|
+
case 'u128':
|
|
125
|
+
case 'u256':
|
|
117
126
|
return BigInt(item);
|
|
118
|
-
case
|
|
127
|
+
case 'address':
|
|
119
128
|
return item;
|
|
120
129
|
}
|
|
121
|
-
if (reified.kind ===
|
|
130
|
+
if (reified.kind === 'VectorClassReified') {
|
|
122
131
|
return reified.fromFieldsWithTypes(item).elements;
|
|
123
132
|
}
|
|
124
133
|
switch (reified.typeName) {
|
|
125
|
-
case
|
|
126
|
-
case
|
|
127
|
-
case
|
|
128
|
-
case
|
|
134
|
+
case '0x1::string::String':
|
|
135
|
+
case '0x1::ascii::String':
|
|
136
|
+
case '0x2::url::Url':
|
|
137
|
+
case '0x2::object::ID':
|
|
129
138
|
return item;
|
|
130
|
-
case
|
|
139
|
+
case '0x2::object::UID':
|
|
131
140
|
return item.id;
|
|
132
|
-
case
|
|
141
|
+
case '0x1::type_name::TypeName':
|
|
142
|
+
return item.fields.name;
|
|
143
|
+
case '0x2::balance::Balance':
|
|
133
144
|
return reified.fromFields({ value: BigInt(item) });
|
|
134
|
-
case
|
|
145
|
+
case '0x1::option::Option': {
|
|
135
146
|
if (item === null) {
|
|
136
147
|
return null;
|
|
137
148
|
}
|
|
@@ -143,12 +154,11 @@ export function decodeFromFieldsWithTypes(reified, item) {
|
|
|
143
154
|
}
|
|
144
155
|
export function assertReifiedTypeArgsMatch(fullType, typeArgs, reifiedTypeArgs) {
|
|
145
156
|
if (reifiedTypeArgs.length !== typeArgs.length) {
|
|
146
|
-
throw new Error(`provided item has mismatching number of type
|
|
157
|
+
throw new Error(`provided item has mismatching number of type argments ${fullType} (expected ${reifiedTypeArgs.length}, got ${typeArgs.length}))`);
|
|
147
158
|
}
|
|
148
159
|
for (let i = 0; i < typeArgs.length; i++) {
|
|
149
|
-
if (compressSuiType(typeArgs[i]) !==
|
|
150
|
-
|
|
151
|
-
throw new Error(`provided item has mismatching type arguments ${fullType} (expected ${extractType(reifiedTypeArgs[i])}, got ${typeArgs[i]}))`);
|
|
160
|
+
if (compressSuiType(typeArgs[i]) !== compressSuiType(extractType(reifiedTypeArgs[i]))) {
|
|
161
|
+
throw new Error(`provided item has mismatching type argments ${fullType} (expected ${extractType(reifiedTypeArgs[i])}, got ${typeArgs[i]}))`);
|
|
152
162
|
}
|
|
153
163
|
}
|
|
154
164
|
}
|
|
@@ -159,29 +169,30 @@ export function assertFieldsWithTypesArgsMatch(item, reifiedTypeArgs) {
|
|
|
159
169
|
export function fieldToJSON(type, field) {
|
|
160
170
|
const { typeName, typeArgs } = parseTypeName(type);
|
|
161
171
|
switch (typeName) {
|
|
162
|
-
case
|
|
172
|
+
case 'bool':
|
|
163
173
|
return field;
|
|
164
|
-
case
|
|
165
|
-
case
|
|
166
|
-
case
|
|
174
|
+
case 'u8':
|
|
175
|
+
case 'u16':
|
|
176
|
+
case 'u32':
|
|
167
177
|
return field;
|
|
168
|
-
case
|
|
169
|
-
case
|
|
170
|
-
case
|
|
178
|
+
case 'u64':
|
|
179
|
+
case 'u128':
|
|
180
|
+
case 'u256':
|
|
171
181
|
return field.toString();
|
|
172
|
-
case
|
|
173
|
-
case
|
|
182
|
+
case 'address':
|
|
183
|
+
case 'signer':
|
|
174
184
|
return field;
|
|
175
|
-
case
|
|
185
|
+
case 'vector':
|
|
176
186
|
return field.map((item) => fieldToJSON(typeArgs[0], item));
|
|
177
187
|
// handle special types
|
|
178
|
-
case
|
|
179
|
-
case
|
|
180
|
-
case
|
|
181
|
-
case
|
|
182
|
-
case
|
|
188
|
+
case '0x1::string::String':
|
|
189
|
+
case '0x1::ascii::String':
|
|
190
|
+
case '0x2::url::Url':
|
|
191
|
+
case '0x2::object::ID':
|
|
192
|
+
case '0x2::object::UID':
|
|
193
|
+
case '0x1::type_name::TypeName':
|
|
183
194
|
return field;
|
|
184
|
-
case
|
|
195
|
+
case '0x1::option::Option': {
|
|
185
196
|
if (field === null) {
|
|
186
197
|
return null;
|
|
187
198
|
}
|
|
@@ -193,29 +204,30 @@ export function fieldToJSON(type, field) {
|
|
|
193
204
|
}
|
|
194
205
|
export function decodeFromJSONField(typeArg, field) {
|
|
195
206
|
switch (typeArg) {
|
|
196
|
-
case
|
|
197
|
-
case
|
|
198
|
-
case
|
|
199
|
-
case
|
|
207
|
+
case 'bool':
|
|
208
|
+
case 'u8':
|
|
209
|
+
case 'u16':
|
|
210
|
+
case 'u32':
|
|
200
211
|
return field;
|
|
201
|
-
case
|
|
202
|
-
case
|
|
203
|
-
case
|
|
212
|
+
case 'u64':
|
|
213
|
+
case 'u128':
|
|
214
|
+
case 'u256':
|
|
204
215
|
return BigInt(field);
|
|
205
|
-
case
|
|
216
|
+
case 'address':
|
|
206
217
|
return field;
|
|
207
218
|
}
|
|
208
|
-
if (typeArg.kind ===
|
|
219
|
+
if (typeArg.kind === 'VectorClassReified') {
|
|
209
220
|
return typeArg.fromJSONField(field).elements;
|
|
210
221
|
}
|
|
211
222
|
switch (typeArg.typeName) {
|
|
212
|
-
case
|
|
213
|
-
case
|
|
214
|
-
case
|
|
215
|
-
case
|
|
216
|
-
case
|
|
223
|
+
case '0x1::string::String':
|
|
224
|
+
case '0x1::ascii::String':
|
|
225
|
+
case '0x2::url::Url':
|
|
226
|
+
case '0x2::object::ID':
|
|
227
|
+
case '0x2::object::UID':
|
|
228
|
+
case '0x1::type_name::TypeName':
|
|
217
229
|
return field;
|
|
218
|
-
case
|
|
230
|
+
case '0x1::option::Option': {
|
|
219
231
|
if (field === null) {
|
|
220
232
|
return null;
|
|
221
233
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Transaction, TransactionArgument,
|
|
1
|
+
import { Transaction, TransactionArgument, TransactionObjectInput } from '@mysten/sui/transactions';
|
|
2
2
|
export interface FieldsWithTypes {
|
|
3
3
|
fields: Record<string, any>;
|
|
4
4
|
type: string;
|
|
@@ -12,10 +12,10 @@ export declare function parseTypeName(name: string): {
|
|
|
12
12
|
typeArgs: string[];
|
|
13
13
|
};
|
|
14
14
|
export declare function isTransactionArgument(arg: GenericArg): arg is TransactionArgument;
|
|
15
|
-
export declare function obj(tx: Transaction, arg: TransactionObjectInput):
|
|
15
|
+
export declare function obj(tx: Transaction, arg: TransactionObjectInput): TransactionArgument;
|
|
16
16
|
export declare function pure(tx: Transaction, arg: PureArg, type: string): TransactionArgument;
|
|
17
|
-
export declare function option(tx: Transaction, type: string, arg: GenericArg | null):
|
|
18
|
-
export declare function generic(tx: Transaction, type: string, arg: GenericArg):
|
|
17
|
+
export declare function option(tx: Transaction, type: string, arg: GenericArg | null): TransactionArgument;
|
|
18
|
+
export declare function generic(tx: Transaction, type: string, arg: GenericArg): TransactionArgument;
|
|
19
19
|
export declare function vector(tx: Transaction, itemType: string, items: Array<GenericArg> | TransactionArgument): TransactionArgument;
|
|
20
20
|
export declare function typeArgIsPure(type: string): boolean;
|
|
21
21
|
export declare function compressSuiAddress(addr: string): string;
|