@mysten/sui 1.26.1 → 1.27.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/CHANGELOG.md +7 -0
- package/dist/cjs/bcs/bcs.d.ts +3 -2
- package/dist/cjs/bcs/bcs.js +3 -3
- package/dist/cjs/bcs/bcs.js.map +2 -2
- package/dist/cjs/bcs/effects.d.ts +18 -12
- package/dist/cjs/bcs/index.d.ts +460 -453
- package/dist/cjs/bcs/index.js +4 -4
- package/dist/cjs/bcs/index.js.map +1 -1
- package/dist/cjs/client/client.d.ts +38 -16
- package/dist/cjs/client/client.js +142 -62
- package/dist/cjs/client/client.js.map +2 -2
- package/dist/cjs/client/http-transport.d.ts +2 -0
- package/dist/cjs/client/http-transport.js +7 -0
- package/dist/cjs/client/http-transport.js.map +2 -2
- package/dist/cjs/client/rpc-websocket-client.d.ts +2 -1
- package/dist/cjs/client/rpc-websocket-client.js +7 -2
- package/dist/cjs/client/rpc-websocket-client.js.map +2 -2
- package/dist/cjs/client/types/generated.d.ts +1 -0
- package/dist/cjs/client/types/generated.js.map +1 -1
- package/dist/cjs/client/types/params.d.ts +56 -0
- package/dist/cjs/client/types/params.js.map +1 -1
- package/dist/cjs/experimental/cache.d.ts +11 -0
- package/dist/cjs/experimental/cache.js +79 -0
- package/dist/cjs/experimental/cache.js.map +7 -0
- package/dist/cjs/experimental/client.d.ts +4 -2
- package/dist/cjs/experimental/client.js +4 -2
- package/dist/cjs/experimental/client.js.map +2 -2
- package/dist/cjs/experimental/core.d.ts +10 -2
- package/dist/cjs/experimental/core.js +59 -1
- package/dist/cjs/experimental/core.js.map +2 -2
- package/dist/cjs/experimental/index.d.ts +5 -0
- package/dist/cjs/experimental/index.js +29 -0
- package/dist/cjs/experimental/index.js.map +7 -0
- package/dist/cjs/experimental/transports/jsonRPC.d.ts +19 -5
- package/dist/cjs/experimental/transports/jsonRPC.js +270 -12
- package/dist/cjs/experimental/transports/jsonRPC.js.map +2 -2
- package/dist/cjs/experimental/types.d.ts +84 -41
- package/dist/cjs/experimental/types.js.map +1 -1
- package/dist/cjs/keypairs/secp256k1/keypair.js +1 -1
- package/dist/cjs/keypairs/secp256k1/keypair.js.map +2 -2
- package/dist/cjs/keypairs/secp256r1/keypair.js +1 -1
- package/dist/cjs/keypairs/secp256r1/keypair.js.map +2 -2
- package/dist/cjs/multisig/publickey.js +5 -5
- package/dist/cjs/multisig/publickey.js.map +2 -2
- package/dist/cjs/multisig/signer.js +2 -2
- package/dist/cjs/multisig/signer.js.map +2 -2
- package/dist/cjs/transactions/plugins/utils.js +2 -2
- package/dist/cjs/transactions/plugins/utils.js.map +2 -2
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/esm/bcs/bcs.d.ts +3 -2
- package/dist/esm/bcs/bcs.js +3 -3
- package/dist/esm/bcs/bcs.js.map +2 -2
- package/dist/esm/bcs/effects.d.ts +18 -12
- package/dist/esm/bcs/index.d.ts +460 -453
- package/dist/esm/bcs/index.js +4 -4
- package/dist/esm/bcs/index.js.map +1 -1
- package/dist/esm/client/client.d.ts +38 -16
- package/dist/esm/client/client.js +143 -63
- package/dist/esm/client/client.js.map +2 -2
- package/dist/esm/client/http-transport.d.ts +2 -0
- package/dist/esm/client/http-transport.js +7 -0
- package/dist/esm/client/http-transport.js.map +2 -2
- package/dist/esm/client/rpc-websocket-client.d.ts +2 -1
- package/dist/esm/client/rpc-websocket-client.js +7 -2
- package/dist/esm/client/rpc-websocket-client.js.map +2 -2
- package/dist/esm/client/types/generated.d.ts +1 -0
- package/dist/esm/client/types/params.d.ts +56 -0
- package/dist/esm/experimental/cache.d.ts +11 -0
- package/dist/esm/experimental/cache.js +59 -0
- package/dist/esm/experimental/cache.js.map +7 -0
- package/dist/esm/experimental/client.d.ts +4 -2
- package/dist/esm/experimental/client.js +4 -2
- package/dist/esm/experimental/client.js.map +2 -2
- package/dist/esm/experimental/core.d.ts +10 -2
- package/dist/esm/experimental/core.js +60 -2
- package/dist/esm/experimental/core.js.map +2 -2
- package/dist/esm/experimental/index.d.ts +5 -0
- package/dist/esm/experimental/index.js +9 -0
- package/dist/esm/experimental/index.js.map +7 -0
- package/dist/esm/experimental/transports/jsonRPC.d.ts +19 -5
- package/dist/esm/experimental/transports/jsonRPC.js +270 -12
- package/dist/esm/experimental/transports/jsonRPC.js.map +2 -2
- package/dist/esm/experimental/types.d.ts +84 -41
- package/dist/esm/keypairs/secp256k1/keypair.js +1 -1
- package/dist/esm/keypairs/secp256k1/keypair.js.map +2 -2
- package/dist/esm/keypairs/secp256r1/keypair.js +1 -1
- package/dist/esm/keypairs/secp256r1/keypair.js.map +2 -2
- package/dist/esm/multisig/publickey.js +5 -5
- package/dist/esm/multisig/publickey.js.map +2 -2
- package/dist/esm/multisig/signer.js +2 -2
- package/dist/esm/multisig/signer.js.map +2 -2
- package/dist/esm/transactions/plugins/utils.js +2 -2
- package/dist/esm/transactions/plugins/utils.js.map +2 -2
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/experimental/package.json +6 -0
- package/package.json +7 -2
- package/src/bcs/bcs.ts +3 -3
- package/src/bcs/index.ts +3 -3
- package/src/client/client.ts +119 -26
- package/src/client/http-transport.ts +10 -0
- package/src/client/rpc-websocket-client.ts +8 -1
- package/src/client/types/generated.ts +1 -0
- package/src/client/types/params.ts +68 -6
- package/src/experimental/cache.ts +64 -0
- package/src/experimental/client.ts +4 -2
- package/src/experimental/core.ts +89 -2
- package/src/experimental/index.ts +20 -0
- package/src/experimental/transports/jsonRPC.ts +319 -9
- package/src/experimental/types.ts +92 -48
- package/src/keypairs/secp256k1/keypair.ts +1 -1
- package/src/keypairs/secp256r1/keypair.ts +1 -1
- package/src/multisig/publickey.ts +5 -5
- package/src/multisig/signer.ts +2 -2
- package/src/transactions/__tests__/bcs.test.ts +2 -2
- package/src/transactions/plugins/utils.ts +2 -2
- package/src/version.ts +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { fromBase58, toBase64, toHex } from "@mysten/bcs";
|
|
2
|
-
import {
|
|
2
|
+
import { Experimental_BaseClient } from "../experimental/client.js";
|
|
3
3
|
import { JSONRpcTransport } from "../experimental/transports/jsonRPC.js";
|
|
4
4
|
import { isTransaction } from "../transactions/index.js";
|
|
5
5
|
import {
|
|
@@ -15,7 +15,7 @@ const SUI_CLIENT_BRAND = Symbol.for("@mysten/SuiClient");
|
|
|
15
15
|
function isSuiClient(client) {
|
|
16
16
|
return typeof client === "object" && client !== null && client[SUI_CLIENT_BRAND] === true;
|
|
17
17
|
}
|
|
18
|
-
class SuiClient extends
|
|
18
|
+
class SuiClient extends Experimental_BaseClient {
|
|
19
19
|
/**
|
|
20
20
|
* Establish a connection to a Sui RPC endpoint
|
|
21
21
|
*
|
|
@@ -24,15 +24,17 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
24
24
|
constructor(options) {
|
|
25
25
|
super({ network: options.network ?? "unknown" });
|
|
26
26
|
this.core = new JSONRpcTransport(this);
|
|
27
|
+
this.jsonRpc = this;
|
|
27
28
|
this.transport = options.transport ?? new SuiHTTPTransport({ url: options.url });
|
|
28
29
|
}
|
|
29
30
|
get [SUI_CLIENT_BRAND]() {
|
|
30
31
|
return true;
|
|
31
32
|
}
|
|
32
|
-
async getRpcApiVersion() {
|
|
33
|
+
async getRpcApiVersion({ signal } = {}) {
|
|
33
34
|
const resp = await this.transport.request({
|
|
34
35
|
method: "rpc.discover",
|
|
35
|
-
params: []
|
|
36
|
+
params: [],
|
|
37
|
+
signal
|
|
36
38
|
});
|
|
37
39
|
return resp.info.version;
|
|
38
40
|
}
|
|
@@ -45,7 +47,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
45
47
|
}
|
|
46
48
|
return await this.transport.request({
|
|
47
49
|
method: "suix_getCoins",
|
|
48
|
-
params: [input.owner, input.coinType, input.cursor, input.limit]
|
|
50
|
+
params: [input.owner, input.coinType, input.cursor, input.limit],
|
|
51
|
+
signal: input.signal
|
|
49
52
|
});
|
|
50
53
|
}
|
|
51
54
|
/**
|
|
@@ -57,7 +60,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
57
60
|
}
|
|
58
61
|
return await this.transport.request({
|
|
59
62
|
method: "suix_getAllCoins",
|
|
60
|
-
params: [input.owner, input.cursor, input.limit]
|
|
63
|
+
params: [input.owner, input.cursor, input.limit],
|
|
64
|
+
signal: input.signal
|
|
61
65
|
});
|
|
62
66
|
}
|
|
63
67
|
/**
|
|
@@ -69,7 +73,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
69
73
|
}
|
|
70
74
|
return await this.transport.request({
|
|
71
75
|
method: "suix_getBalance",
|
|
72
|
-
params: [input.owner, input.coinType]
|
|
76
|
+
params: [input.owner, input.coinType],
|
|
77
|
+
signal: input.signal
|
|
73
78
|
});
|
|
74
79
|
}
|
|
75
80
|
/**
|
|
@@ -79,7 +84,11 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
79
84
|
if (!input.owner || !isValidSuiAddress(normalizeSuiAddress(input.owner))) {
|
|
80
85
|
throw new Error("Invalid Sui address");
|
|
81
86
|
}
|
|
82
|
-
return await this.transport.request({
|
|
87
|
+
return await this.transport.request({
|
|
88
|
+
method: "suix_getAllBalances",
|
|
89
|
+
params: [input.owner],
|
|
90
|
+
signal: input.signal
|
|
91
|
+
});
|
|
83
92
|
}
|
|
84
93
|
/**
|
|
85
94
|
* Fetch CoinMetadata for a given coin type
|
|
@@ -87,7 +96,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
87
96
|
async getCoinMetadata(input) {
|
|
88
97
|
return await this.transport.request({
|
|
89
98
|
method: "suix_getCoinMetadata",
|
|
90
|
-
params: [input.coinType]
|
|
99
|
+
params: [input.coinType],
|
|
100
|
+
signal: input.signal
|
|
91
101
|
});
|
|
92
102
|
}
|
|
93
103
|
/**
|
|
@@ -96,7 +106,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
96
106
|
async getTotalSupply(input) {
|
|
97
107
|
return await this.transport.request({
|
|
98
108
|
method: "suix_getTotalSupply",
|
|
99
|
-
params: [input.coinType]
|
|
109
|
+
params: [input.coinType],
|
|
110
|
+
signal: input.signal
|
|
100
111
|
});
|
|
101
112
|
}
|
|
102
113
|
/**
|
|
@@ -104,8 +115,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
104
115
|
* @param method the method to be invoked
|
|
105
116
|
* @param args the arguments to be passed to the RPC request
|
|
106
117
|
*/
|
|
107
|
-
async call(method, params) {
|
|
108
|
-
return await this.transport.request({ method, params });
|
|
118
|
+
async call(method, params, { signal } = {}) {
|
|
119
|
+
return await this.transport.request({ method, params, signal });
|
|
109
120
|
}
|
|
110
121
|
/**
|
|
111
122
|
* Get Move function argument types like read, write and full access
|
|
@@ -113,7 +124,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
113
124
|
async getMoveFunctionArgTypes(input) {
|
|
114
125
|
return await this.transport.request({
|
|
115
126
|
method: "sui_getMoveFunctionArgTypes",
|
|
116
|
-
params: [input.package, input.module, input.function]
|
|
127
|
+
params: [input.package, input.module, input.function],
|
|
128
|
+
signal: input.signal
|
|
117
129
|
});
|
|
118
130
|
}
|
|
119
131
|
/**
|
|
@@ -123,7 +135,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
123
135
|
async getNormalizedMoveModulesByPackage(input) {
|
|
124
136
|
return await this.transport.request({
|
|
125
137
|
method: "sui_getNormalizedMoveModulesByPackage",
|
|
126
|
-
params: [input.package]
|
|
138
|
+
params: [input.package],
|
|
139
|
+
signal: input.signal
|
|
127
140
|
});
|
|
128
141
|
}
|
|
129
142
|
/**
|
|
@@ -132,7 +145,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
132
145
|
async getNormalizedMoveModule(input) {
|
|
133
146
|
return await this.transport.request({
|
|
134
147
|
method: "sui_getNormalizedMoveModule",
|
|
135
|
-
params: [input.package, input.module]
|
|
148
|
+
params: [input.package, input.module],
|
|
149
|
+
signal: input.signal
|
|
136
150
|
});
|
|
137
151
|
}
|
|
138
152
|
/**
|
|
@@ -141,7 +155,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
141
155
|
async getNormalizedMoveFunction(input) {
|
|
142
156
|
return await this.transport.request({
|
|
143
157
|
method: "sui_getNormalizedMoveFunction",
|
|
144
|
-
params: [input.package, input.module, input.function]
|
|
158
|
+
params: [input.package, input.module, input.function],
|
|
159
|
+
signal: input.signal
|
|
145
160
|
});
|
|
146
161
|
}
|
|
147
162
|
/**
|
|
@@ -150,7 +165,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
150
165
|
async getNormalizedMoveStruct(input) {
|
|
151
166
|
return await this.transport.request({
|
|
152
167
|
method: "sui_getNormalizedMoveStruct",
|
|
153
|
-
params: [input.package, input.module, input.struct]
|
|
168
|
+
params: [input.package, input.module, input.struct],
|
|
169
|
+
signal: input.signal
|
|
154
170
|
});
|
|
155
171
|
}
|
|
156
172
|
/**
|
|
@@ -170,7 +186,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
170
186
|
},
|
|
171
187
|
input.cursor,
|
|
172
188
|
input.limit
|
|
173
|
-
]
|
|
189
|
+
],
|
|
190
|
+
signal: input.signal
|
|
174
191
|
});
|
|
175
192
|
}
|
|
176
193
|
/**
|
|
@@ -182,13 +199,15 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
182
199
|
}
|
|
183
200
|
return await this.transport.request({
|
|
184
201
|
method: "sui_getObject",
|
|
185
|
-
params: [input.id, input.options]
|
|
202
|
+
params: [input.id, input.options],
|
|
203
|
+
signal: input.signal
|
|
186
204
|
});
|
|
187
205
|
}
|
|
188
206
|
async tryGetPastObject(input) {
|
|
189
207
|
return await this.transport.request({
|
|
190
208
|
method: "sui_tryGetPastObject",
|
|
191
|
-
params: [input.id, input.version, input.options]
|
|
209
|
+
params: [input.id, input.version, input.options],
|
|
210
|
+
signal: input.signal
|
|
192
211
|
});
|
|
193
212
|
}
|
|
194
213
|
/**
|
|
@@ -206,7 +225,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
206
225
|
}
|
|
207
226
|
return await this.transport.request({
|
|
208
227
|
method: "sui_multiGetObjects",
|
|
209
|
-
params: [input.ids, input.options]
|
|
228
|
+
params: [input.ids, input.options],
|
|
229
|
+
signal: input.signal
|
|
210
230
|
});
|
|
211
231
|
}
|
|
212
232
|
/**
|
|
@@ -223,7 +243,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
223
243
|
input.cursor,
|
|
224
244
|
input.limit,
|
|
225
245
|
(input.order || "descending") === "descending"
|
|
226
|
-
]
|
|
246
|
+
],
|
|
247
|
+
signal: input.signal
|
|
227
248
|
});
|
|
228
249
|
}
|
|
229
250
|
async getTransactionBlock(input) {
|
|
@@ -232,7 +253,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
232
253
|
}
|
|
233
254
|
return await this.transport.request({
|
|
234
255
|
method: "sui_getTransactionBlock",
|
|
235
|
-
params: [input.digest, input.options]
|
|
256
|
+
params: [input.digest, input.options],
|
|
257
|
+
signal: input.signal
|
|
236
258
|
});
|
|
237
259
|
}
|
|
238
260
|
async multiGetTransactionBlocks(input) {
|
|
@@ -247,14 +269,16 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
247
269
|
}
|
|
248
270
|
return await this.transport.request({
|
|
249
271
|
method: "sui_multiGetTransactionBlocks",
|
|
250
|
-
params: [input.digests, input.options]
|
|
272
|
+
params: [input.digests, input.options],
|
|
273
|
+
signal: input.signal
|
|
251
274
|
});
|
|
252
275
|
}
|
|
253
276
|
async executeTransactionBlock({
|
|
254
277
|
transactionBlock,
|
|
255
278
|
signature,
|
|
256
279
|
options,
|
|
257
|
-
requestType
|
|
280
|
+
requestType,
|
|
281
|
+
signal
|
|
258
282
|
}) {
|
|
259
283
|
const result = await this.transport.request({
|
|
260
284
|
method: "sui_executeTransactionBlock",
|
|
@@ -262,7 +286,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
262
286
|
typeof transactionBlock === "string" ? transactionBlock : toBase64(transactionBlock),
|
|
263
287
|
Array.isArray(signature) ? signature : [signature],
|
|
264
288
|
options
|
|
265
|
-
]
|
|
289
|
+
],
|
|
290
|
+
signal
|
|
266
291
|
});
|
|
267
292
|
if (requestType === "WaitForLocalExecution") {
|
|
268
293
|
try {
|
|
@@ -296,20 +321,22 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
296
321
|
/**
|
|
297
322
|
* Get total number of transactions
|
|
298
323
|
*/
|
|
299
|
-
async getTotalTransactionBlocks() {
|
|
324
|
+
async getTotalTransactionBlocks({ signal } = {}) {
|
|
300
325
|
const resp = await this.transport.request({
|
|
301
326
|
method: "sui_getTotalTransactionBlocks",
|
|
302
|
-
params: []
|
|
327
|
+
params: [],
|
|
328
|
+
signal
|
|
303
329
|
});
|
|
304
330
|
return BigInt(resp);
|
|
305
331
|
}
|
|
306
332
|
/**
|
|
307
333
|
* Getting the reference gas price for the network
|
|
308
334
|
*/
|
|
309
|
-
async getReferenceGasPrice() {
|
|
335
|
+
async getReferenceGasPrice({ signal } = {}) {
|
|
310
336
|
const resp = await this.transport.request({
|
|
311
337
|
method: "suix_getReferenceGasPrice",
|
|
312
|
-
params: []
|
|
338
|
+
params: [],
|
|
339
|
+
signal
|
|
313
340
|
});
|
|
314
341
|
return BigInt(resp);
|
|
315
342
|
}
|
|
@@ -320,7 +347,11 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
320
347
|
if (!input.owner || !isValidSuiAddress(normalizeSuiAddress(input.owner))) {
|
|
321
348
|
throw new Error("Invalid Sui address");
|
|
322
349
|
}
|
|
323
|
-
return await this.transport.request({
|
|
350
|
+
return await this.transport.request({
|
|
351
|
+
method: "suix_getStakes",
|
|
352
|
+
params: [input.owner],
|
|
353
|
+
signal: input.signal
|
|
354
|
+
});
|
|
324
355
|
}
|
|
325
356
|
/**
|
|
326
357
|
* Return the delegated stakes queried by id.
|
|
@@ -333,14 +364,21 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
333
364
|
});
|
|
334
365
|
return await this.transport.request({
|
|
335
366
|
method: "suix_getStakesByIds",
|
|
336
|
-
params: [input.stakedSuiIds]
|
|
367
|
+
params: [input.stakedSuiIds],
|
|
368
|
+
signal: input.signal
|
|
337
369
|
});
|
|
338
370
|
}
|
|
339
371
|
/**
|
|
340
372
|
* Return the latest system state content.
|
|
341
373
|
*/
|
|
342
|
-
async getLatestSuiSystemState(
|
|
343
|
-
|
|
374
|
+
async getLatestSuiSystemState({
|
|
375
|
+
signal
|
|
376
|
+
} = {}) {
|
|
377
|
+
return await this.transport.request({
|
|
378
|
+
method: "suix_getLatestSuiSystemState",
|
|
379
|
+
params: [],
|
|
380
|
+
signal
|
|
381
|
+
});
|
|
344
382
|
}
|
|
345
383
|
/**
|
|
346
384
|
* Get events for a given query criteria
|
|
@@ -353,7 +391,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
353
391
|
input.cursor,
|
|
354
392
|
input.limit,
|
|
355
393
|
(input.order || "descending") === "descending"
|
|
356
|
-
]
|
|
394
|
+
],
|
|
395
|
+
signal: input.signal
|
|
357
396
|
});
|
|
358
397
|
}
|
|
359
398
|
/**
|
|
@@ -366,7 +405,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
366
405
|
method: "suix_subscribeEvent",
|
|
367
406
|
unsubscribe: "suix_unsubscribeEvent",
|
|
368
407
|
params: [input.filter],
|
|
369
|
-
onMessage: input.onMessage
|
|
408
|
+
onMessage: input.onMessage,
|
|
409
|
+
signal: input.signal
|
|
370
410
|
});
|
|
371
411
|
}
|
|
372
412
|
/**
|
|
@@ -377,7 +417,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
377
417
|
method: "suix_subscribeTransaction",
|
|
378
418
|
unsubscribe: "suix_unsubscribeTransaction",
|
|
379
419
|
params: [input.filter],
|
|
380
|
-
onMessage: input.onMessage
|
|
420
|
+
onMessage: input.onMessage,
|
|
421
|
+
signal: input.signal
|
|
381
422
|
});
|
|
382
423
|
}
|
|
383
424
|
/**
|
|
@@ -402,9 +443,11 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
402
443
|
} else {
|
|
403
444
|
throw new Error("Unknown transaction block format.");
|
|
404
445
|
}
|
|
446
|
+
input.signal?.throwIfAborted();
|
|
405
447
|
return await this.transport.request({
|
|
406
448
|
method: "sui_devInspectTransactionBlock",
|
|
407
|
-
params: [input.sender, devInspectTxBytes, input.gasPrice?.toString(), input.epoch]
|
|
449
|
+
params: [input.sender, devInspectTxBytes, input.gasPrice?.toString(), input.epoch],
|
|
450
|
+
signal: input.signal
|
|
408
451
|
});
|
|
409
452
|
}
|
|
410
453
|
/**
|
|
@@ -427,7 +470,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
427
470
|
}
|
|
428
471
|
return await this.transport.request({
|
|
429
472
|
method: "suix_getDynamicFields",
|
|
430
|
-
params: [input.parentId, input.cursor, input.limit]
|
|
473
|
+
params: [input.parentId, input.cursor, input.limit],
|
|
474
|
+
signal: input.signal
|
|
431
475
|
});
|
|
432
476
|
}
|
|
433
477
|
/**
|
|
@@ -436,16 +480,20 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
436
480
|
async getDynamicFieldObject(input) {
|
|
437
481
|
return await this.transport.request({
|
|
438
482
|
method: "suix_getDynamicFieldObject",
|
|
439
|
-
params: [input.parentId, input.name]
|
|
483
|
+
params: [input.parentId, input.name],
|
|
484
|
+
signal: input.signal
|
|
440
485
|
});
|
|
441
486
|
}
|
|
442
487
|
/**
|
|
443
488
|
* Get the sequence number of the latest checkpoint that has been executed
|
|
444
489
|
*/
|
|
445
|
-
async getLatestCheckpointSequenceNumber(
|
|
490
|
+
async getLatestCheckpointSequenceNumber({
|
|
491
|
+
signal
|
|
492
|
+
} = {}) {
|
|
446
493
|
const resp = await this.transport.request({
|
|
447
494
|
method: "sui_getLatestCheckpointSequenceNumber",
|
|
448
|
-
params: []
|
|
495
|
+
params: [],
|
|
496
|
+
signal
|
|
449
497
|
});
|
|
450
498
|
return String(resp);
|
|
451
499
|
}
|
|
@@ -453,7 +501,11 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
453
501
|
* Returns information about a given checkpoint
|
|
454
502
|
*/
|
|
455
503
|
async getCheckpoint(input) {
|
|
456
|
-
return await this.transport.request({
|
|
504
|
+
return await this.transport.request({
|
|
505
|
+
method: "sui_getCheckpoint",
|
|
506
|
+
params: [input.id],
|
|
507
|
+
signal: input.signal
|
|
508
|
+
});
|
|
457
509
|
}
|
|
458
510
|
/**
|
|
459
511
|
* Returns historical checkpoints paginated
|
|
@@ -461,7 +513,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
461
513
|
async getCheckpoints(input) {
|
|
462
514
|
return await this.transport.request({
|
|
463
515
|
method: "sui_getCheckpoints",
|
|
464
|
-
params: [input.cursor, input?.limit, input.descendingOrder]
|
|
516
|
+
params: [input.cursor, input?.limit, input.descendingOrder],
|
|
517
|
+
signal: input.signal
|
|
465
518
|
});
|
|
466
519
|
}
|
|
467
520
|
/**
|
|
@@ -470,25 +523,36 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
470
523
|
async getCommitteeInfo(input) {
|
|
471
524
|
return await this.transport.request({
|
|
472
525
|
method: "suix_getCommitteeInfo",
|
|
473
|
-
params: [input?.epoch]
|
|
526
|
+
params: [input?.epoch],
|
|
527
|
+
signal: input?.signal
|
|
474
528
|
});
|
|
475
529
|
}
|
|
476
|
-
async getNetworkMetrics() {
|
|
477
|
-
return await this.transport.request({
|
|
530
|
+
async getNetworkMetrics({ signal } = {}) {
|
|
531
|
+
return await this.transport.request({
|
|
532
|
+
method: "suix_getNetworkMetrics",
|
|
533
|
+
params: [],
|
|
534
|
+
signal
|
|
535
|
+
});
|
|
478
536
|
}
|
|
479
|
-
async getAddressMetrics() {
|
|
480
|
-
return await this.transport.request({
|
|
537
|
+
async getAddressMetrics({ signal } = {}) {
|
|
538
|
+
return await this.transport.request({
|
|
539
|
+
method: "suix_getLatestAddressMetrics",
|
|
540
|
+
params: [],
|
|
541
|
+
signal
|
|
542
|
+
});
|
|
481
543
|
}
|
|
482
544
|
async getEpochMetrics(input) {
|
|
483
545
|
return await this.transport.request({
|
|
484
546
|
method: "suix_getEpochMetrics",
|
|
485
|
-
params: [input?.cursor, input?.limit, input?.descendingOrder]
|
|
547
|
+
params: [input?.cursor, input?.limit, input?.descendingOrder],
|
|
548
|
+
signal: input?.signal
|
|
486
549
|
});
|
|
487
550
|
}
|
|
488
551
|
async getAllEpochAddressMetrics(input) {
|
|
489
552
|
return await this.transport.request({
|
|
490
553
|
method: "suix_getAllEpochAddressMetrics",
|
|
491
|
-
params: [input?.descendingOrder]
|
|
554
|
+
params: [input?.descendingOrder],
|
|
555
|
+
signal: input?.signal
|
|
492
556
|
});
|
|
493
557
|
}
|
|
494
558
|
/**
|
|
@@ -497,37 +561,51 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
497
561
|
async getEpochs(input) {
|
|
498
562
|
return await this.transport.request({
|
|
499
563
|
method: "suix_getEpochs",
|
|
500
|
-
params: [input?.cursor, input?.limit, input?.descendingOrder]
|
|
564
|
+
params: [input?.cursor, input?.limit, input?.descendingOrder],
|
|
565
|
+
signal: input?.signal
|
|
501
566
|
});
|
|
502
567
|
}
|
|
503
568
|
/**
|
|
504
569
|
* Returns list of top move calls by usage
|
|
505
570
|
*/
|
|
506
|
-
async getMoveCallMetrics() {
|
|
507
|
-
return await this.transport.request({
|
|
571
|
+
async getMoveCallMetrics({ signal } = {}) {
|
|
572
|
+
return await this.transport.request({
|
|
573
|
+
method: "suix_getMoveCallMetrics",
|
|
574
|
+
params: [],
|
|
575
|
+
signal
|
|
576
|
+
});
|
|
508
577
|
}
|
|
509
578
|
/**
|
|
510
579
|
* Return the committee information for the asked epoch
|
|
511
580
|
*/
|
|
512
|
-
async getCurrentEpoch() {
|
|
513
|
-
return await this.transport.request({
|
|
581
|
+
async getCurrentEpoch({ signal } = {}) {
|
|
582
|
+
return await this.transport.request({
|
|
583
|
+
method: "suix_getCurrentEpoch",
|
|
584
|
+
params: [],
|
|
585
|
+
signal
|
|
586
|
+
});
|
|
514
587
|
}
|
|
515
588
|
/**
|
|
516
589
|
* Return the Validators APYs
|
|
517
590
|
*/
|
|
518
|
-
async getValidatorsApy() {
|
|
519
|
-
return await this.transport.request({
|
|
591
|
+
async getValidatorsApy({ signal } = {}) {
|
|
592
|
+
return await this.transport.request({
|
|
593
|
+
method: "suix_getValidatorsApy",
|
|
594
|
+
params: [],
|
|
595
|
+
signal
|
|
596
|
+
});
|
|
520
597
|
}
|
|
521
598
|
// TODO: Migrate this to `sui_getChainIdentifier` once it is widely available.
|
|
522
|
-
async getChainIdentifier() {
|
|
523
|
-
const checkpoint = await this.getCheckpoint({ id: "0" });
|
|
599
|
+
async getChainIdentifier({ signal } = {}) {
|
|
600
|
+
const checkpoint = await this.getCheckpoint({ id: "0", signal });
|
|
524
601
|
const bytes = fromBase58(checkpoint.digest);
|
|
525
602
|
return toHex(bytes.slice(0, 4));
|
|
526
603
|
}
|
|
527
604
|
async resolveNameServiceAddress(input) {
|
|
528
605
|
return await this.transport.request({
|
|
529
606
|
method: "suix_resolveNameServiceAddress",
|
|
530
|
-
params: [input.name]
|
|
607
|
+
params: [input.name],
|
|
608
|
+
signal: input.signal
|
|
531
609
|
});
|
|
532
610
|
}
|
|
533
611
|
async resolveNameServiceNames({
|
|
@@ -536,7 +614,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
536
614
|
}) {
|
|
537
615
|
const { nextCursor, hasNextPage, data } = await this.transport.request({
|
|
538
616
|
method: "suix_resolveNameServiceNames",
|
|
539
|
-
params: [input.address, input.cursor, input.limit]
|
|
617
|
+
params: [input.address, input.cursor, input.limit],
|
|
618
|
+
signal: input.signal
|
|
540
619
|
});
|
|
541
620
|
return {
|
|
542
621
|
hasNextPage,
|
|
@@ -547,7 +626,8 @@ class SuiClient extends Experimental_SuiClient {
|
|
|
547
626
|
async getProtocolConfig(input) {
|
|
548
627
|
return await this.transport.request({
|
|
549
628
|
method: "sui_getProtocolConfig",
|
|
550
|
-
params: [input?.version]
|
|
629
|
+
params: [input?.version],
|
|
630
|
+
signal: input?.signal
|
|
551
631
|
});
|
|
552
632
|
}
|
|
553
633
|
/**
|