@mysten/sui 1.26.0 → 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 +16 -0
- package/dist/cjs/bcs/bcs.d.ts +28 -0
- package/dist/cjs/bcs/bcs.js +15 -0
- package/dist/cjs/bcs/bcs.js.map +2 -2
- package/dist/cjs/bcs/effects.d.ts +84 -6
- package/dist/cjs/bcs/effects.js +6 -14
- package/dist/cjs/bcs/effects.js.map +2 -2
- package/dist/cjs/bcs/index.d.ts +551 -445
- package/dist/cjs/bcs/index.js +5 -4
- package/dist/cjs/bcs/index.js.map +2 -2
- package/dist/cjs/client/client.d.ts +40 -17
- 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/Transaction.d.ts +3 -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 +28 -0
- package/dist/esm/bcs/bcs.js +15 -0
- package/dist/esm/bcs/bcs.js.map +2 -2
- package/dist/esm/bcs/effects.d.ts +84 -6
- package/dist/esm/bcs/effects.js +1 -9
- package/dist/esm/bcs/effects.js.map +2 -2
- package/dist/esm/bcs/index.d.ts +551 -445
- package/dist/esm/bcs/index.js +6 -4
- package/dist/esm/bcs/index.js.map +2 -2
- package/dist/esm/client/client.d.ts +40 -17
- 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/Transaction.d.ts +3 -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 +23 -18
- package/src/bcs/bcs.ts +15 -0
- package/src/bcs/effects.ts +1 -10
- package/src/bcs/index.ts +5 -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
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"author": "Mysten Labs <build@mystenlabs.com>",
|
|
4
4
|
"description": "Sui TypeScript API(Work in Progress)",
|
|
5
5
|
"homepage": "https://sdk.mystenlabs.com",
|
|
6
|
-
"version": "1.
|
|
6
|
+
"version": "1.27.0",
|
|
7
7
|
"license": "Apache-2.0",
|
|
8
8
|
"sideEffects": false,
|
|
9
9
|
"files": [
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
"client",
|
|
16
16
|
"cryptography",
|
|
17
17
|
"dist",
|
|
18
|
+
"experimental",
|
|
18
19
|
"faucet",
|
|
19
20
|
"graphql",
|
|
20
21
|
"keypairs",
|
|
@@ -42,6 +43,10 @@
|
|
|
42
43
|
"import": "./dist/esm/cryptography/index.js",
|
|
43
44
|
"require": "./dist/cjs/cryptography/index.js"
|
|
44
45
|
},
|
|
46
|
+
"./experimental": {
|
|
47
|
+
"import": "./dist/esm/experimental/index.js",
|
|
48
|
+
"require": "./dist/cjs/experimental/index.js"
|
|
49
|
+
},
|
|
45
50
|
"./faucet": {
|
|
46
51
|
"import": "./dist/esm/faucet/index.js",
|
|
47
52
|
"require": "./dist/cjs/faucet/index.js"
|
|
@@ -108,39 +113,39 @@
|
|
|
108
113
|
"devDependencies": {
|
|
109
114
|
"@0no-co/graphqlsp": "^1.12.11",
|
|
110
115
|
"@graphql-codegen/add": "^5.0.3",
|
|
111
|
-
"@graphql-codegen/cli": "^5.0.
|
|
112
|
-
"@graphql-codegen/typed-document-node": "^5.
|
|
113
|
-
"@graphql-codegen/typescript": "4.1.
|
|
114
|
-
"@graphql-codegen/typescript-operations": "^4.
|
|
116
|
+
"@graphql-codegen/cli": "^5.0.5",
|
|
117
|
+
"@graphql-codegen/typed-document-node": "^5.1.1",
|
|
118
|
+
"@graphql-codegen/typescript": "4.1.6",
|
|
119
|
+
"@graphql-codegen/typescript-operations": "^4.6.0",
|
|
115
120
|
"@iarna/toml": "^2.2.5",
|
|
116
|
-
"@types/node": "^22.
|
|
121
|
+
"@types/node": "^22.13.17",
|
|
117
122
|
"@types/tmp": "^0.2.6",
|
|
118
|
-
"@types/ws": "^8.
|
|
123
|
+
"@types/ws": "^8.18.1",
|
|
119
124
|
"cross-env": "^7.0.3",
|
|
120
125
|
"graphql-config": "^5.0.3",
|
|
121
|
-
"msw": "^2.3
|
|
126
|
+
"msw": "^2.7.3",
|
|
122
127
|
"tmp": "^0.2.3",
|
|
123
128
|
"ts-retry-promise": "^0.8.1",
|
|
124
|
-
"typescript": "^5.
|
|
125
|
-
"vite": "^6.
|
|
129
|
+
"typescript": "^5.8.2",
|
|
130
|
+
"vite": "^6.2.5",
|
|
126
131
|
"vite-tsconfig-paths": "^5.1.4",
|
|
127
|
-
"vitest": "^
|
|
128
|
-
"wait-on": "^8.0.
|
|
129
|
-
"ws": "^8.18.
|
|
132
|
+
"vitest": "^3.1.1",
|
|
133
|
+
"wait-on": "^8.0.3",
|
|
134
|
+
"ws": "^8.18.1",
|
|
130
135
|
"@mysten/build-scripts": "^0.0.0"
|
|
131
136
|
},
|
|
132
137
|
"dependencies": {
|
|
133
138
|
"@graphql-typed-document-node/core": "^3.2.0",
|
|
134
|
-
"@noble/curves": "^1.
|
|
135
|
-
"@noble/hashes": "^1.
|
|
139
|
+
"@noble/curves": "^1.8.1",
|
|
140
|
+
"@noble/hashes": "^1.7.1",
|
|
136
141
|
"@scure/base": "^1.2.4",
|
|
137
|
-
"@scure/bip32": "^1.
|
|
138
|
-
"@scure/bip39": "^1.
|
|
142
|
+
"@scure/bip32": "^1.6.2",
|
|
143
|
+
"@scure/bip39": "^1.5.4",
|
|
139
144
|
"gql.tada": "^1.8.2",
|
|
140
145
|
"graphql": "^16.9.0",
|
|
141
146
|
"poseidon-lite": "^0.2.0",
|
|
142
147
|
"valibot": "^0.36.0",
|
|
143
|
-
"@mysten/bcs": "1.
|
|
148
|
+
"@mysten/bcs": "1.6.0"
|
|
144
149
|
},
|
|
145
150
|
"scripts": {
|
|
146
151
|
"clean": "rm -rf tsconfig.tsbuildinfo ./dist",
|
package/src/bcs/bcs.ts
CHANGED
|
@@ -68,6 +68,21 @@ export const ObjectArg = bcs.enum('ObjectArg', {
|
|
|
68
68
|
Receiving: SuiObjectRef,
|
|
69
69
|
});
|
|
70
70
|
|
|
71
|
+
export const Owner = bcs.enum('Owner', {
|
|
72
|
+
AddressOwner: Address,
|
|
73
|
+
ObjectOwner: Address,
|
|
74
|
+
Shared: bcs.struct('Shared', {
|
|
75
|
+
initialSharedVersion: bcs.u64(),
|
|
76
|
+
}),
|
|
77
|
+
Immutable: null,
|
|
78
|
+
ConsensusV2: bcs.struct('ConsensusV2', {
|
|
79
|
+
authenticator: bcs.enum('Authenticator', {
|
|
80
|
+
SingleOwner: Address,
|
|
81
|
+
}),
|
|
82
|
+
startVersion: bcs.u64(),
|
|
83
|
+
}),
|
|
84
|
+
});
|
|
85
|
+
|
|
71
86
|
export const CallArg = bcs.enum('CallArg', {
|
|
72
87
|
Pure: bcs.struct('Pure', {
|
|
73
88
|
bytes: bcs.vector(bcs.u8()).transform({
|
package/src/bcs/effects.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
import { bcs } from '@mysten/bcs';
|
|
5
5
|
|
|
6
|
-
import { Address, ObjectDigest, SuiObjectRef } from './bcs.js';
|
|
6
|
+
import { Address, ObjectDigest, Owner, SuiObjectRef } from './bcs.js';
|
|
7
7
|
|
|
8
8
|
const PackageUpgradeError = bcs.enum('PackageUpgradeError', {
|
|
9
9
|
UnableToFetchPackage: bcs.struct('UnableToFetchPackage', { packageId: Address }),
|
|
@@ -134,15 +134,6 @@ const GasCostSummary = bcs.struct('GasCostSummary', {
|
|
|
134
134
|
nonRefundableStorageFee: bcs.u64(),
|
|
135
135
|
});
|
|
136
136
|
|
|
137
|
-
const Owner = bcs.enum('Owner', {
|
|
138
|
-
AddressOwner: Address,
|
|
139
|
-
ObjectOwner: Address,
|
|
140
|
-
Shared: bcs.struct('Shared', {
|
|
141
|
-
initialSharedVersion: bcs.u64(),
|
|
142
|
-
}),
|
|
143
|
-
Immutable: null,
|
|
144
|
-
});
|
|
145
|
-
|
|
146
137
|
const TransactionEffectsV1 = bcs.struct('TransactionEffectsV1', {
|
|
147
138
|
status: ExecutionStatus,
|
|
148
139
|
executedEpoch: bcs.u64(),
|
package/src/bcs/index.ts
CHANGED
|
@@ -20,6 +20,7 @@ import {
|
|
|
20
20
|
MultiSigPublicKey,
|
|
21
21
|
ObjectArg,
|
|
22
22
|
ObjectDigest,
|
|
23
|
+
Owner,
|
|
23
24
|
PasskeyAuthenticator,
|
|
24
25
|
ProgrammableMoveCall,
|
|
25
26
|
ProgrammableTransaction,
|
|
@@ -57,6 +58,7 @@ const suiBcs = {
|
|
|
57
58
|
AppId,
|
|
58
59
|
Argument,
|
|
59
60
|
CallArg,
|
|
61
|
+
Command,
|
|
60
62
|
CompressedSignature,
|
|
61
63
|
GasData,
|
|
62
64
|
Intent,
|
|
@@ -68,6 +70,8 @@ const suiBcs = {
|
|
|
68
70
|
MultiSigPublicKey,
|
|
69
71
|
ObjectArg,
|
|
70
72
|
ObjectDigest,
|
|
73
|
+
Owner,
|
|
74
|
+
PasskeyAuthenticator,
|
|
71
75
|
ProgrammableMoveCall,
|
|
72
76
|
ProgrammableTransaction,
|
|
73
77
|
PublicKey,
|
|
@@ -76,14 +80,12 @@ const suiBcs = {
|
|
|
76
80
|
SharedObjectRef,
|
|
77
81
|
StructTag,
|
|
78
82
|
SuiObjectRef,
|
|
79
|
-
Command,
|
|
80
83
|
TransactionData,
|
|
81
84
|
TransactionDataV1,
|
|
85
|
+
TransactionEffects,
|
|
82
86
|
TransactionExpiration,
|
|
83
87
|
TransactionKind,
|
|
84
88
|
TypeTag,
|
|
85
|
-
TransactionEffects,
|
|
86
|
-
PasskeyAuthenticator,
|
|
87
89
|
};
|
|
88
90
|
export {
|
|
89
91
|
pureBcsSchemaFromTypeName,
|
package/src/client/client.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { fromBase58, toBase64, toHex } from '@mysten/bcs';
|
|
4
4
|
|
|
5
5
|
import type { Signer } from '../cryptography/index.js';
|
|
6
|
-
import {
|
|
6
|
+
import { Experimental_BaseClient } from '../experimental/client.js';
|
|
7
7
|
import { JSONRpcTransport } from '../experimental/transports/jsonRPC.js';
|
|
8
8
|
import type {
|
|
9
9
|
Experimental_SuiClientTypes,
|
|
@@ -50,6 +50,8 @@ import type {
|
|
|
50
50
|
GetCommitteeInfoParams,
|
|
51
51
|
GetDynamicFieldObjectParams,
|
|
52
52
|
GetDynamicFieldsParams,
|
|
53
|
+
GetLatestCheckpointSequenceNumberParams,
|
|
54
|
+
GetLatestSuiSystemStateParams,
|
|
53
55
|
GetMoveFunctionArgTypesParams,
|
|
54
56
|
GetNormalizedMoveFunctionParams,
|
|
55
57
|
GetNormalizedMoveModuleParams,
|
|
@@ -58,6 +60,7 @@ import type {
|
|
|
58
60
|
GetObjectParams,
|
|
59
61
|
GetOwnedObjectsParams,
|
|
60
62
|
GetProtocolConfigParams,
|
|
63
|
+
GetReferenceGasPriceParams,
|
|
61
64
|
GetStakesByIdsParams,
|
|
62
65
|
GetStakesParams,
|
|
63
66
|
GetTotalSupplyParams,
|
|
@@ -134,8 +137,9 @@ export function isSuiClient(client: unknown): client is SuiClient {
|
|
|
134
137
|
);
|
|
135
138
|
}
|
|
136
139
|
|
|
137
|
-
export class SuiClient extends
|
|
140
|
+
export class SuiClient extends Experimental_BaseClient implements SelfRegisteringClientExtension {
|
|
138
141
|
core: JSONRpcTransport = new JSONRpcTransport(this);
|
|
142
|
+
jsonRpc = this;
|
|
139
143
|
protected transport: SuiTransport;
|
|
140
144
|
|
|
141
145
|
get [SUI_CLIENT_BRAND]() {
|
|
@@ -152,10 +156,11 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
152
156
|
this.transport = options.transport ?? new SuiHTTPTransport({ url: options.url });
|
|
153
157
|
}
|
|
154
158
|
|
|
155
|
-
async getRpcApiVersion(): Promise<string | undefined> {
|
|
159
|
+
async getRpcApiVersion({ signal }: { signal?: AbortSignal } = {}): Promise<string | undefined> {
|
|
156
160
|
const resp = await this.transport.request<{ info: { version: string } }>({
|
|
157
161
|
method: 'rpc.discover',
|
|
158
162
|
params: [],
|
|
163
|
+
signal,
|
|
159
164
|
});
|
|
160
165
|
|
|
161
166
|
return resp.info.version;
|
|
@@ -172,6 +177,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
172
177
|
return await this.transport.request({
|
|
173
178
|
method: 'suix_getCoins',
|
|
174
179
|
params: [input.owner, input.coinType, input.cursor, input.limit],
|
|
180
|
+
signal: input.signal,
|
|
175
181
|
});
|
|
176
182
|
}
|
|
177
183
|
|
|
@@ -186,6 +192,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
186
192
|
return await this.transport.request({
|
|
187
193
|
method: 'suix_getAllCoins',
|
|
188
194
|
params: [input.owner, input.cursor, input.limit],
|
|
195
|
+
signal: input.signal,
|
|
189
196
|
});
|
|
190
197
|
}
|
|
191
198
|
|
|
@@ -199,6 +206,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
199
206
|
return await this.transport.request({
|
|
200
207
|
method: 'suix_getBalance',
|
|
201
208
|
params: [input.owner, input.coinType],
|
|
209
|
+
signal: input.signal,
|
|
202
210
|
});
|
|
203
211
|
}
|
|
204
212
|
|
|
@@ -209,7 +217,11 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
209
217
|
if (!input.owner || !isValidSuiAddress(normalizeSuiAddress(input.owner))) {
|
|
210
218
|
throw new Error('Invalid Sui address');
|
|
211
219
|
}
|
|
212
|
-
return await this.transport.request({
|
|
220
|
+
return await this.transport.request({
|
|
221
|
+
method: 'suix_getAllBalances',
|
|
222
|
+
params: [input.owner],
|
|
223
|
+
signal: input.signal,
|
|
224
|
+
});
|
|
213
225
|
}
|
|
214
226
|
|
|
215
227
|
/**
|
|
@@ -219,6 +231,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
219
231
|
return await this.transport.request({
|
|
220
232
|
method: 'suix_getCoinMetadata',
|
|
221
233
|
params: [input.coinType],
|
|
234
|
+
signal: input.signal,
|
|
222
235
|
});
|
|
223
236
|
}
|
|
224
237
|
|
|
@@ -229,6 +242,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
229
242
|
return await this.transport.request({
|
|
230
243
|
method: 'suix_getTotalSupply',
|
|
231
244
|
params: [input.coinType],
|
|
245
|
+
signal: input.signal,
|
|
232
246
|
});
|
|
233
247
|
}
|
|
234
248
|
|
|
@@ -237,8 +251,12 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
237
251
|
* @param method the method to be invoked
|
|
238
252
|
* @param args the arguments to be passed to the RPC request
|
|
239
253
|
*/
|
|
240
|
-
async call<T = unknown>(
|
|
241
|
-
|
|
254
|
+
async call<T = unknown>(
|
|
255
|
+
method: string,
|
|
256
|
+
params: unknown[],
|
|
257
|
+
{ signal }: { signal?: AbortSignal } = {},
|
|
258
|
+
): Promise<T> {
|
|
259
|
+
return await this.transport.request({ method, params, signal });
|
|
242
260
|
}
|
|
243
261
|
|
|
244
262
|
/**
|
|
@@ -250,6 +268,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
250
268
|
return await this.transport.request({
|
|
251
269
|
method: 'sui_getMoveFunctionArgTypes',
|
|
252
270
|
params: [input.package, input.module, input.function],
|
|
271
|
+
signal: input.signal,
|
|
253
272
|
});
|
|
254
273
|
}
|
|
255
274
|
|
|
@@ -263,6 +282,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
263
282
|
return await this.transport.request({
|
|
264
283
|
method: 'sui_getNormalizedMoveModulesByPackage',
|
|
265
284
|
params: [input.package],
|
|
285
|
+
signal: input.signal,
|
|
266
286
|
});
|
|
267
287
|
}
|
|
268
288
|
|
|
@@ -275,6 +295,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
275
295
|
return await this.transport.request({
|
|
276
296
|
method: 'sui_getNormalizedMoveModule',
|
|
277
297
|
params: [input.package, input.module],
|
|
298
|
+
signal: input.signal,
|
|
278
299
|
});
|
|
279
300
|
}
|
|
280
301
|
|
|
@@ -287,6 +308,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
287
308
|
return await this.transport.request({
|
|
288
309
|
method: 'sui_getNormalizedMoveFunction',
|
|
289
310
|
params: [input.package, input.module, input.function],
|
|
311
|
+
signal: input.signal,
|
|
290
312
|
});
|
|
291
313
|
}
|
|
292
314
|
|
|
@@ -299,6 +321,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
299
321
|
return await this.transport.request({
|
|
300
322
|
method: 'sui_getNormalizedMoveStruct',
|
|
301
323
|
params: [input.package, input.module, input.struct],
|
|
324
|
+
signal: input.signal,
|
|
302
325
|
});
|
|
303
326
|
}
|
|
304
327
|
|
|
@@ -321,6 +344,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
321
344
|
input.cursor,
|
|
322
345
|
input.limit,
|
|
323
346
|
],
|
|
347
|
+
signal: input.signal,
|
|
324
348
|
});
|
|
325
349
|
}
|
|
326
350
|
|
|
@@ -334,6 +358,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
334
358
|
return await this.transport.request({
|
|
335
359
|
method: 'sui_getObject',
|
|
336
360
|
params: [input.id, input.options],
|
|
361
|
+
signal: input.signal,
|
|
337
362
|
});
|
|
338
363
|
}
|
|
339
364
|
|
|
@@ -341,6 +366,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
341
366
|
return await this.transport.request({
|
|
342
367
|
method: 'sui_tryGetPastObject',
|
|
343
368
|
params: [input.id, input.version, input.options],
|
|
369
|
+
signal: input.signal,
|
|
344
370
|
});
|
|
345
371
|
}
|
|
346
372
|
|
|
@@ -361,6 +387,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
361
387
|
return await this.transport.request({
|
|
362
388
|
method: 'sui_multiGetObjects',
|
|
363
389
|
params: [input.ids, input.options],
|
|
390
|
+
signal: input.signal,
|
|
364
391
|
});
|
|
365
392
|
}
|
|
366
393
|
|
|
@@ -381,6 +408,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
381
408
|
input.limit,
|
|
382
409
|
(input.order || 'descending') === 'descending',
|
|
383
410
|
],
|
|
411
|
+
signal: input.signal,
|
|
384
412
|
});
|
|
385
413
|
}
|
|
386
414
|
|
|
@@ -393,6 +421,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
393
421
|
return await this.transport.request({
|
|
394
422
|
method: 'sui_getTransactionBlock',
|
|
395
423
|
params: [input.digest, input.options],
|
|
424
|
+
signal: input.signal,
|
|
396
425
|
});
|
|
397
426
|
}
|
|
398
427
|
|
|
@@ -413,6 +442,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
413
442
|
return await this.transport.request({
|
|
414
443
|
method: 'sui_multiGetTransactionBlocks',
|
|
415
444
|
params: [input.digests, input.options],
|
|
445
|
+
signal: input.signal,
|
|
416
446
|
});
|
|
417
447
|
}
|
|
418
448
|
|
|
@@ -421,6 +451,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
421
451
|
signature,
|
|
422
452
|
options,
|
|
423
453
|
requestType,
|
|
454
|
+
signal,
|
|
424
455
|
}: ExecuteTransactionBlockParams): Promise<SuiTransactionBlockResponse> {
|
|
425
456
|
const result: SuiTransactionBlockResponse = await this.transport.request({
|
|
426
457
|
method: 'sui_executeTransactionBlock',
|
|
@@ -429,6 +460,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
429
460
|
Array.isArray(signature) ? signature : [signature],
|
|
430
461
|
options,
|
|
431
462
|
],
|
|
463
|
+
signal,
|
|
432
464
|
});
|
|
433
465
|
|
|
434
466
|
if (requestType === 'WaitForLocalExecution') {
|
|
@@ -477,10 +509,11 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
477
509
|
* Get total number of transactions
|
|
478
510
|
*/
|
|
479
511
|
|
|
480
|
-
async getTotalTransactionBlocks(): Promise<bigint> {
|
|
512
|
+
async getTotalTransactionBlocks({ signal }: { signal?: AbortSignal } = {}): Promise<bigint> {
|
|
481
513
|
const resp = await this.transport.request<string>({
|
|
482
514
|
method: 'sui_getTotalTransactionBlocks',
|
|
483
515
|
params: [],
|
|
516
|
+
signal,
|
|
484
517
|
});
|
|
485
518
|
return BigInt(resp);
|
|
486
519
|
}
|
|
@@ -488,10 +521,11 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
488
521
|
/**
|
|
489
522
|
* Getting the reference gas price for the network
|
|
490
523
|
*/
|
|
491
|
-
async getReferenceGasPrice(): Promise<bigint> {
|
|
524
|
+
async getReferenceGasPrice({ signal }: GetReferenceGasPriceParams = {}): Promise<bigint> {
|
|
492
525
|
const resp = await this.transport.request<string>({
|
|
493
526
|
method: 'suix_getReferenceGasPrice',
|
|
494
527
|
params: [],
|
|
528
|
+
signal,
|
|
495
529
|
});
|
|
496
530
|
return BigInt(resp);
|
|
497
531
|
}
|
|
@@ -503,7 +537,11 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
503
537
|
if (!input.owner || !isValidSuiAddress(normalizeSuiAddress(input.owner))) {
|
|
504
538
|
throw new Error('Invalid Sui address');
|
|
505
539
|
}
|
|
506
|
-
return await this.transport.request({
|
|
540
|
+
return await this.transport.request({
|
|
541
|
+
method: 'suix_getStakes',
|
|
542
|
+
params: [input.owner],
|
|
543
|
+
signal: input.signal,
|
|
544
|
+
});
|
|
507
545
|
}
|
|
508
546
|
|
|
509
547
|
/**
|
|
@@ -518,14 +556,21 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
518
556
|
return await this.transport.request({
|
|
519
557
|
method: 'suix_getStakesByIds',
|
|
520
558
|
params: [input.stakedSuiIds],
|
|
559
|
+
signal: input.signal,
|
|
521
560
|
});
|
|
522
561
|
}
|
|
523
562
|
|
|
524
563
|
/**
|
|
525
564
|
* Return the latest system state content.
|
|
526
565
|
*/
|
|
527
|
-
async getLatestSuiSystemState(
|
|
528
|
-
|
|
566
|
+
async getLatestSuiSystemState({
|
|
567
|
+
signal,
|
|
568
|
+
}: GetLatestSuiSystemStateParams = {}): Promise<SuiSystemStateSummary> {
|
|
569
|
+
return await this.transport.request({
|
|
570
|
+
method: 'suix_getLatestSuiSystemState',
|
|
571
|
+
params: [],
|
|
572
|
+
signal,
|
|
573
|
+
});
|
|
529
574
|
}
|
|
530
575
|
|
|
531
576
|
/**
|
|
@@ -540,6 +585,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
540
585
|
input.limit,
|
|
541
586
|
(input.order || 'descending') === 'descending',
|
|
542
587
|
],
|
|
588
|
+
signal: input.signal,
|
|
543
589
|
});
|
|
544
590
|
}
|
|
545
591
|
|
|
@@ -559,6 +605,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
559
605
|
unsubscribe: 'suix_unsubscribeEvent',
|
|
560
606
|
params: [input.filter],
|
|
561
607
|
onMessage: input.onMessage,
|
|
608
|
+
signal: input.signal,
|
|
562
609
|
});
|
|
563
610
|
}
|
|
564
611
|
|
|
@@ -576,6 +623,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
576
623
|
unsubscribe: 'suix_unsubscribeTransaction',
|
|
577
624
|
params: [input.filter],
|
|
578
625
|
onMessage: input.onMessage,
|
|
626
|
+
signal: input.signal,
|
|
579
627
|
});
|
|
580
628
|
}
|
|
581
629
|
|
|
@@ -604,9 +652,12 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
604
652
|
throw new Error('Unknown transaction block format.');
|
|
605
653
|
}
|
|
606
654
|
|
|
655
|
+
input.signal?.throwIfAborted();
|
|
656
|
+
|
|
607
657
|
return await this.transport.request({
|
|
608
658
|
method: 'sui_devInspectTransactionBlock',
|
|
609
659
|
params: [input.sender, devInspectTxBytes, input.gasPrice?.toString(), input.epoch],
|
|
660
|
+
signal: input.signal,
|
|
610
661
|
});
|
|
611
662
|
}
|
|
612
663
|
|
|
@@ -636,6 +687,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
636
687
|
return await this.transport.request({
|
|
637
688
|
method: 'suix_getDynamicFields',
|
|
638
689
|
params: [input.parentId, input.cursor, input.limit],
|
|
690
|
+
signal: input.signal,
|
|
639
691
|
});
|
|
640
692
|
}
|
|
641
693
|
|
|
@@ -646,16 +698,20 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
646
698
|
return await this.transport.request({
|
|
647
699
|
method: 'suix_getDynamicFieldObject',
|
|
648
700
|
params: [input.parentId, input.name],
|
|
701
|
+
signal: input.signal,
|
|
649
702
|
});
|
|
650
703
|
}
|
|
651
704
|
|
|
652
705
|
/**
|
|
653
706
|
* Get the sequence number of the latest checkpoint that has been executed
|
|
654
707
|
*/
|
|
655
|
-
async getLatestCheckpointSequenceNumber(
|
|
708
|
+
async getLatestCheckpointSequenceNumber({
|
|
709
|
+
signal,
|
|
710
|
+
}: GetLatestCheckpointSequenceNumberParams = {}): Promise<string> {
|
|
656
711
|
const resp = await this.transport.request({
|
|
657
712
|
method: 'sui_getLatestCheckpointSequenceNumber',
|
|
658
713
|
params: [],
|
|
714
|
+
signal,
|
|
659
715
|
});
|
|
660
716
|
return String(resp);
|
|
661
717
|
}
|
|
@@ -664,7 +720,11 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
664
720
|
* Returns information about a given checkpoint
|
|
665
721
|
*/
|
|
666
722
|
async getCheckpoint(input: GetCheckpointParams): Promise<Checkpoint> {
|
|
667
|
-
return await this.transport.request({
|
|
723
|
+
return await this.transport.request({
|
|
724
|
+
method: 'sui_getCheckpoint',
|
|
725
|
+
params: [input.id],
|
|
726
|
+
signal: input.signal,
|
|
727
|
+
});
|
|
668
728
|
}
|
|
669
729
|
|
|
670
730
|
/**
|
|
@@ -676,6 +736,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
676
736
|
return await this.transport.request({
|
|
677
737
|
method: 'sui_getCheckpoints',
|
|
678
738
|
params: [input.cursor, input?.limit, input.descendingOrder],
|
|
739
|
+
signal: input.signal,
|
|
679
740
|
});
|
|
680
741
|
}
|
|
681
742
|
|
|
@@ -686,32 +747,47 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
686
747
|
return await this.transport.request({
|
|
687
748
|
method: 'suix_getCommitteeInfo',
|
|
688
749
|
params: [input?.epoch],
|
|
750
|
+
signal: input?.signal,
|
|
689
751
|
});
|
|
690
752
|
}
|
|
691
753
|
|
|
692
|
-
async getNetworkMetrics(): Promise<NetworkMetrics> {
|
|
693
|
-
return await this.transport.request({
|
|
754
|
+
async getNetworkMetrics({ signal }: { signal?: AbortSignal } = {}): Promise<NetworkMetrics> {
|
|
755
|
+
return await this.transport.request({
|
|
756
|
+
method: 'suix_getNetworkMetrics',
|
|
757
|
+
params: [],
|
|
758
|
+
signal,
|
|
759
|
+
});
|
|
694
760
|
}
|
|
695
761
|
|
|
696
|
-
async getAddressMetrics(): Promise<AddressMetrics> {
|
|
697
|
-
return await this.transport.request({
|
|
762
|
+
async getAddressMetrics({ signal }: { signal?: AbortSignal } = {}): Promise<AddressMetrics> {
|
|
763
|
+
return await this.transport.request({
|
|
764
|
+
method: 'suix_getLatestAddressMetrics',
|
|
765
|
+
params: [],
|
|
766
|
+
signal,
|
|
767
|
+
});
|
|
698
768
|
}
|
|
699
769
|
|
|
700
770
|
async getEpochMetrics(
|
|
701
|
-
input?: {
|
|
771
|
+
input?: {
|
|
772
|
+
descendingOrder?: boolean;
|
|
773
|
+
signal?: AbortSignal;
|
|
774
|
+
} & PaginationArguments<EpochMetricsPage['nextCursor']>,
|
|
702
775
|
): Promise<EpochMetricsPage> {
|
|
703
776
|
return await this.transport.request({
|
|
704
777
|
method: 'suix_getEpochMetrics',
|
|
705
778
|
params: [input?.cursor, input?.limit, input?.descendingOrder],
|
|
779
|
+
signal: input?.signal,
|
|
706
780
|
});
|
|
707
781
|
}
|
|
708
782
|
|
|
709
783
|
async getAllEpochAddressMetrics(input?: {
|
|
710
784
|
descendingOrder?: boolean;
|
|
785
|
+
signal?: AbortSignal;
|
|
711
786
|
}): Promise<AllEpochsAddressMetrics> {
|
|
712
787
|
return await this.transport.request({
|
|
713
788
|
method: 'suix_getAllEpochAddressMetrics',
|
|
714
789
|
params: [input?.descendingOrder],
|
|
790
|
+
signal: input?.signal,
|
|
715
791
|
});
|
|
716
792
|
}
|
|
717
793
|
|
|
@@ -721,38 +797,52 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
721
797
|
async getEpochs(
|
|
722
798
|
input?: {
|
|
723
799
|
descendingOrder?: boolean;
|
|
800
|
+
signal?: AbortSignal;
|
|
724
801
|
} & PaginationArguments<EpochPage['nextCursor']>,
|
|
725
802
|
): Promise<EpochPage> {
|
|
726
803
|
return await this.transport.request({
|
|
727
804
|
method: 'suix_getEpochs',
|
|
728
805
|
params: [input?.cursor, input?.limit, input?.descendingOrder],
|
|
806
|
+
signal: input?.signal,
|
|
729
807
|
});
|
|
730
808
|
}
|
|
731
809
|
|
|
732
810
|
/**
|
|
733
811
|
* Returns list of top move calls by usage
|
|
734
812
|
*/
|
|
735
|
-
async getMoveCallMetrics(): Promise<MoveCallMetrics> {
|
|
736
|
-
return await this.transport.request({
|
|
813
|
+
async getMoveCallMetrics({ signal }: { signal?: AbortSignal } = {}): Promise<MoveCallMetrics> {
|
|
814
|
+
return await this.transport.request({
|
|
815
|
+
method: 'suix_getMoveCallMetrics',
|
|
816
|
+
params: [],
|
|
817
|
+
signal,
|
|
818
|
+
});
|
|
737
819
|
}
|
|
738
820
|
|
|
739
821
|
/**
|
|
740
822
|
* Return the committee information for the asked epoch
|
|
741
823
|
*/
|
|
742
|
-
async getCurrentEpoch(): Promise<EpochInfo> {
|
|
743
|
-
return await this.transport.request({
|
|
824
|
+
async getCurrentEpoch({ signal }: { signal?: AbortSignal } = {}): Promise<EpochInfo> {
|
|
825
|
+
return await this.transport.request({
|
|
826
|
+
method: 'suix_getCurrentEpoch',
|
|
827
|
+
params: [],
|
|
828
|
+
signal,
|
|
829
|
+
});
|
|
744
830
|
}
|
|
745
831
|
|
|
746
832
|
/**
|
|
747
833
|
* Return the Validators APYs
|
|
748
834
|
*/
|
|
749
|
-
async getValidatorsApy(): Promise<ValidatorsApy> {
|
|
750
|
-
return await this.transport.request({
|
|
835
|
+
async getValidatorsApy({ signal }: { signal?: AbortSignal } = {}): Promise<ValidatorsApy> {
|
|
836
|
+
return await this.transport.request({
|
|
837
|
+
method: 'suix_getValidatorsApy',
|
|
838
|
+
params: [],
|
|
839
|
+
signal,
|
|
840
|
+
});
|
|
751
841
|
}
|
|
752
842
|
|
|
753
843
|
// TODO: Migrate this to `sui_getChainIdentifier` once it is widely available.
|
|
754
|
-
async getChainIdentifier(): Promise<string> {
|
|
755
|
-
const checkpoint = await this.getCheckpoint({ id: '0' });
|
|
844
|
+
async getChainIdentifier({ signal }: { signal?: AbortSignal } = {}): Promise<string> {
|
|
845
|
+
const checkpoint = await this.getCheckpoint({ id: '0', signal });
|
|
756
846
|
const bytes = fromBase58(checkpoint.digest);
|
|
757
847
|
return toHex(bytes.slice(0, 4));
|
|
758
848
|
}
|
|
@@ -761,6 +851,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
761
851
|
return await this.transport.request({
|
|
762
852
|
method: 'suix_resolveNameServiceAddress',
|
|
763
853
|
params: [input.name],
|
|
854
|
+
signal: input.signal,
|
|
764
855
|
});
|
|
765
856
|
}
|
|
766
857
|
|
|
@@ -774,6 +865,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
774
865
|
await this.transport.request({
|
|
775
866
|
method: 'suix_resolveNameServiceNames',
|
|
776
867
|
params: [input.address, input.cursor, input.limit],
|
|
868
|
+
signal: input.signal,
|
|
777
869
|
});
|
|
778
870
|
|
|
779
871
|
return {
|
|
@@ -787,6 +879,7 @@ export class SuiClient extends Experimental_SuiClient implements SelfRegistering
|
|
|
787
879
|
return await this.transport.request({
|
|
788
880
|
method: 'sui_getProtocolConfig',
|
|
789
881
|
params: [input?.version],
|
|
882
|
+
signal: input?.signal,
|
|
790
883
|
});
|
|
791
884
|
}
|
|
792
885
|
|