Skip to content

Commit 232682a

Browse files
committed
fix types for helixconf
1 parent f7618fb commit 232682a

File tree

5 files changed

+37
-66
lines changed

5 files changed

+37
-66
lines changed

src/ecosys/safe.js

+17-27
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {ethers} from "ethers";
1+
// import {ethers} from "ethers";
22
import Safe from "@safe-global/protocol-kit";
33
import SafeApiKit from "@safe-global/api-kit";
44

@@ -13,71 +13,61 @@ export async function init(options) {
1313
}
1414
if (register.sourceSafeWalletUrl) {
1515
let safe;
16-
if (cachedSafe[lifecycle.sourceChainName]) {
17-
safe = cachedSafe[lifecycle.sourceChainName];
16+
if (cachedSafe[lifecycle.sourceChain.code]) {
17+
safe = cachedSafe[lifecycle.sourceChain.code];
1818
} else {
1919
safe = await initSafe({
2020
register,
21-
chainRpc: lifecycle.sourceChainRpc,
21+
chain: lifecycle.sourceChain,
2222
safeWalletUrl: register.sourceSafeWalletUrl,
2323
safeWalletAddress: register.safeWalletAddress ?? register.sourceSafeWalletAddress,
2424
signer,
2525
});
26-
cachedSafe[lifecycle.sourceChainName] = safe;
26+
cachedSafe[lifecycle.sourceChain.code] = safe;
2727
}
2828

2929
options.sourceSafeSdk = safe.safeSdk;
3030
options.sourceSafeService = safe.safeService;
31-
options.sourceProvider = safe.provider;
32-
options.sourceNetwork = safe.network;
33-
options.sourceSigner = safe.wallet;
31+
// options.sourceSigner = safe.wallet;
3432
}
3533
if (register.targetSafeWalletUrl) {
3634
let safe;
37-
if (cachedSafe[lifecycle.targetChainName]) {
38-
safe = cachedSafe[lifecycle.targetChainName];
35+
if (cachedSafe[lifecycle.targetChain.code]) {
36+
safe = cachedSafe[lifecycle.targetChain.code];
3937
} else {
4038
safe = await initSafe({
4139
register,
42-
chainRpc: lifecycle.targetChainRpc,
40+
chain: lifecycle.targetChain,
4341
safeWalletUrl: register.targetSafeWalletUrl,
4442
safeWalletAddress: register.safeWalletAddress ?? register.targetSafeWalletAddress,
4543
signer,
4644
});
47-
cachedSafe[lifecycle.targetChainName] = safe;
45+
cachedSafe[lifecycle.targetChain.code] = safe;
4846
}
4947

5048
options.targetSafeSdk = safe.safeSdk;
5149
options.targetSafeService = safe.safeService;
52-
options.targetProvider = safe.provider;
53-
options.targetNetwork = safe.network;
54-
options.targetSigner = safe.wallet;
50+
// options.targetSigner = safe.wallet;
5551
}
5652
}
5753

5854
async function initSafe(options) {
59-
const {chainRpc, signer, safeWalletUrl, safeWalletAddress} = options;
60-
const provider = new ethers.JsonRpcProvider(chainRpc);
61-
const wallet = new ethers.Wallet(signer, provider);
62-
const safeSdk = await Safe.init({
63-
provider,
55+
const {chain, signer, safeWalletUrl, safeWalletAddress} = options;
56+
const safeSdk = await Safe.default.init({
57+
provider: chain.rpc,
6458
signer,
6559
safeAddress: safeWalletAddress,
6660
});
6761

68-
const network = await provider.getNetwork();
69-
console.log(`init safe for chain ${network.chainId} with ${safeWalletUrl}`);
70-
const safeService = new SafeApiKit({
71-
chainId: network.chainId,
62+
console.log(`init safe for chain ${chain.id} with ${safeWalletUrl}`);
63+
const safeService = new SafeApiKit.default({
64+
chainId: chain.id,
7265
txServiceUrl: safeWalletUrl,
7366
// txServiceUrl: 'https://httpbin.org/anything',
7467
});
7568
return {
7669
safeSdk,
7770
safeService,
78-
provider,
79-
network,
80-
wallet,
8171
};
8272
}
8373

src/register/index.js

+1-9
Original file line numberDiff line numberDiff line change
@@ -113,15 +113,8 @@ async function refactorConfig(options) {
113113
return includeConfigs;
114114
}
115115

116-
// function _stdRegisterInfo(register, lifecycle) {
117-
// const {sourceChain} = lifecycle;
118-
// if (!register.contract) {
119-
// register.contract = sourceChain.protocol[register.type];
120-
// }
121-
// }
122-
123116
async function handle(options) {
124-
const {definition, register} = options;
117+
const {register} = options;
125118
const [sourceChainName, targetChainName] = register.bridge.split('->');
126119

127120
let relayerAddress = register.safeWalletAddress ?? register.sourceSafeWalletAddress;
@@ -158,7 +151,6 @@ async function handle(options) {
158151
contractAddress: sourceChain.protocol[register.type].toLowerCase(),
159152
relayerAddress: relayerAddress.toLowerCase(),
160153
};
161-
// _stdRegisterInfo(register, lifecycle);
162154

163155
options.lifecycle = lifecycle;
164156

src/register/lnv2_default.js

+9-24
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,6 @@ import {isDisableApprove} from "../ecosys/tool.js";
66
export async function register(options) {
77
const {register, lifecycle} = options;
88

9-
// const _sourceChainId = await $`cast chain-id --rpc-url=${lifecycle.sourceChainRpc}`;
10-
// const _targetChainId = await $`cast chain-id --rpc-url=${lifecycle.targetChainRpc}`;
11-
// let _sourceTokenDecimal;
12-
// try {
13-
// _sourceTokenDecimal = await $`cast call --rpc-url=${lifecycle.sourceChainRpc} ${register.sourceTokenAddress} 'decimals()()'`;
14-
// _sourceTokenDecimal = _sourceChainId.stdout.trim();
15-
// } catch (e) {
16-
// console.log(chalk.yellow(`[warn] can not query decimal from contract(${lifecycle.sourceChainName}): ${e}`));
17-
// }
18-
// let _targetTokenDecimal;
19-
// try {
20-
// _targetTokenDecimal = await $`cast call --rpc-url=${lifecycle.targetChainRpc} ${register.targetTokenAddress} 'decimals()()'`;
21-
// _targetTokenDecimal = _targetTokenDecimal.stdout.trim();
22-
// } catch (e) {
23-
// console.log(chalk.yellow(`[warn] can not query decimal from contract(${lifecycle.targetChainName}): ${e}`));
24-
// }
25-
269
const sourceChainId = lifecycle.sourceChain.id;
2710
const targetChainId = lifecycle.targetChain.id;
2811
const sourceTokenDecimal = BigInt(lifecycle.sourceToken.decimals);
@@ -164,14 +147,16 @@ async function registerWithCall(options, callOptions) {
164147

165148
async function registerWithSafe(options, callOptions) {
166149
const {
167-
register, lifecycle, definition,
168-
sourceSafeSdk, sourceSafeService, sourceSigner,
169-
targetSafeSdk, targetSafeService, targetSigner,
150+
register, lifecycle, definition, signer,
151+
sourceSafeSdk, sourceSafeService,
152+
targetSafeSdk, targetSafeService,
170153
} = options;
171154
const {approveFlags, depositFlags, setFeeFlags, withdrawFlags, sourceDepositToTarget, targetChainId} = callOptions;
172155

173156
const txApprove = await $`cast calldata ${approveFlags}`;
174157
const txSetFee = await $`cast calldata ${setFeeFlags}`;
158+
const _signerAddress = await $`cast wallet address ${signer}`.quiet();
159+
const signerAddress = _signerAddress.stdout.trim();
175160

176161
const p0Transactions = [];
177162
if (!tool.isDisableApprove({definition, symbol: register.symbol, chainId: targetChainId})) {
@@ -198,7 +183,7 @@ async function registerWithSafe(options, callOptions) {
198183
safeSdk: targetSafeSdk,
199184
safeService: targetSafeService,
200185
safeAddress: register.targetSafeWalletAddress ?? register.safeWalletAddress,
201-
senderAddress: targetSigner.address,
186+
senderAddress: signerAddress,
202187
transactions: p0Transactions,
203188
});
204189
console.log(
@@ -212,15 +197,15 @@ async function registerWithSafe(options, callOptions) {
212197

213198
const p1Transactions = [
214199
{
215-
to: register.contract,
200+
to: lifecycle.contractAddress,
216201
value: '0',
217202
data: txSetFee.stdout.trim(),
218203
},
219204
];
220205
if (withdrawFlags.length) {
221206
const txWithdraw = await $`cast calldata ${withdrawFlags}`;
222207
p1Transactions.push({
223-
to: register.contract,
208+
to: lifecycle.contractAddress,
224209
value: '0',
225210
data: txWithdraw.stdout.trim(),
226211
});
@@ -231,7 +216,7 @@ async function registerWithSafe(options, callOptions) {
231216
safeSdk: sourceSafeSdk,
232217
safeService: sourceSafeService,
233218
safeAddress: register.sourceSafeWalletAddress ?? register.safeWalletAddress,
234-
senderAddress: sourceSigner.address,
219+
senderAddress: signerAddress,
235220
transactions: p1Transactions,
236221
});
237222
console.log(

src/register/lnv2_opposite.js

+6-4
Original file line numberDiff line numberDiff line change
@@ -102,13 +102,15 @@ async function registerWithCall(options, callOptions) {
102102

103103
async function registerWithSafe(options, callOptions) {
104104
const {
105-
register, lifecycle, definition,
106-
sourceSafeSdk, sourceSafeService, sourceSigner,
105+
register, lifecycle, definition, signer,
106+
sourceSafeSdk, sourceSafeService,
107107
} = options;
108108
const {approveFlags, setFeeFlags, withdrawFlags, sourceDeposit, sourceChainId} = callOptions;
109109

110110
const txApprove = await $`cast calldata ${approveFlags}`;
111111
const txSetFee = await $`cast calldata ${setFeeFlags}`;
112+
const _signerAddress = await $`cast wallet address ${signer}`.quiet();
113+
const signerAddress = _signerAddress.stdout.trim();
112114

113115
const p0Transactions = [];
114116

@@ -120,7 +122,7 @@ async function registerWithSafe(options, callOptions) {
120122
});
121123
}
122124
p0Transactions.push({
123-
to: register.contract,
125+
to: lifecycle.contractAddress,
124126
value: lifecycle.sourceToken.type === 'native'
125127
? sourceDeposit.toString()
126128
: '0',
@@ -132,7 +134,7 @@ async function registerWithSafe(options, callOptions) {
132134
safeSdk: sourceSafeSdk,
133135
safeService: sourceSafeService,
134136
safeAddress: register.sourceSafeWalletAddress ?? register.safeWalletAddress,
135-
senderAddress: sourceSigner.address,
137+
senderAddress: signerAddress,
136138
transactions: p0Transactions,
137139
});
138140
console.log(

src/register/lnv3.js

+4-2
Original file line numberDiff line numberDiff line change
@@ -134,11 +134,13 @@ async function registerWithCall(options, callOptions) {
134134

135135

136136
async function registerWithSafe(options, callOptions) {
137-
const {register, lifecycle, definition, sourceSafeSdk, sourceSafeService, sourceSigner} = options;
137+
const {register, lifecycle, signer, definition, sourceSafeSdk, sourceSafeService} = options;
138138
const {approvalFlags, depositFlags, setFeeFlags, withdrawFlags, sourceDeposit, sourceChainId} = callOptions;
139139

140140
const txApprove = await $`cast calldata ${approvalFlags}`;
141141
const txSetFee = await $`cast calldata ${setFeeFlags}`;
142+
const _signerAddress = await $`cast wallet address ${signer}`.quiet();
143+
const signerAddress = _signerAddress.stdout.trim();
142144

143145
const transactions = [];
144146
if (!tool.isDisableApprove({definition, symbol: register.symbol, chainId: sourceChainId})) {
@@ -178,7 +180,7 @@ async function registerWithSafe(options, callOptions) {
178180
safeSdk: sourceSafeSdk,
179181
safeService: sourceSafeService,
180182
safeAddress: register.sourceSafeWalletAddress ?? register.safeWalletAddress,
181-
senderAddress: sourceSigner.address,
183+
senderAddress: signerAddress,
182184
transactions,
183185
});
184186
console.log(

0 commit comments

Comments
 (0)