@wormhole-foundation/sdk-sui-cctp 4.22.0-beta.0 → 5.0.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/circleBridge.d.ts +6 -6
- package/dist/esm/circleBridge.d.ts.map +1 -1
- package/dist/esm/circleBridge.js +15 -12
- package/dist/esm/circleBridge.js.map +1 -1
- package/package.json +12 -30
- package/dist/cjs/circleBridge.d.ts +0 -24
- package/dist/cjs/circleBridge.d.ts.map +0 -1
- package/dist/cjs/circleBridge.js +0 -196
- package/dist/cjs/circleBridge.js.map +0 -1
- package/dist/cjs/index.d.ts +0 -3
- package/dist/cjs/index.d.ts.map +0 -1
- package/dist/cjs/index.js +0 -22
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/objects.d.ts +0 -33
- package/dist/cjs/objects.d.ts.map +0 -1
- package/dist/cjs/objects.js +0 -24
- package/dist/cjs/objects.js.map +0 -1
- package/dist/cjs/package.json +0 -1
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SuiGrpcClient } from "@mysten/sui/grpc";
|
|
2
2
|
import { type SuiChains, SuiUnsignedTransaction } from "@wormhole-foundation/sdk-sui";
|
|
3
|
-
import type { AccountAddress, ChainAddress, ChainsConfig, Network, Platform } from "@wormhole-foundation/sdk-connect";
|
|
4
|
-
import { CircleBridge
|
|
3
|
+
import type { AccountAddress, ChainAddress, ChainsConfig, Network, Platform, CircleTransferMessage, Contracts } from "@wormhole-foundation/sdk-connect";
|
|
4
|
+
import { CircleBridge } from "@wormhole-foundation/sdk-connect";
|
|
5
5
|
export declare class SuiCircleBridge<N extends Network, C extends SuiChains> implements CircleBridge<N, C> {
|
|
6
6
|
readonly network: N;
|
|
7
7
|
readonly chain: C;
|
|
8
|
-
readonly provider:
|
|
8
|
+
readonly provider: SuiGrpcClient;
|
|
9
9
|
readonly contracts: Contracts;
|
|
10
10
|
readonly usdcId: string;
|
|
11
11
|
readonly usdcTreasuryId: string;
|
|
@@ -13,12 +13,12 @@ export declare class SuiCircleBridge<N extends Network, C extends SuiChains> imp
|
|
|
13
13
|
readonly tokenMessengerStateId: string;
|
|
14
14
|
readonly messageTransmitterId: string;
|
|
15
15
|
readonly messageTransmitterStateId: string;
|
|
16
|
-
constructor(network: N, chain: C, provider:
|
|
16
|
+
constructor(network: N, chain: C, provider: SuiGrpcClient, contracts: Contracts);
|
|
17
17
|
transfer(sender: AccountAddress<C>, recipient: ChainAddress, amount: bigint): AsyncGenerator<SuiUnsignedTransaction<N, C>>;
|
|
18
18
|
isTransferCompleted(message: CircleBridge.Message): Promise<boolean>;
|
|
19
19
|
redeem(sender: AccountAddress<C>, message: CircleBridge.Message, attestation: string): AsyncGenerator<SuiUnsignedTransaction<N, C>>;
|
|
20
20
|
parseTransactionDetails(digest: string): Promise<CircleTransferMessage>;
|
|
21
|
-
static fromRpc<N extends Network>(provider:
|
|
21
|
+
static fromRpc<N extends Network>(provider: SuiGrpcClient, config: ChainsConfig<N, Platform>): Promise<SuiCircleBridge<N, SuiChains>>;
|
|
22
22
|
private createUnsignedTx;
|
|
23
23
|
}
|
|
24
24
|
//# sourceMappingURL=circleBridge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circleBridge.d.ts","sourceRoot":"","sources":["../../src/circleBridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"circleBridge.d.ts","sourceRoot":"","sources":["../../src/circleBridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAe,KAAK,SAAS,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACnG,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,QAAQ,EAER,qBAAqB,EACrB,SAAS,EAAC,MAAM,kCAAkC,CAAC;AACrD,OAAO,EACL,YAAY,EAGb,MAAM,kCAAkC,CAAC;AAI1C,qBAAa,eAAe,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,SAAS,CAAE,YAAW,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IAS9F,QAAQ,CAAC,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,QAAQ,CAAC,QAAQ,EAAE,aAAa;IAChC,QAAQ,CAAC,SAAS,EAAE,SAAS;IAX/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;gBAGhC,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,SAAS;IA6BxB,QAAQ,CACb,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,YAAY,EACvB,MAAM,EAAE,MAAM,GACb,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IA0CzC,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IA6BnE,MAAM,CACX,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,OAAO,EAAE,YAAY,CAAC,OAAO,EAC7B,WAAW,EAAE,MAAM,GAClB,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAkEzC,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;WA6ChE,OAAO,CAAC,CAAC,SAAS,OAAO,EACpC,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,GAChC,OAAO,CAAC,eAAe,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAUzC,OAAO,CAAC,gBAAgB;CAOzB"}
|
package/dist/esm/circleBridge.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Transaction } from "@mysten/sui/transactions";
|
|
2
|
-
import { SuiPlatform, SuiUnsignedTransaction
|
|
2
|
+
import { SuiPlatform, SuiUnsignedTransaction } from "@wormhole-foundation/sdk-sui";
|
|
3
3
|
import { CircleBridge, circle, encoding, } from "@wormhole-foundation/sdk-connect";
|
|
4
4
|
import { suiCircleObjects } from "./objects.js";
|
|
5
5
|
export class SuiCircleBridge {
|
|
@@ -73,13 +73,15 @@ export class SuiCircleBridge {
|
|
|
73
73
|
tx.pure.u64(message.nonce),
|
|
74
74
|
],
|
|
75
75
|
});
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
76
|
+
tx.setSenderIfNotSet("0x0000000000000000000000000000000000000000000000000000000000000000");
|
|
77
|
+
const result = await this.provider.simulateTransaction({
|
|
78
|
+
transaction: tx,
|
|
79
|
+
checksEnabled: false,
|
|
80
|
+
include: { commandResults: true },
|
|
79
81
|
});
|
|
80
82
|
try {
|
|
81
|
-
|
|
82
|
-
const isNonceUsed = Boolean(result.
|
|
83
|
+
// single bool return value, BCS-encoded as a single byte
|
|
84
|
+
const isNonceUsed = Boolean(result.commandResults[0].returnValues[0].bcs[0]);
|
|
83
85
|
return isNonceUsed;
|
|
84
86
|
}
|
|
85
87
|
catch (e) {
|
|
@@ -93,8 +95,8 @@ export class SuiCircleBridge {
|
|
|
93
95
|
const [receipt] = tx.moveCall({
|
|
94
96
|
target: `${this.messageTransmitterId}::receive_message::receive_message`,
|
|
95
97
|
arguments: [
|
|
96
|
-
tx.pure.vector(
|
|
97
|
-
tx.pure.vector(
|
|
98
|
+
tx.pure.vector("u8", CircleBridge.serialize(message)),
|
|
99
|
+
tx.pure.vector("u8", encoding.hex.decode(attestation)),
|
|
98
100
|
tx.object(this.messageTransmitterStateId), // message_transmitter state
|
|
99
101
|
],
|
|
100
102
|
});
|
|
@@ -146,21 +148,22 @@ export class SuiCircleBridge {
|
|
|
146
148
|
yield this.createUnsignedTx(tx, "Sui.CircleBridge.Redeem");
|
|
147
149
|
}
|
|
148
150
|
async parseTransactionDetails(digest) {
|
|
149
|
-
const
|
|
151
|
+
const txResult = await this.provider.getTransaction({
|
|
150
152
|
digest,
|
|
151
|
-
|
|
153
|
+
include: { events: true },
|
|
152
154
|
});
|
|
155
|
+
const tx = txResult.Transaction ?? txResult.FailedTransaction;
|
|
153
156
|
if (!tx) {
|
|
154
157
|
throw new Error("Transaction not found");
|
|
155
158
|
}
|
|
156
159
|
if (!tx.events) {
|
|
157
160
|
throw new Error("Transaction events not found");
|
|
158
161
|
}
|
|
159
|
-
const circleMessageSentEvent = tx.events?.find((event) => event.
|
|
162
|
+
const circleMessageSentEvent = tx.events?.find((event) => event.eventType.includes("send_message::MessageSent"));
|
|
160
163
|
if (!circleMessageSentEvent) {
|
|
161
164
|
throw new Error("No MessageSent event found");
|
|
162
165
|
}
|
|
163
|
-
const circleMessage = new Uint8Array((circleMessageSentEvent?.
|
|
166
|
+
const circleMessage = new Uint8Array((circleMessageSentEvent?.json).message);
|
|
164
167
|
const [msg, hash] = CircleBridge.deserialize(circleMessage);
|
|
165
168
|
const { payload: body } = msg;
|
|
166
169
|
const xferSender = body.messageSender;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circleBridge.js","sourceRoot":"","sources":["../../src/circleBridge.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,
|
|
1
|
+
{"version":3,"file":"circleBridge.js","sourceRoot":"","sources":["../../src/circleBridge.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wormhole-foundation/sdk-sui-cctp",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.0-beta.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/wormhole-foundation/wormhole-sdk-ts.git"
|
|
@@ -13,13 +13,12 @@
|
|
|
13
13
|
"test": "tests"
|
|
14
14
|
},
|
|
15
15
|
"license": "Apache-2.0",
|
|
16
|
-
"main": "./dist/
|
|
17
|
-
"types": "./dist/
|
|
16
|
+
"main": "./dist/esm/index.js",
|
|
17
|
+
"types": "./dist/esm/index.d.ts",
|
|
18
18
|
"module": "./dist/esm/index.js",
|
|
19
19
|
"description": "SDK for Sui chains, used in conjunction with @wormhole-foundation/sdk",
|
|
20
20
|
"files": [
|
|
21
|
-
"dist/esm"
|
|
22
|
-
"dist/cjs"
|
|
21
|
+
"dist/esm"
|
|
23
22
|
],
|
|
24
23
|
"keywords": [
|
|
25
24
|
"wormhole",
|
|
@@ -29,47 +28,30 @@
|
|
|
29
28
|
"sui"
|
|
30
29
|
],
|
|
31
30
|
"engines": {
|
|
32
|
-
"node": ">=
|
|
31
|
+
"node": ">=20.19"
|
|
33
32
|
},
|
|
34
33
|
"sideEffects": [
|
|
35
|
-
"./dist/cjs/index.js",
|
|
36
34
|
"./dist/esm/index.js"
|
|
37
35
|
],
|
|
38
36
|
"scripts": {
|
|
39
|
-
"build:cjs": "tsc -p ./tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json",
|
|
40
37
|
"build:esm": "tsc -p ./tsconfig.esm.json",
|
|
41
|
-
"build": "npm run build:esm
|
|
38
|
+
"build": "npm run build:esm",
|
|
42
39
|
"rebuild": "npm run clean && npm run build",
|
|
43
40
|
"clean": "rm -rf ./dist && rm -rf ./.turbo",
|
|
44
41
|
"lint": "npm run prettier && eslint --fix ./src --ext .ts",
|
|
45
42
|
"prettier": "prettier --write ./src"
|
|
46
43
|
},
|
|
47
44
|
"dependencies": {
|
|
48
|
-
"@mysten/sui": "^
|
|
49
|
-
"@wormhole-foundation/sdk-connect": "
|
|
50
|
-
"@wormhole-foundation/sdk-sui": "
|
|
45
|
+
"@mysten/sui": "^2.17.0",
|
|
46
|
+
"@wormhole-foundation/sdk-connect": "5.0.0-beta.0",
|
|
47
|
+
"@wormhole-foundation/sdk-sui": "5.0.0-beta.0"
|
|
51
48
|
},
|
|
52
49
|
"type": "module",
|
|
53
50
|
"exports": {
|
|
54
51
|
".": {
|
|
55
|
-
"
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
"types": "./dist/cjs/index.d.ts",
|
|
59
|
-
"default": "./dist/cjs/index.js"
|
|
60
|
-
},
|
|
61
|
-
"import": {
|
|
62
|
-
"types": "./dist/esm/index.d.ts",
|
|
63
|
-
"default": "./dist/esm/index.js"
|
|
64
|
-
},
|
|
65
|
-
"require": {
|
|
66
|
-
"types": "./dist/cjs/index.d.ts",
|
|
67
|
-
"default": "./dist/cjs/index.js"
|
|
68
|
-
},
|
|
69
|
-
"default": {
|
|
70
|
-
"types": "./dist/cjs/index.d.ts",
|
|
71
|
-
"default": "./dist/cjs/index.js"
|
|
72
|
-
}
|
|
52
|
+
"types": "./dist/esm/index.d.ts",
|
|
53
|
+
"import": "./dist/esm/index.js",
|
|
54
|
+
"default": "./dist/esm/index.js"
|
|
73
55
|
}
|
|
74
56
|
}
|
|
75
57
|
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { SuiClient } from "@mysten/sui/client";
|
|
2
|
-
import { type SuiChains, SuiUnsignedTransaction } from "@wormhole-foundation/sdk-sui";
|
|
3
|
-
import type { AccountAddress, ChainAddress, ChainsConfig, Network, Platform } from "@wormhole-foundation/sdk-connect";
|
|
4
|
-
import { CircleBridge, CircleTransferMessage, Contracts } from "@wormhole-foundation/sdk-connect";
|
|
5
|
-
export declare class SuiCircleBridge<N extends Network, C extends SuiChains> implements CircleBridge<N, C> {
|
|
6
|
-
readonly network: N;
|
|
7
|
-
readonly chain: C;
|
|
8
|
-
readonly provider: SuiClient;
|
|
9
|
-
readonly contracts: Contracts;
|
|
10
|
-
readonly usdcId: string;
|
|
11
|
-
readonly usdcTreasuryId: string;
|
|
12
|
-
readonly tokenMessengerId: string;
|
|
13
|
-
readonly tokenMessengerStateId: string;
|
|
14
|
-
readonly messageTransmitterId: string;
|
|
15
|
-
readonly messageTransmitterStateId: string;
|
|
16
|
-
constructor(network: N, chain: C, provider: SuiClient, contracts: Contracts);
|
|
17
|
-
transfer(sender: AccountAddress<C>, recipient: ChainAddress, amount: bigint): AsyncGenerator<SuiUnsignedTransaction<N, C>>;
|
|
18
|
-
isTransferCompleted(message: CircleBridge.Message): Promise<boolean>;
|
|
19
|
-
redeem(sender: AccountAddress<C>, message: CircleBridge.Message, attestation: string): AsyncGenerator<SuiUnsignedTransaction<N, C>>;
|
|
20
|
-
parseTransactionDetails(digest: string): Promise<CircleTransferMessage>;
|
|
21
|
-
static fromRpc<N extends Network>(provider: SuiClient, config: ChainsConfig<N, Platform>): Promise<SuiCircleBridge<N, SuiChains>>;
|
|
22
|
-
private createUnsignedTx;
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=circleBridge.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"circleBridge.d.ts","sourceRoot":"","sources":["../../src/circleBridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAEL,KAAK,SAAS,EACd,sBAAsB,EACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,QAAQ,EACT,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,YAAY,EACZ,qBAAqB,EAErB,SAAS,EAEV,MAAM,kCAAkC,CAAC;AAI1C,qBAAa,eAAe,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,SAAS,CAAE,YAAW,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IAS9F,QAAQ,CAAC,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,QAAQ,CAAC,QAAQ,EAAE,SAAS;IAC5B,QAAQ,CAAC,SAAS,EAAE,SAAS;IAX/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;gBAGhC,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,SAAS,EACnB,SAAS,EAAE,SAAS;IA6BxB,QAAQ,CACb,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,SAAS,EAAE,YAAY,EACvB,MAAM,EAAE,MAAM,GACb,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IA0CzC,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BnE,MAAM,CACX,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,EACzB,OAAO,EAAE,YAAY,CAAC,OAAO,EAC7B,WAAW,EAAE,MAAM,GAClB,cAAc,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAkEzC,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;WA4ChE,OAAO,CAAC,CAAC,SAAS,OAAO,EACpC,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,GAChC,OAAO,CAAC,eAAe,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAUzC,OAAO,CAAC,gBAAgB;CAOzB"}
|
package/dist/cjs/circleBridge.js
DELETED
|
@@ -1,196 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SuiCircleBridge = void 0;
|
|
4
|
-
const transactions_1 = require("@mysten/sui/transactions");
|
|
5
|
-
const sdk_sui_1 = require("@wormhole-foundation/sdk-sui");
|
|
6
|
-
const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
|
|
7
|
-
const objects_js_1 = require("./objects.js");
|
|
8
|
-
class SuiCircleBridge {
|
|
9
|
-
network;
|
|
10
|
-
chain;
|
|
11
|
-
provider;
|
|
12
|
-
contracts;
|
|
13
|
-
usdcId;
|
|
14
|
-
usdcTreasuryId;
|
|
15
|
-
tokenMessengerId;
|
|
16
|
-
tokenMessengerStateId;
|
|
17
|
-
messageTransmitterId;
|
|
18
|
-
messageTransmitterStateId;
|
|
19
|
-
constructor(network, chain, provider, contracts) {
|
|
20
|
-
this.network = network;
|
|
21
|
-
this.chain = chain;
|
|
22
|
-
this.provider = provider;
|
|
23
|
-
this.contracts = contracts;
|
|
24
|
-
if (network === "Devnet")
|
|
25
|
-
throw new Error("CircleBridge not supported on Devnet");
|
|
26
|
-
const usdcId = sdk_connect_1.circle.usdcContract.get(this.network, this.chain);
|
|
27
|
-
if (!usdcId) {
|
|
28
|
-
throw new Error(`No USDC contract configured for network=${this.network} chain=${this.chain}`);
|
|
29
|
-
}
|
|
30
|
-
const { tokenMessengerState, messageTransmitterState, usdcTreasury } = (0, objects_js_1.suiCircleObjects)(network);
|
|
31
|
-
if (!contracts.cctp?.tokenMessenger)
|
|
32
|
-
throw new Error(`Circle Token Messenger contract for domain ${chain} not found`);
|
|
33
|
-
if (!contracts.cctp?.messageTransmitter)
|
|
34
|
-
throw new Error(`Circle Message Transmitter contract for domain ${chain} not found`);
|
|
35
|
-
this.usdcId = usdcId;
|
|
36
|
-
this.usdcTreasuryId = usdcTreasury;
|
|
37
|
-
this.tokenMessengerId = contracts.cctp?.tokenMessenger;
|
|
38
|
-
this.messageTransmitterId = contracts.cctp?.messageTransmitter;
|
|
39
|
-
this.tokenMessengerStateId = tokenMessengerState;
|
|
40
|
-
this.messageTransmitterStateId = messageTransmitterState;
|
|
41
|
-
}
|
|
42
|
-
async *transfer(sender, recipient, amount) {
|
|
43
|
-
const tx = new transactions_1.Transaction();
|
|
44
|
-
const destinationDomain = sdk_connect_1.circle.circleChainId.get(this.network, recipient.chain);
|
|
45
|
-
const [primaryCoin, ...mergeCoins] = await sdk_sui_1.SuiPlatform.getCoins(this.provider, sender, this.usdcId);
|
|
46
|
-
if (primaryCoin === undefined) {
|
|
47
|
-
throw new Error("No USDC in wallet");
|
|
48
|
-
}
|
|
49
|
-
const primaryCoinInput = tx.object(primaryCoin.coinObjectId);
|
|
50
|
-
if (mergeCoins.length > 0) {
|
|
51
|
-
tx.mergeCoins(primaryCoinInput, mergeCoins.map((coin) => tx.object(coin.coinObjectId)));
|
|
52
|
-
}
|
|
53
|
-
const [coin] = tx.splitCoins(primaryCoinInput, [amount]);
|
|
54
|
-
tx.moveCall({
|
|
55
|
-
target: `${this.tokenMessengerId}::deposit_for_burn::deposit_for_burn`,
|
|
56
|
-
arguments: [
|
|
57
|
-
coin,
|
|
58
|
-
tx.pure.u32(destinationDomain), // destination_domain
|
|
59
|
-
tx.pure.address(recipient.address.toUniversalAddress().toString()), // mint_recipient
|
|
60
|
-
tx.object(this.tokenMessengerStateId), // token_messenger_minter state
|
|
61
|
-
tx.object(this.messageTransmitterStateId), // message_transmitter state
|
|
62
|
-
tx.object("0x403"), // deny_list id, fixed address
|
|
63
|
-
tx.object(this.usdcTreasuryId), // treasury object Treasury<USDC>
|
|
64
|
-
],
|
|
65
|
-
typeArguments: [this.usdcId],
|
|
66
|
-
});
|
|
67
|
-
yield this.createUnsignedTx(tx, "Sui.CircleBridge.Transfer");
|
|
68
|
-
}
|
|
69
|
-
async isTransferCompleted(message) {
|
|
70
|
-
const tx = new transactions_1.Transaction();
|
|
71
|
-
tx.moveCall({
|
|
72
|
-
target: `${this.messageTransmitterId}::state::is_nonce_used`,
|
|
73
|
-
arguments: [
|
|
74
|
-
tx.object(this.messageTransmitterStateId),
|
|
75
|
-
tx.pure.u32(message.sourceDomain),
|
|
76
|
-
tx.pure.u64(message.nonce),
|
|
77
|
-
],
|
|
78
|
-
});
|
|
79
|
-
const result = await this.provider.devInspectTransactionBlock({
|
|
80
|
-
sender: "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
81
|
-
transactionBlock: tx,
|
|
82
|
-
});
|
|
83
|
-
try {
|
|
84
|
-
/* @ts-ignore */
|
|
85
|
-
const isNonceUsed = Boolean(result.results[0].returnValues[0][0][0]);
|
|
86
|
-
return isNonceUsed;
|
|
87
|
-
}
|
|
88
|
-
catch (e) {
|
|
89
|
-
console.error(`Error reading if nonce was used: ${e}`);
|
|
90
|
-
return false;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
async *redeem(sender, message, attestation) {
|
|
94
|
-
const tx = new transactions_1.Transaction();
|
|
95
|
-
// Add receive_message move call to MessageTransmitter
|
|
96
|
-
const [receipt] = tx.moveCall({
|
|
97
|
-
target: `${this.messageTransmitterId}::receive_message::receive_message`,
|
|
98
|
-
arguments: [
|
|
99
|
-
tx.pure.vector('u8', sdk_connect_1.CircleBridge.serialize(message)),
|
|
100
|
-
tx.pure.vector('u8', sdk_connect_1.encoding.hex.decode(attestation)),
|
|
101
|
-
tx.object(this.messageTransmitterStateId), // message_transmitter state
|
|
102
|
-
],
|
|
103
|
-
});
|
|
104
|
-
if (!receipt)
|
|
105
|
-
throw new Error("Failed to produce receipt");
|
|
106
|
-
// Add handle_receive_message call to TokenMessengerMinter with Receipt from receive_message call
|
|
107
|
-
const [stampReceiptTicketWithBurnMessage] = tx.moveCall({
|
|
108
|
-
target: `${this.tokenMessengerId}::handle_receive_message::handle_receive_message`,
|
|
109
|
-
arguments: [
|
|
110
|
-
receipt, // Receipt object returned from receive_message call
|
|
111
|
-
tx.object(this.tokenMessengerStateId), // token_messenger_minter state
|
|
112
|
-
tx.object("0x403"), // deny list, fixed address
|
|
113
|
-
tx.object(this.usdcTreasuryId), // usdc treasury object Treasury<T>
|
|
114
|
-
],
|
|
115
|
-
typeArguments: [this.usdcId],
|
|
116
|
-
});
|
|
117
|
-
if (!stampReceiptTicketWithBurnMessage)
|
|
118
|
-
throw new Error("Failed to produce stamp receipt ticket with burn message");
|
|
119
|
-
// Add deconstruct_stamp_receipt_ticket_with_burn_message call
|
|
120
|
-
const [stampReceiptTicket] = tx.moveCall({
|
|
121
|
-
target: `${this.tokenMessengerId}::handle_receive_message::deconstruct_stamp_receipt_ticket_with_burn_message`,
|
|
122
|
-
arguments: [stampReceiptTicketWithBurnMessage],
|
|
123
|
-
});
|
|
124
|
-
if (!stampReceiptTicket)
|
|
125
|
-
throw new Error("Failed to produce stamp receipt ticket");
|
|
126
|
-
// Add stamp_receipt call
|
|
127
|
-
const [stampedReceipt] = tx.moveCall({
|
|
128
|
-
target: `${this.messageTransmitterId}::receive_message::stamp_receipt`,
|
|
129
|
-
arguments: [
|
|
130
|
-
stampReceiptTicket, // Receipt ticket returned from deconstruct_stamp_receipt_ticket_with_burn_message call
|
|
131
|
-
tx.object(this.messageTransmitterStateId), // message_transmitter state
|
|
132
|
-
],
|
|
133
|
-
typeArguments: [
|
|
134
|
-
`${this.tokenMessengerId}::message_transmitter_authenticator::MessageTransmitterAuthenticator`,
|
|
135
|
-
],
|
|
136
|
-
});
|
|
137
|
-
if (!stampedReceipt)
|
|
138
|
-
throw new Error("Failed to produce stamped receipt");
|
|
139
|
-
// Add complete_receive_message call to MessageTransmitter with StampedReceipt from stamp_receipt call.
|
|
140
|
-
// Receipt and StampedReceipt are Hot Potatoes so they must be destroyed for the
|
|
141
|
-
// transaction to succeed.
|
|
142
|
-
tx.moveCall({
|
|
143
|
-
target: `${this.messageTransmitterId}::receive_message::complete_receive_message`,
|
|
144
|
-
arguments: [
|
|
145
|
-
stampedReceipt, // Stamped receipt object returned from handle_receive_message call
|
|
146
|
-
tx.object(this.messageTransmitterStateId), // message_transmitter state
|
|
147
|
-
],
|
|
148
|
-
});
|
|
149
|
-
yield this.createUnsignedTx(tx, "Sui.CircleBridge.Redeem");
|
|
150
|
-
}
|
|
151
|
-
async parseTransactionDetails(digest) {
|
|
152
|
-
const tx = await this.provider.waitForTransaction({
|
|
153
|
-
digest,
|
|
154
|
-
options: { showEvents: true, showEffects: true, showInput: true },
|
|
155
|
-
});
|
|
156
|
-
if (!tx) {
|
|
157
|
-
throw new Error("Transaction not found");
|
|
158
|
-
}
|
|
159
|
-
if (!tx.events) {
|
|
160
|
-
throw new Error("Transaction events not found");
|
|
161
|
-
}
|
|
162
|
-
const circleMessageSentEvent = tx.events?.find((event) => event.type.includes("send_message::MessageSent"));
|
|
163
|
-
if (!circleMessageSentEvent) {
|
|
164
|
-
throw new Error("No MessageSent event found");
|
|
165
|
-
}
|
|
166
|
-
const circleMessage = new Uint8Array((circleMessageSentEvent?.parsedJson).message);
|
|
167
|
-
const [msg, hash] = sdk_connect_1.CircleBridge.deserialize(circleMessage);
|
|
168
|
-
const { payload: body } = msg;
|
|
169
|
-
const xferSender = body.messageSender;
|
|
170
|
-
const xferReceiver = body.mintRecipient;
|
|
171
|
-
const sendChain = sdk_connect_1.circle.toCircleChain(this.network, msg.sourceDomain);
|
|
172
|
-
const rcvChain = sdk_connect_1.circle.toCircleChain(this.network, msg.destinationDomain);
|
|
173
|
-
const token = { chain: sendChain, address: body.burnToken };
|
|
174
|
-
return {
|
|
175
|
-
from: { chain: sendChain, address: xferSender },
|
|
176
|
-
to: { chain: rcvChain, address: xferReceiver },
|
|
177
|
-
token: token,
|
|
178
|
-
amount: body.amount,
|
|
179
|
-
message: msg,
|
|
180
|
-
id: { hash },
|
|
181
|
-
};
|
|
182
|
-
}
|
|
183
|
-
static async fromRpc(provider, config) {
|
|
184
|
-
const [network, chain] = await sdk_sui_1.SuiPlatform.chainFromRpc(provider);
|
|
185
|
-
const conf = config[chain];
|
|
186
|
-
if (conf.network !== network) {
|
|
187
|
-
throw new Error(`Network mismatch: ${conf.network} != ${network}`);
|
|
188
|
-
}
|
|
189
|
-
return new SuiCircleBridge(network, chain, provider, conf.contracts);
|
|
190
|
-
}
|
|
191
|
-
createUnsignedTx(txReq, description, parallelizable = false) {
|
|
192
|
-
return new sdk_sui_1.SuiUnsignedTransaction(txReq, this.network, this.chain, description, parallelizable);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
exports.SuiCircleBridge = SuiCircleBridge;
|
|
196
|
-
//# sourceMappingURL=circleBridge.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"circleBridge.js","sourceRoot":"","sources":["../../src/circleBridge.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.d.ts
DELETED
package/dist/cjs/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAKA,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC"}
|
package/dist/cjs/index.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
|
|
18
|
-
const circleBridge_js_1 = require("./circleBridge.js");
|
|
19
|
-
(0, sdk_connect_1.registerProtocol)("Sui", "CircleBridge", circleBridge_js_1.SuiCircleBridge);
|
|
20
|
-
__exportStar(require("./circleBridge.js"), exports);
|
|
21
|
-
__exportStar(require("./objects.js"), exports);
|
|
22
|
-
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kEAAoE;AAEpE,uDAAoD;AAEpD,IAAA,8BAAgB,EAAC,KAAK,EAAE,cAAc,EAAE,iCAAe,CAAC,CAAC;AACzD,oDAAkC;AAClC,+CAA6B"}
|
package/dist/cjs/objects.d.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
export declare const _suiCircleObjects: readonly [readonly ["Testnet", {
|
|
2
|
-
readonly tokenMessengerState: "0x5252abd1137094ed1db3e0d75bc36abcd287aee4bc310f8e047727ef5682e7c2";
|
|
3
|
-
readonly messageTransmitterState: "0x98234bd0fa9ac12cc0a20a144a22e36d6a32f7e0a97baaeaf9c76cdc6d122d2e";
|
|
4
|
-
readonly usdcTreasury: "0x7170137d4a6431bf83351ac025baf462909bffe2877d87716374fb42b9629ebe";
|
|
5
|
-
}], readonly ["Mainnet", {
|
|
6
|
-
readonly tokenMessengerState: "0x45993eecc0382f37419864992c12faee2238f5cfe22b98ad3bf455baf65c8a2f";
|
|
7
|
-
readonly messageTransmitterState: "0xf68268c3d9b1df3215f2439400c1c4ea08ac4ef4bb7d6f3ca6a2a239e17510af";
|
|
8
|
-
readonly usdcTreasury: "0x57d6725e7a8b49a7b2a612f6bd66ab5f39fc95332ca48be421c3229d514a6de7";
|
|
9
|
-
}]];
|
|
10
|
-
export declare const suiCircleObjects: (<const K1 extends "Mainnet" | "Testnet">(args_0: K1) => {
|
|
11
|
-
Testnet: {
|
|
12
|
-
readonly tokenMessengerState: "0x5252abd1137094ed1db3e0d75bc36abcd287aee4bc310f8e047727ef5682e7c2";
|
|
13
|
-
readonly messageTransmitterState: "0x98234bd0fa9ac12cc0a20a144a22e36d6a32f7e0a97baaeaf9c76cdc6d122d2e";
|
|
14
|
-
readonly usdcTreasury: "0x7170137d4a6431bf83351ac025baf462909bffe2877d87716374fb42b9629ebe";
|
|
15
|
-
};
|
|
16
|
-
Mainnet: {
|
|
17
|
-
readonly tokenMessengerState: "0x45993eecc0382f37419864992c12faee2238f5cfe22b98ad3bf455baf65c8a2f";
|
|
18
|
-
readonly messageTransmitterState: "0xf68268c3d9b1df3215f2439400c1c4ea08ac4ef4bb7d6f3ca6a2a239e17510af";
|
|
19
|
-
readonly usdcTreasury: "0x57d6725e7a8b49a7b2a612f6bd66ab5f39fc95332ca48be421c3229d514a6de7";
|
|
20
|
-
};
|
|
21
|
-
}[K1 extends bigint ? `bigint(${K1})` : K1 extends boolean ? `boolean(${K1})` : K1]) & {
|
|
22
|
-
readonly has: (args_0: string) => boolean;
|
|
23
|
-
readonly get: (args_0: string) => {
|
|
24
|
-
readonly tokenMessengerState: "0x5252abd1137094ed1db3e0d75bc36abcd287aee4bc310f8e047727ef5682e7c2";
|
|
25
|
-
readonly messageTransmitterState: "0x98234bd0fa9ac12cc0a20a144a22e36d6a32f7e0a97baaeaf9c76cdc6d122d2e";
|
|
26
|
-
readonly usdcTreasury: "0x7170137d4a6431bf83351ac025baf462909bffe2877d87716374fb42b9629ebe";
|
|
27
|
-
} | {
|
|
28
|
-
readonly tokenMessengerState: "0x45993eecc0382f37419864992c12faee2238f5cfe22b98ad3bf455baf65c8a2f";
|
|
29
|
-
readonly messageTransmitterState: "0xf68268c3d9b1df3215f2439400c1c4ea08ac4ef4bb7d6f3ca6a2a239e17510af";
|
|
30
|
-
readonly usdcTreasury: "0x57d6725e7a8b49a7b2a612f6bd66ab5f39fc95332ca48be421c3229d514a6de7";
|
|
31
|
-
} | undefined;
|
|
32
|
-
};
|
|
33
|
-
//# sourceMappingURL=objects.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objects.d.ts","sourceRoot":"","sources":["../../src/objects.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,iBAAiB;;;;;;;;GAiB6B,CAAC;AAE5D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;CAAsC,CAAC"}
|
package/dist/cjs/objects.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.suiCircleObjects = exports._suiCircleObjects = void 0;
|
|
4
|
-
const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
|
|
5
|
-
exports._suiCircleObjects = [
|
|
6
|
-
[
|
|
7
|
-
"Testnet",
|
|
8
|
-
{
|
|
9
|
-
tokenMessengerState: "0x5252abd1137094ed1db3e0d75bc36abcd287aee4bc310f8e047727ef5682e7c2",
|
|
10
|
-
messageTransmitterState: "0x98234bd0fa9ac12cc0a20a144a22e36d6a32f7e0a97baaeaf9c76cdc6d122d2e",
|
|
11
|
-
usdcTreasury: "0x7170137d4a6431bf83351ac025baf462909bffe2877d87716374fb42b9629ebe",
|
|
12
|
-
},
|
|
13
|
-
],
|
|
14
|
-
[
|
|
15
|
-
"Mainnet",
|
|
16
|
-
{
|
|
17
|
-
tokenMessengerState: "0x45993eecc0382f37419864992c12faee2238f5cfe22b98ad3bf455baf65c8a2f",
|
|
18
|
-
messageTransmitterState: "0xf68268c3d9b1df3215f2439400c1c4ea08ac4ef4bb7d6f3ca6a2a239e17510af",
|
|
19
|
-
usdcTreasury: "0x57d6725e7a8b49a7b2a612f6bd66ab5f39fc95332ca48be421c3229d514a6de7",
|
|
20
|
-
},
|
|
21
|
-
],
|
|
22
|
-
];
|
|
23
|
-
exports.suiCircleObjects = (0, sdk_connect_1.constMap)(exports._suiCircleObjects, [0, 1]);
|
|
24
|
-
//# sourceMappingURL=objects.js.map
|
package/dist/cjs/objects.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objects.js","sourceRoot":"","sources":["../../src/objects.ts"],"names":[],"mappings":";;;AAAA,kEAA0F;AAQ7E,QAAA,iBAAiB,GAAG;IAC/B;QACE,SAAS;QACT;YACE,mBAAmB,EAAE,oEAAoE;YACzF,uBAAuB,EAAE,oEAAoE;YAC7F,YAAY,EAAE,oEAAoE;SACnF;KACF;IACD;QACE,SAAS;QACT;YACE,mBAAmB,EAAE,oEAAoE;YACzF,uBAAuB,EAAE,oEAAoE;YAC7F,YAAY,EAAE,oEAAoE;SACnF;KACF;CACwD,CAAC;AAE/C,QAAA,gBAAgB,GAAG,IAAA,sBAAQ,EAAC,yBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC"}
|
package/dist/cjs/package.json
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"type":"commonjs"}
|