Skip to content

Commit 2f6ec67

Browse files
committed
enable feature for all register
1 parent 3e9ff58 commit 2f6ec67

File tree

5 files changed

+114
-75
lines changed

5 files changed

+114
-75
lines changed

src/ecosys/safe.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ const cachedNonce = {};
99

1010
export async function init(options) {
1111
const {register, lifecycle, signer} = options;
12+
if (!lifecycle.accepted) return;
1213
if (!register.safeWalletAddress && !register.sourceSafeWalletAddress && !register.targetSafeWalletAddress) {
1314
return;
1415
}
@@ -21,7 +22,7 @@ export async function init(options) {
2122
register,
2223
chain: lifecycle.sourceChain,
2324
safeWalletUrl: register.sourceSafeWalletUrl,
24-
safeWalletAddress: register.safeWalletAddress ?? register.sourceSafeWalletAddress,
25+
safeWalletAddress: register.sourceSafeWalletAddress ?? register.safeWalletAddress,
2526
signer,
2627
});
2728
cachedSafe[lifecycle.sourceChain.code] = safe;
@@ -40,7 +41,7 @@ export async function init(options) {
4041
register,
4142
chain: lifecycle.targetChain,
4243
safeWalletUrl: register.targetSafeWalletUrl,
43-
safeWalletAddress: register.safeWalletAddress ?? register.targetSafeWalletAddress,
44+
safeWalletAddress: register.targetSafeWalletAddress ?? register.safeWalletAddress,
4445
signer,
4546
});
4647
cachedSafe[lifecycle.targetChain.code] = safe;

src/register/index.js

+14-15
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,9 @@ async function handle(options) {
157157
process.exit(1);
158158
}
159159

160+
const accepted = arg.option('accept');
160161
options.lifecycle = {
162+
accepted,
161163
sourceChain,
162164
targetChain,
163165
sourceToken,
@@ -176,23 +178,20 @@ async function handle(options) {
176178
return;
177179
}
178180

179-
const accepted = arg.option('accept');
180-
if (accepted) {
181-
await safe.init(options);
182-
switch (register.type) {
183-
case 'lnv3':
184-
await lnv3.register(options);
185-
break;
186-
case 'lnv2-default':
187-
await lnv2Default.register(options);
188-
break;
189-
case 'lnv2-opposite':
190-
await lnv2Opposite.register(options);
191-
break;
192-
}
181+
await safe.init(options);
182+
switch (register.type) {
183+
case 'lnv3':
184+
await lnv3.register(options);
185+
break;
186+
case 'lnv2-default':
187+
await lnv2Default.register(options);
188+
break;
189+
case 'lnv2-opposite':
190+
await lnv2Opposite.register(options);
191+
break;
193192
}
194193

195-
await ensureLock(ensureLockOptions, true);
194+
await ensureLock(ensureLockOptions, accepted);
196195
console.log(chalk.green(`the bridge ${_identifyRegisterName(register)} registered`));
197196
}
198197

src/register/lnv2_default.js

+61-42
Original file line numberDiff line numberDiff line change
@@ -102,9 +102,11 @@ async function registerWithCall(options, callOptions) {
102102
lifecycle.targetToken.address,
103103
]);
104104
await $`echo cast send ${approveFlags}`;
105-
approveFlags.unshift(`--private-key=${signer}`);
106-
const txApprove = await $`cast send ${approveFlags}`.quiet();
107-
console.log(txApprove.stdout);
105+
if (lifecycle.accepted) {
106+
approveFlags.unshift(`--private-key=${signer}`);
107+
const txApprove = await $`cast send ${approveFlags}`.quiet();
108+
console.log(txApprove.stdout);
109+
}
108110
}
109111

110112
const depositFlagsValue = lifecycle.targetToken.type === 'native'
@@ -117,9 +119,11 @@ async function registerWithCall(options, callOptions) {
117119
` --value=${depositFlagsValue}`,
118120
]);
119121
await $`echo cast send ${depositFlags}`;
120-
depositFlags.unshift(`--private-key=${signer}`);
121-
const txDeposit = await $`cast send ${depositFlags}`.quiet();
122-
console.log(txDeposit.stdout);
122+
if (lifecycle.accepted) {
123+
depositFlags.unshift(`--private-key=${signer}`);
124+
const txDeposit = await $`cast send ${depositFlags}`.quiet();
125+
console.log(txDeposit.stdout);
126+
}
123127
}
124128

125129
if (withdrawFlags.length) {
@@ -128,20 +132,24 @@ async function registerWithCall(options, callOptions) {
128132
lifecycle.contractAddress,
129133
]);
130134
await $`echo cast send ${withdrawFlags}`;
131-
withdrawFlags.unshift(`--private-key=${signer}`);
132-
const txWithdraw = await $`cast send ${withdrawFlags}`.quiet();
133-
await $`cast calldata ${withdrawFlags}`;
134-
console.log(txWithdraw.stdout);
135+
if (lifecycle.accepted) {
136+
withdrawFlags.unshift(`--private-key=${signer}`);
137+
const txWithdraw = await $`cast send ${withdrawFlags}`.quiet();
138+
await $`cast calldata ${withdrawFlags}`;
139+
console.log(txWithdraw.stdout);
140+
}
135141
}
136142

137143
setFeeFlags.unshift(...[
138144
...sourceSendFlags,
139145
lifecycle.contractAddress,
140146
]);
141147
await $`echo cast send ${setFeeFlags}`;
142-
setFeeFlags.unshift(`--private-key=${signer}`);
143-
const txSetFee = await $`cast send ${setFeeFlags}`.quiet();
144-
console.log(txSetFee.stdout);
148+
if (lifecycle.accepted) {
149+
setFeeFlags.unshift(`--private-key=${signer}`);
150+
const txSetFee = await $`cast send ${setFeeFlags}`.quiet();
151+
console.log(txSetFee.stdout);
152+
}
145153
}
146154

147155
async function registerWithSafe(options, callOptions) {
@@ -176,22 +184,27 @@ async function registerWithSafe(options, callOptions) {
176184
});
177185
}
178186

179-
console.log(p0Transactions);
187+
const targetSafeWalletAddress = register.targetSafeWalletAddress ?? register.safeWalletAddress;
180188
if (p0Transactions.length) {
181-
const p0 = await safe.propose({
182-
definition,
183-
safeSdk: targetSafeSdk,
184-
safeService: targetSafeService,
185-
safeAddress: register.targetSafeWalletAddress ?? register.safeWalletAddress,
186-
senderAddress: signerAddress,
187-
transactions: p0Transactions,
188-
});
189-
console.log(
190-
chalk.green('proposed deposit transaction to'),
191-
`${lifecycle.targetChain.code}: ${register.safeWalletAddress ?? register.targetSafeWalletAddress} (safe)`
192-
);
193-
if (p0 && arg.isDebug()) {
194-
console.log(p0);
189+
if (lifecycle.accepted) {
190+
const p0 = await safe.propose({
191+
definition,
192+
safeSdk: targetSafeSdk,
193+
safeService: targetSafeService,
194+
safeAddress: targetSafeWalletAddress,
195+
senderAddress: signerAddress,
196+
transactions: p0Transactions,
197+
});
198+
console.log(
199+
chalk.green('proposed deposit transaction to'),
200+
`${lifecycle.targetChain.code}: ${targetSafeWalletAddress} (safe)`
201+
);
202+
if (p0 && arg.isDebug()) {
203+
console.log(p0);
204+
}
205+
} else {
206+
console.log(`call safe: [${targetSafeWalletAddress}] ${register.targetSafeWalletUrl}`);
207+
console.log(p0Transactions);
195208
}
196209
}
197210

@@ -211,20 +224,26 @@ async function registerWithSafe(options, callOptions) {
211224
});
212225
}
213226

214-
const p1 = await safe.propose({
215-
definition,
216-
safeSdk: sourceSafeSdk,
217-
safeService: sourceSafeService,
218-
safeAddress: register.sourceSafeWalletAddress ?? register.safeWalletAddress,
219-
senderAddress: signerAddress,
220-
transactions: p1Transactions,
221-
});
222-
console.log(
223-
chalk.green('proposed register transaction to'),
224-
`${lifecycle.sourceChain.code}: ${register.safeWalletAddress ?? register.sourceSafeWalletAddress} (safe)`
225-
);
226-
if (p1 && arg.isDebug()) {
227-
console.log(p1);
227+
const sourceSafeWalletAddress = register.sourceSafeWalletAddress ?? register.safeWalletAddress;
228+
if (lifecycle.accepted) {
229+
const p1 = await safe.propose({
230+
definition,
231+
safeSdk: sourceSafeSdk,
232+
safeService: sourceSafeService,
233+
safeAddress: sourceSafeWalletAddress,
234+
senderAddress: signerAddress,
235+
transactions: p1Transactions,
236+
});
237+
console.log(
238+
chalk.green('proposed register transaction to'),
239+
`${lifecycle.sourceChain.code}: ${sourceSafeWalletAddress} (safe)`
240+
);
241+
if (p1 && arg.isDebug()) {
242+
console.log(p1);
243+
}
244+
} else {
245+
console.log(`call safe: [${sourceSafeWalletAddress}] ${register.sourceSafeWalletUrl}`);
246+
console.log(p1Transactions);
228247
}
229248
}
230249

src/register/lnv2_opposite.js

+18-8
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,11 @@ async function registerWithCall(options, callOptions) {
8181
lifecycle.sourceToken.address,
8282
]);
8383
await $`echo cast send ${approveFlags}`;
84-
approveFlags.unshift(`--private-key=${signer}`);
85-
const txApprove = await $`cast send ${approveFlags}`.quiet();
86-
console.log(txApprove.stdout);
84+
if (lifecycle.accepted) {
85+
approveFlags.unshift(`--private-key=${signer}`);
86+
const txApprove = await $`cast send ${approveFlags}`.quiet();
87+
console.log(txApprove.stdout);
88+
}
8789
}
8890

8991
const setFeeFlagsValue = lifecycle.sourceToken.type === 'native'
@@ -95,9 +97,11 @@ async function registerWithCall(options, callOptions) {
9597
`--value=${setFeeFlagsValue}`,
9698
]);
9799
await $`echo cast send ${setFeeFlags}`;
98-
setFeeFlags.unshift(`--private-key=${signer}`);
99-
const txSetFee = await $`cast send ${setFeeFlags}`.quiet();
100-
console.log(txSetFee.stdout);
100+
if (lifecycle.accepted) {
101+
setFeeFlags.unshift(`--private-key=${signer}`);
102+
const txSetFee = await $`cast send ${setFeeFlags}`.quiet();
103+
console.log(txSetFee.stdout);
104+
}
101105
}
102106

103107
async function registerWithSafe(options, callOptions) {
@@ -130,17 +134,23 @@ async function registerWithSafe(options, callOptions) {
130134
data: txSetFee.stdout.trim(),
131135
});
132136

137+
const safeWalletAddress = register.sourceSafeWalletAddress ?? register.safeWalletAddress;
138+
if (!lifecycle.accepted) {
139+
console.log(`call safe: [${safeWalletAddress}] ${register.sourceSafeWalletUrl}`);
140+
console.log(p0Transactions);
141+
return;
142+
}
133143
const p1 = await safe.propose({
134144
definition,
135145
safeSdk: sourceSafeSdk,
136146
safeService: sourceSafeService,
137-
safeAddress: register.sourceSafeWalletAddress ?? register.safeWalletAddress,
147+
safeAddress: safeWalletAddress,
138148
senderAddress: signerAddress,
139149
transactions: p0Transactions,
140150
});
141151
console.log(
142152
chalk.green('proposed register transaction to'),
143-
`${lifecycle.sourceChain.code}: ${register.safeWalletAddress ?? register.sourceSafeWalletAddress} (safe)`
153+
`${lifecycle.sourceChain.code}: ${safeWalletAddress} (safe)`
144154
);
145155
if (p1 && arg.isDebug()) {
146156
console.log(p1);

src/register/lnv3.js

+18-8
Original file line numberDiff line numberDiff line change
@@ -116,19 +116,23 @@ async function registerWithCall(options, callOptions) {
116116
`--value=${depositFlagsValue}`,
117117
]);
118118
await $`echo cast send ${depositFlags}`
119-
depositFlags.unshift(`--private-key=${signer}`);
120-
const txDeposit = await $`cast send ${depositFlags}`.quiet();
121-
console.log(txDeposit.stdout);
119+
if (lifecycle.accepted) {
120+
depositFlags.unshift(`--private-key=${signer}`);
121+
const txDeposit = await $`cast send ${depositFlags}`.quiet();
122+
console.log(txDeposit.stdout);
123+
}
122124
}
123125
if (withdrawFlags.length) {
124126
withdrawFlags.unshift(...[
125127
...sendFlags,
126128
lifecycle.contractAddress,
127129
]);
128130
await $`echo cast send ${withdrawFlags}`
129-
withdrawFlags.unshift(`--private-key=${signer}`);
130-
const txWithdraw = await $`cast send ${withdrawFlags}`.quiet();
131-
console.log(txWithdraw.stdout);
131+
if (lifecycle.accepted) {
132+
withdrawFlags.unshift(`--private-key=${signer}`);
133+
const txWithdraw = await $`cast send ${withdrawFlags}`.quiet();
134+
console.log(txWithdraw.stdout);
135+
}
132136
}
133137
}
134138

@@ -175,17 +179,23 @@ async function registerWithSafe(options, callOptions) {
175179
});
176180
}
177181

182+
const safeWalletAddress = register.sourceSafeWalletAddress ?? register.safeWalletAddress;
183+
if (!lifecycle.accepted) {
184+
console.log(`call safe: [${safeWalletAddress}] ${register.sourceSafeWalletUrl}`);
185+
console.log(transactions);
186+
return;
187+
}
178188
const p0 = await safe.propose({
179189
definition,
180190
safeSdk: sourceSafeSdk,
181191
safeService: sourceSafeService,
182-
safeAddress: register.sourceSafeWalletAddress ?? register.safeWalletAddress,
192+
safeAddress: safeWalletAddress,
183193
senderAddress: signerAddress,
184194
transactions,
185195
});
186196
console.log(
187197
chalk.green('proposed register transaction to'),
188-
`${lifecycle.sourceChain.code}: ${register.safeWalletAddress ?? register.sourceSafeWalletAddress} (safe)`
198+
`${lifecycle.sourceChain.code}: ${safeWalletAddress} (safe)`
189199
);
190200
if (p0 && arg.isDebug()) {
191201
console.log(p0);

0 commit comments

Comments
 (0)