@@ -21,23 +21,30 @@ import * as TokenOrder from "@unionlabs/sdk/TokenOrder"
21
21
import { UniversalChainId } from "@unionlabs/sdk/schema/chain"
22
22
import { ChainRegistry } from "@unionlabs/sdk/ChainRegistry"
23
23
24
- const MNEMONIC = process . env . MNEMONIC ?? "fix auto gallery heart practice drip joke nice decline lift attend bread "
24
+ const MNEMONIC = process . env . SUI_MNEMONIC ?? "... "
25
25
const RECIPIENT = process . env . RECIPIENT ?? "0x03ff9dd9e093387bdd4432c6a3eb6a1bd5a8f39a530042ac7efe576f18d3232b"
26
26
27
27
const keypair = Ed25519Keypair . deriveKeypair ( MNEMONIC )
28
28
29
29
30
30
const program = Effect . gen ( function * ( ) {
31
+
32
+ // TODO: Source will be SUI testnet
31
33
const source = yield * ChainRegistry . byUniversalId (
32
34
UniversalChainId . make ( "ethereum.17000" ) ,
33
35
)
34
36
35
37
console . log ( "source" , source )
38
+
39
+ // TODO: Destination will be somewhere
36
40
const destination = yield * ChainRegistry . byUniversalId (
37
41
UniversalChainId . make ( "ethereum.11155111" ) ,
38
42
)
39
- const { client } = yield * PublicClient
43
+ const wallet = yield * WalletClient
44
+
45
+ const sender = wallet . signer . toSuiAddress ( ) ;
40
46
47
+ // TODO: Fix this tokenOrder and write something working
41
48
const tokenOrder = yield * TokenOrder . make ( {
42
49
source,
43
50
destination,
@@ -56,32 +63,27 @@ const program = Effect.gen(function* () {
56
63
57
64
yield * Effect . log ( "Token Order V2" , tokenOrder )
58
65
66
+ // TODO: Fix this request too
59
67
const request = ZkgmClientRequest . make ( {
60
68
source,
61
69
destination,
62
- channelId : ChannelId . make ( 2 ) ,
70
+ channelId : ChannelId . make ( 1 ) ,
63
71
ucs03Address : "0x5fbe74a283f7954f10aa04c2edf55578811aeb03" ,
64
72
kind : "simulateAndExecute" ,
65
73
instruction : tokenOrder ,
66
74
} )
67
75
68
76
const zkgmClient = yield * ZkgmClient . ZkgmClient
69
77
70
- // NOTE: 1. switch chain is assumed
71
- // NOTE: 2. write in progress
72
-
73
78
const response : ZkgmClientResponse . ZkgmClientResponse = yield * zkgmClient . execute ( request )
74
79
75
- // NOTE: 3. write complete (with tx hash)
76
80
77
81
yield * Effect . log ( "Submission Hash" , response . txHash )
78
82
79
83
const completion = yield * response . waitFor (
80
84
ZkgmIncomingMessage . LifecycleEvent . $is ( "EvmTransactionReceiptComplete" ) ,
81
85
)
82
86
83
- // NOTE: 4. tx complete
84
-
85
87
yield * Effect . log ( "Completion" , completion )
86
88
87
89
@@ -90,14 +92,20 @@ const program = Effect.gen(function* () {
90
92
Effect . provide ( PublicClient . Live ( { url : getFullnodeUrl ( "testnet" ) } ) ) ,
91
93
Effect . provide (
92
94
WalletClient . Live ( {
93
- url : getFullnodeUrl ( "testnet" ) ,
94
- account : keypair , // signer
95
- chain : "sui-testnet" as any , // placeholder; not used internally
96
- } ) ,
95
+ url : getFullnodeUrl ( "testnet" ) ,
96
+ signer : keypair , // ✅ Sui signer
97
+ } ) ,
97
98
) ,
98
99
99
100
Effect . provide ( ChainRegistry . Default ) ,
100
101
Effect . provide ( Logger . replace ( Logger . defaultLogger , Logger . prettyLoggerDefault ) ) ,
101
102
)
102
103
103
- Effect . runPromise ( program ) . catch ( console . error )
104
+ Effect . runPromise ( program ) . catch ( ( e : any ) => {
105
+ console . error ( "\n--- TOP-LEVEL ERROR ---" )
106
+ console . dir ( e , { depth : 10 } )
107
+ if ( e ?. cause ) {
108
+ console . error ( "\n--- ORIGINAL CAUSE ---" )
109
+ console . dir ( e . cause , { depth : 10 } )
110
+ }
111
+ } )
0 commit comments