@instadapp/interop-x 0.0.0-dev.f0a6281 → 0.0.0-dev.fabee70

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. package/dist/package.json +2 -2
  2. package/dist/src/abi/interopBridgeToken.json +9 -21
  3. package/dist/src/abi/interopXGateway.json +11 -11
  4. package/dist/src/config/index.js +1 -10
  5. package/dist/src/constants/addresses.js +1 -1
  6. package/dist/src/constants/itokens.js +1 -1
  7. package/dist/src/index.js +5 -28
  8. package/dist/src/net/protocol/dial/{TransactionStatusDialProtocol.js → SignatureDialProtocol.1.js} +0 -0
  9. package/dist/src/net/protocol/index.js +2 -2
  10. package/dist/src/tasks/AutoUpdateTask.js +7 -20
  11. package/dist/src/tasks/BaseTask.js +0 -4
  12. package/dist/src/tasks/InteropBridge/SyncWithdrawEvents.js +5 -7
  13. package/dist/src/tasks/InteropXGateway/ProcessDepositEvents.js +1 -13
  14. package/dist/src/tasks/InteropXGateway/SyncDepositEvents.js +2 -2
  15. package/dist/src/typechain/factories/InteropBridgeToken__factory.js +11 -23
  16. package/dist/src/typechain/factories/InteropXGateway__factory.js +14 -14
  17. package/dist/src/utils/index.js +6 -6
  18. package/package.json +2 -2
  19. package/src/abi/interopBridgeToken.json +9 -21
  20. package/src/abi/interopXGateway.json +11 -11
  21. package/src/config/index.ts +1 -9
  22. package/src/constants/addresses.ts +1 -1
  23. package/src/constants/itokens.ts +1 -1
  24. package/src/index.ts +9 -41
  25. package/src/net/protocol/dial/{TransactionStatusDialProtocol.ts → SignatureDialProtocol.1.ts} +0 -0
  26. package/src/net/protocol/index.ts +1 -1
  27. package/src/tasks/AutoUpdateTask.ts +15 -24
  28. package/src/tasks/BaseTask.ts +0 -5
  29. package/src/tasks/InteropBridge/SyncWithdrawEvents.ts +5 -7
  30. package/src/tasks/InteropXGateway/ProcessDepositEvents.ts +4 -17
  31. package/src/tasks/InteropXGateway/SyncDepositEvents.ts +2 -2
  32. package/src/typechain/InteropBridgeToken.ts +17 -23
  33. package/src/typechain/InteropXGateway.ts +13 -13
  34. package/src/typechain/factories/InteropBridgeToken__factory.ts +11 -23
  35. package/src/typechain/factories/InteropXGateway__factory.ts +14 -14
  36. package/src/utils/index.ts +6 -6
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instadapp/interop-x",
3
- "version": "0.0.0-dev.f0a6281",
3
+ "version": "0.0.0-dev.fabee70",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.js",
6
6
  "engines": {
@@ -28,6 +28,7 @@
28
28
  "await-spawn": "^4.0.2",
29
29
  "axios": "^0.27.1",
30
30
  "axios-retry": "^3.2.4",
31
+ "bignumber.js": "^9.0.2",
31
32
  "chalk": "4.1.2",
32
33
  "dotenv": "^16.0.0",
33
34
  "ethereumjs-util": "^7.1.4",
@@ -35,7 +36,6 @@
35
36
  "ethers-multisend": "^2.1.1",
36
37
  "expand-home-dir": "^0.0.3",
37
38
  "fastify": "^3.28.0",
38
- "fs-extra": "^10.1.0",
39
39
  "libp2p": "^0.36.2",
40
40
  "libp2p-bootstrap": "^0.14.0",
41
41
  "libp2p-kad-dht": "^0.28.6",
@@ -46,17 +46,11 @@
46
46
  "name": "amount",
47
47
  "type": "uint256"
48
48
  },
49
- {
50
- "indexed": false,
51
- "internalType": "uint32",
52
- "name": "sourceChainId",
53
- "type": "uint32"
54
- },
55
49
  {
56
50
  "indexed": true,
57
- "internalType": "uint32",
58
- "name": "targetChainId",
59
- "type": "uint32"
51
+ "internalType": "uint256",
52
+ "name": "chainId",
53
+ "type": "uint256"
60
54
  }
61
55
  ],
62
56
  "name": "Burn",
@@ -79,20 +73,14 @@
79
73
  },
80
74
  {
81
75
  "indexed": true,
82
- "internalType": "uint32",
83
- "name": "sourceChainId",
84
- "type": "uint32"
85
- },
86
- {
87
- "indexed": false,
88
- "internalType": "uint32",
89
- "name": "targetChainId",
90
- "type": "uint32"
76
+ "internalType": "uint256",
77
+ "name": "chainId",
78
+ "type": "uint256"
91
79
  },
92
80
  {
93
81
  "indexed": true,
94
82
  "internalType": "bytes32",
95
- "name": "submitTransactionHash",
83
+ "name": "transactionHash",
96
84
  "type": "bytes32"
97
85
  }
98
86
  ],
@@ -176,7 +164,7 @@
176
164
  "inputs": [
177
165
  { "internalType": "address", "name": "to", "type": "address" },
178
166
  { "internalType": "uint256", "name": "amount", "type": "uint256" },
179
- { "internalType": "uint32", "name": "chainId", "type": "uint32" }
167
+ { "internalType": "uint256", "name": "chainId", "type": "uint256" }
180
168
  ],
181
169
  "name": "burn",
182
170
  "outputs": [],
@@ -218,7 +206,7 @@
218
206
  "inputs": [
219
207
  { "internalType": "address", "name": "to", "type": "address" },
220
208
  { "internalType": "uint256", "name": "amount", "type": "uint256" },
221
- { "internalType": "uint32", "name": "chainId", "type": "uint32" },
209
+ { "internalType": "uint256", "name": "chainId", "type": "uint256" },
222
210
  {
223
211
  "internalType": "bytes32",
224
212
  "name": "transactionHash",
@@ -35,15 +35,15 @@
35
35
  },
36
36
  {
37
37
  "indexed": false,
38
- "internalType": "uint32",
38
+ "internalType": "uint256",
39
39
  "name": "sourceChainId",
40
- "type": "uint32"
40
+ "type": "uint256"
41
41
  },
42
42
  {
43
43
  "indexed": true,
44
- "internalType": "uint32",
44
+ "internalType": "uint256",
45
45
  "name": "targetChainId",
46
- "type": "uint32"
46
+ "type": "uint256"
47
47
  }
48
48
  ],
49
49
  "name": "LogGatewayDeposit",
@@ -72,15 +72,15 @@
72
72
  },
73
73
  {
74
74
  "indexed": true,
75
- "internalType": "uint32",
75
+ "internalType": "uint256",
76
76
  "name": "sourceChainId",
77
- "type": "uint32"
77
+ "type": "uint256"
78
78
  },
79
79
  {
80
80
  "indexed": false,
81
- "internalType": "uint32",
81
+ "internalType": "uint256",
82
82
  "name": "targetChainId",
83
- "type": "uint32"
83
+ "type": "uint256"
84
84
  },
85
85
  {
86
86
  "indexed": true,
@@ -122,7 +122,7 @@
122
122
  "inputs": [
123
123
  { "internalType": "address", "name": "token_", "type": "address" },
124
124
  { "internalType": "uint256", "name": "amount_", "type": "uint256" },
125
- { "internalType": "uint32", "name": "chainId_", "type": "uint32" }
125
+ { "internalType": "uint256", "name": "chainId_", "type": "uint256" }
126
126
  ],
127
127
  "name": "deposit",
128
128
  "outputs": [],
@@ -134,7 +134,7 @@
134
134
  { "internalType": "address", "name": "to_", "type": "address" },
135
135
  { "internalType": "address", "name": "token_", "type": "address" },
136
136
  { "internalType": "uint256", "name": "amount_", "type": "uint256" },
137
- { "internalType": "uint32", "name": "chainId_", "type": "uint32" }
137
+ { "internalType": "uint256", "name": "chainId_", "type": "uint256" }
138
138
  ],
139
139
  "name": "depositFor",
140
140
  "outputs": [],
@@ -160,7 +160,7 @@
160
160
  { "internalType": "uint256", "name": "amount_", "type": "uint256" },
161
161
  { "internalType": "address", "name": "user_", "type": "address" },
162
162
  { "internalType": "address", "name": "token_", "type": "address" },
163
- { "internalType": "uint32", "name": "chainId_", "type": "uint32" },
163
+ { "internalType": "uint256", "name": "chainId_", "type": "uint256" },
164
164
  {
165
165
  "internalType": "bytes32",
166
166
  "name": "transactionHash_",
@@ -1,22 +1,16 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  const ethers_1 = require("ethers");
7
4
  const types_1 = require("@/types");
8
- const fs_extra_1 = __importDefault(require("fs-extra"));
9
- const expand_home_dir_1 = __importDefault(require("expand-home-dir"));
10
5
  class Config {
11
6
  constructor() {
12
7
  this.events = new types_1.EventBus();
13
- this.maxPeers = 20;
8
+ this.maxPeers = 10;
14
9
  this.privateKey = process.env.PRIVATE_KEY;
15
10
  this.staging = !!process.env.STAGING && process.env.STAGING === 'true';
16
11
  this.autoUpdate = !!process.env.AUTO_UPDATE && process.env.AUTO_UPDATE === 'true';
17
12
  this.wallet = new ethers_1.Wallet(this.privateKey);
18
13
  this.leadNodeAddress = '0x910E413DBF3F6276Fe8213fF656726bDc142E08E';
19
- this.baseConfigPath = (0, expand_home_dir_1.default)(`~/.interop-x`);
20
14
  }
21
15
  get publicAddress() {
22
16
  return this.wallet.address;
@@ -24,8 +18,5 @@ class Config {
24
18
  isLeadNode() {
25
19
  return ethers_1.ethers.utils.getAddress(this.leadNodeAddress) === ethers_1.ethers.utils.getAddress(this.wallet.address);
26
20
  }
27
- isMaintenanceMode() {
28
- return fs_extra_1.default.existsSync(this.baseConfigPath + '/maintenance');
29
- }
30
21
  }
31
22
  exports.default = new Config();
@@ -15,6 +15,6 @@ exports.addresses = {
15
15
  43114: {
16
16
  gnosisSafe: '0x31d7a5194Fe60AC209Cf1Ce2d539C9A60662Ed6b',
17
17
  multisend: '0x998739BFdAAdde7C933B942a68053933098f9EDa',
18
- interopXGateway: '0xF0317C5Bc206F2291dd2f3eE9C4cDB5Bbb25418d',
18
+ interopXGateway: '0x8D27758751BA488690974B6Ccfcda771D462945f',
19
19
  }
20
20
  };
@@ -5,7 +5,7 @@ exports.itokens = {
5
5
  1: [],
6
6
  137: [
7
7
  {
8
- address: '0x62C0045f3277E7067cAcad3c8038eEaBB1Bd92D1',
8
+ address: '0xEab02fe1F016eE3e4106c1C6aad35FeEe657268E',
9
9
  symbol: 'USDC',
10
10
  }
11
11
  ],
package/dist/src/index.js CHANGED
@@ -4,8 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const module_alias_1 = __importDefault(require("module-alias"));
7
- const expand_home_dir_1 = __importDefault(require("expand-home-dir"));
8
- const fs_extra_1 = __importDefault(require("fs-extra"));
9
7
  module_alias_1.default.addAliases({
10
8
  "@/": __dirname + "/",
11
9
  "@/logger": __dirname + "/logger",
@@ -28,39 +26,18 @@ const package_json_1 = __importDefault(require("../package.json"));
28
26
  dotenv_1.default.config();
29
27
  const logger_1 = __importDefault(require("@/logger"));
30
28
  const logger = new logger_1.default('Process');
31
- const GIT_SHORT_HASH = 'f0a6281';
32
29
  const printUsage = () => {
33
- console.log();
34
- console.log(`Interop X Node (v${package_json_1.default.version} - rev.${GIT_SHORT_HASH})`);
35
- console.log();
36
30
  console.log('Usage:');
37
- console.log(' interop-x help Show this message');
38
- console.log(' interop-x version Print out the installed version of Interop X');
39
- console.log();
40
- console.log(' interop-x down Put the node into maintenance mode');
41
- console.log(' interop-x up Take the node out of maintenance mode');
42
- console.log();
43
- console.log(' PRIVATE_KEY=abcd1234 interop-x Start the node with the given private key');
44
- console.log(' PRIVATE_KEY=abcd1234 STAGING=true interop-x Start the node in staging mode');
45
- console.log(' PRIVATE_KEY=abcd1234 AUTO_UPDATE=true interop-x Start the node in auto update mode');
46
- console.log(' PRIVATE_KEY=abcd1234 API_HOST=0.0.0.0 API_PORT=8080 interop-x Start the node with custom API host and port');
47
- console.log();
31
+ console.log(' PRIVATE_KEY=abcd1234 interop-x');
32
+ console.log(' PRIVATE_KEY=abcd1234 STAGING=true interop-x');
33
+ console.log(' PRIVATE_KEY=abcd1234 AUTO_UPDATE=true interop-x');
34
+ console.log(' PRIVATE_KEY=abcd1234 API_HOST=0.0.0.0 API_PORT=8080 interop-x');
48
35
  };
49
36
  if (process.argv.at(-1) === 'help') {
50
37
  printUsage();
51
38
  process.exit(0);
52
39
  }
53
- const basePath = (0, expand_home_dir_1.default)(`~/.interop-x`);
54
- if (process.argv.at(-1) === 'down') {
55
- fs_extra_1.default.outputFileSync(basePath + '/maintenance', Date.now().toString());
56
- console.log(chalk_1.default.red('Maintenance mode enabled'));
57
- process.exit(0);
58
- }
59
- if (process.argv.at(-1) === 'up') {
60
- fs_extra_1.default.removeSync(basePath + '/maintenance');
61
- console.log(chalk_1.default.green('Maintenance mode disabled'));
62
- process.exit(0);
63
- }
40
+ const GIT_SHORT_HASH = 'fabee70';
64
41
  if (process.argv.at(-1) === 'version') {
65
42
  console.log(`Interop X Node (v${package_json_1.default.version} - rev.${GIT_SHORT_HASH})`);
66
43
  process.exit(0);
@@ -10,7 +10,7 @@ const SignatureDialProtocol_1 = require("./dial/SignatureDialProtocol");
10
10
  const __1 = require("..");
11
11
  const config_1 = __importDefault(require("@/config"));
12
12
  const types_1 = require("@/types");
13
- const TransactionStatusDialProtocol_1 = require("./dial/TransactionStatusDialProtocol");
13
+ const SignatureDialProtocol_1_1 = require("./dial/SignatureDialProtocol.1");
14
14
  class Protocol extends stream_1.EventEmitter {
15
15
  constructor() {
16
16
  super(...arguments);
@@ -65,7 +65,7 @@ class Protocol extends stream_1.EventEmitter {
65
65
  });
66
66
  });
67
67
  this.signature = new SignatureDialProtocol_1.SignatureDialProtocol(this.libp2p);
68
- this.transactionStatus = new TransactionStatusDialProtocol_1.TransactionStatusDialProtocol(this.libp2p);
68
+ this.transactionStatus = new SignatureDialProtocol_1_1.TransactionStatusDialProtocol(this.libp2p);
69
69
  }
70
70
  init() {
71
71
  this.libp2p.pubsub.subscribe(this.topic);
@@ -5,19 +5,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const BaseTask_1 = require("./BaseTask");
7
7
  const logger_1 = __importDefault(require("@/logger"));
8
+ const utils_1 = require("@/utils");
8
9
  const await_spawn_1 = __importDefault(require("await-spawn"));
9
- const child_process_1 = require("child_process");
10
10
  const config_1 = __importDefault(require("@/config"));
11
11
  const waait_1 = __importDefault(require("waait"));
12
12
  const package_json_1 = __importDefault(require("../../package.json"));
13
13
  const currentVersion = package_json_1.default.version;
14
- const tag = config_1.default.staging ? 'dev' : 'latest';
15
14
  class AutoUpdateTask extends BaseTask_1.BaseTask {
16
15
  constructor() {
17
16
  super({
18
17
  logger: new logger_1.default("AutoUpdateTask"),
19
18
  });
20
- this.pollIntervalMs = 60 * 10 * 1000;
19
+ this.pollIntervalMs = 60 * 5 * 1000;
21
20
  }
22
21
  prePollHandler() {
23
22
  return config_1.default.autoUpdate && !config_1.default.isLeadNode();
@@ -32,24 +31,15 @@ class AutoUpdateTask extends BaseTask_1.BaseTask {
32
31
  return currentVersion;
33
32
  }
34
33
  }
35
- async getLatestVersion() {
36
- try {
37
- const stdout = await (0, await_spawn_1.default)('npm', ['view', `${package_json_1.default.name}@${tag}`, 'version']);
38
- return stdout.toString().trim();
39
- }
40
- catch (error) {
41
- this.logger.error(error);
42
- return currentVersion;
43
- }
44
- }
45
34
  async pollHandler() {
46
- const version = await this.getLatestVersion();
35
+ const { data } = await utils_1.http.get('https://registry.npmjs.org/@instadapp/interop-x');
36
+ const version = data['dist-tags'].latest;
47
37
  if (version === currentVersion) {
48
38
  return;
49
39
  }
50
40
  this.logger.warn(`New version ${version} available.`);
51
41
  this.logger.info('Updating...');
52
- await (0, await_spawn_1.default)('npm', ['-g', 'install', `@instadapp/interop-x@${tag}`, '-f']);
42
+ await (0, await_spawn_1.default)('npm', ['-g', 'install', '@instadapp/interop-x', '-f']);
53
43
  await (0, waait_1.default)(5000);
54
44
  if (version !== await this.getInstalledVersion()) {
55
45
  this.logger.warn(`failed to install ${version}, retrying in 5 minutes`);
@@ -57,13 +47,10 @@ class AutoUpdateTask extends BaseTask_1.BaseTask {
57
47
  }
58
48
  this.logger.warn(`Installed version ${version}`);
59
49
  this.logger.warn(`Restarting...`);
60
- // TODO: its restarting in the bg, but it should be in the fg
61
- const subprocess = (0, child_process_1.spawn)(process.argv[0], process.argv.slice(1), {
50
+ (0, await_spawn_1.default)(process.argv[0], process.argv.slice(1), {
62
51
  cwd: process.cwd(),
63
- stdio: "inherit",
64
- // shell: process.env.SHELL,
52
+ stdio: "inherit"
65
53
  });
66
- subprocess.unref();
67
54
  process.exit();
68
55
  }
69
56
  }
@@ -35,10 +35,6 @@ class BaseTask extends events_1.default {
35
35
  }
36
36
  }
37
37
  prePollHandler() {
38
- if (config_1.default.isMaintenanceMode()) {
39
- this.logger.warn('Maintenance mode is enabled. Skipping task.');
40
- return false;
41
- }
42
38
  if (this.exceptLeadNode) {
43
39
  return !config_1.default.isLeadNode();
44
40
  }
@@ -27,12 +27,12 @@ class SyncWithdrawEvents extends BaseTask_1.BaseTask {
27
27
  if (!event.args) {
28
28
  continue;
29
29
  }
30
- const { to, amount, sourceChainId, targetChainId } = event.args;
30
+ const { to, amount, chainId } = event.args;
31
31
  const uniqueIdentifier = {
32
32
  action: 'withdraw',
33
33
  submitTransactionHash: event.transactionHash,
34
- sourceChainId: sourceChainId,
35
- targetChainId: targetChainId,
34
+ sourceChainId: this.chainId,
35
+ targetChainId: chainId.toNumber(),
36
36
  };
37
37
  if (await db_1.Transaction.findOne({ where: uniqueIdentifier })) {
38
38
  continue;
@@ -44,14 +44,12 @@ class SyncWithdrawEvents extends BaseTask_1.BaseTask {
44
44
  to,
45
45
  amount: amount.toString(),
46
46
  itoken: this.itokenAddress,
47
- sourceChainId: sourceChainId,
48
- targetChainId: targetChainId,
47
+ chainId: chainId.toString()
49
48
  }, sourceEvent: {
50
49
  to,
51
50
  amount: amount.toString(),
52
51
  itoken: this.itokenAddress,
53
- sourceChainId: sourceChainId,
54
- targetChainId: targetChainId,
52
+ chainId: chainId.toString(),
55
53
  }, status: "pending" }));
56
54
  this.logger.info(`Withdraw queued: ${event.transactionHash} ${event.blockNumber}`);
57
55
  }
@@ -68,21 +68,9 @@ class ProcessDepositEvents extends BaseTask_1.BaseTask {
68
68
  const safeContract = (0, utils_1.getContract)(safeAddress, abi_1.default.gnosisSafe, targetWallet);
69
69
  const ownersThreshold = await safeContract.getThreshold();
70
70
  await (0, waait_1.default)(10000);
71
- let data;
72
- try {
73
- data = await (0, utils_1.buildDataForTransaction)(transaction);
74
- }
75
- catch (error) {
76
- console.log(error);
77
- transaction.targetStatus = 'failed';
78
- transaction.targetErrors = [error.message];
79
- await transaction.save();
80
- net_1.protocol.sendTransaction(transaction);
81
- return;
82
- }
83
71
  let gnosisTx = await generateGnosisTransaction({
84
72
  baseGas: "0",
85
- data,
73
+ data: await (0, utils_1.buildDataForTransaction)(transaction),
86
74
  gasPrice: "0",
87
75
  gasToken: "0x0000000000000000000000000000000000000000",
88
76
  nonce: '0',
@@ -31,8 +31,8 @@ class SyncDepositEvents extends BaseTask_1.BaseTask {
31
31
  const uniqueIdentifier = {
32
32
  action: 'deposit',
33
33
  submitTransactionHash: event.transactionHash,
34
- sourceChainId: sourceChainId,
35
- targetChainId: targetChainId,
34
+ sourceChainId: sourceChainId.toNumber(),
35
+ targetChainId: targetChainId.toNumber(),
36
36
  };
37
37
  if (await db_1.Transaction.findOne({ where: uniqueIdentifier })) {
38
38
  continue;
@@ -57,17 +57,11 @@ const _abi = [
57
57
  name: "amount",
58
58
  type: "uint256",
59
59
  },
60
- {
61
- indexed: false,
62
- internalType: "uint32",
63
- name: "sourceChainId",
64
- type: "uint32",
65
- },
66
60
  {
67
61
  indexed: true,
68
- internalType: "uint32",
69
- name: "targetChainId",
70
- type: "uint32",
62
+ internalType: "uint256",
63
+ name: "chainId",
64
+ type: "uint256",
71
65
  },
72
66
  ],
73
67
  name: "Burn",
@@ -90,20 +84,14 @@ const _abi = [
90
84
  },
91
85
  {
92
86
  indexed: true,
93
- internalType: "uint32",
94
- name: "sourceChainId",
95
- type: "uint32",
96
- },
97
- {
98
- indexed: false,
99
- internalType: "uint32",
100
- name: "targetChainId",
101
- type: "uint32",
87
+ internalType: "uint256",
88
+ name: "chainId",
89
+ type: "uint256",
102
90
  },
103
91
  {
104
92
  indexed: true,
105
93
  internalType: "bytes32",
106
- name: "submitTransactionHash",
94
+ name: "transactionHash",
107
95
  type: "bytes32",
108
96
  },
109
97
  ],
@@ -234,9 +222,9 @@ const _abi = [
234
222
  type: "uint256",
235
223
  },
236
224
  {
237
- internalType: "uint32",
225
+ internalType: "uint256",
238
226
  name: "chainId",
239
- type: "uint32",
227
+ type: "uint256",
240
228
  },
241
229
  ],
242
230
  name: "burn",
@@ -318,9 +306,9 @@ const _abi = [
318
306
  type: "uint256",
319
307
  },
320
308
  {
321
- internalType: "uint32",
309
+ internalType: "uint256",
322
310
  name: "chainId",
323
- type: "uint32",
311
+ type: "uint256",
324
312
  },
325
313
  {
326
314
  internalType: "bytes32",
@@ -46,15 +46,15 @@ const _abi = [
46
46
  },
47
47
  {
48
48
  indexed: false,
49
- internalType: "uint32",
49
+ internalType: "uint256",
50
50
  name: "sourceChainId",
51
- type: "uint32",
51
+ type: "uint256",
52
52
  },
53
53
  {
54
54
  indexed: true,
55
- internalType: "uint32",
55
+ internalType: "uint256",
56
56
  name: "targetChainId",
57
- type: "uint32",
57
+ type: "uint256",
58
58
  },
59
59
  ],
60
60
  name: "LogGatewayDeposit",
@@ -83,15 +83,15 @@ const _abi = [
83
83
  },
84
84
  {
85
85
  indexed: true,
86
- internalType: "uint32",
86
+ internalType: "uint256",
87
87
  name: "sourceChainId",
88
- type: "uint32",
88
+ type: "uint256",
89
89
  },
90
90
  {
91
91
  indexed: false,
92
- internalType: "uint32",
92
+ internalType: "uint256",
93
93
  name: "targetChainId",
94
- type: "uint32",
94
+ type: "uint256",
95
95
  },
96
96
  {
97
97
  indexed: true,
@@ -148,9 +148,9 @@ const _abi = [
148
148
  type: "uint256",
149
149
  },
150
150
  {
151
- internalType: "uint32",
151
+ internalType: "uint256",
152
152
  name: "chainId_",
153
- type: "uint32",
153
+ type: "uint256",
154
154
  },
155
155
  ],
156
156
  name: "deposit",
@@ -176,9 +176,9 @@ const _abi = [
176
176
  type: "uint256",
177
177
  },
178
178
  {
179
- internalType: "uint32",
179
+ internalType: "uint256",
180
180
  name: "chainId_",
181
- type: "uint32",
181
+ type: "uint256",
182
182
  },
183
183
  ],
184
184
  name: "depositFor",
@@ -224,9 +224,9 @@ const _abi = [
224
224
  type: "address",
225
225
  },
226
226
  {
227
- internalType: "uint32",
227
+ internalType: "uint256",
228
228
  name: "chainId_",
229
- type: "uint32",
229
+ type: "uint256",
230
230
  },
231
231
  {
232
232
  internalType: "bytes32",
@@ -167,20 +167,20 @@ const buildWithdrawDataForTransaction = async (transaction, type) => {
167
167
  if (!transaction.submitEvent) {
168
168
  throw Error('Cannot build data for transaction without submitEvent');
169
169
  }
170
- const { to, amount, sourceChainId, targetChainId, itoken: itokenAddress } = transaction.submitEvent;
171
- const itoken = constants_1.itokens[sourceChainId].find(token => token.address.toLowerCase() === itokenAddress.toLowerCase());
170
+ const { to, amount, chainId, itoken: itokenAddress } = transaction.submitEvent;
171
+ const itoken = constants_1.itokens[transaction.sourceChainId].find(token => token.address.toLowerCase() === itokenAddress.toLowerCase());
172
172
  if (!itoken) {
173
173
  throw Error('Cannot build data for transaction without itoken');
174
174
  }
175
- const token = constants_1.tokens[targetChainId].find(t => t.symbol.toLowerCase() === itoken.symbol.toLowerCase());
175
+ const token = constants_1.tokens[chainId].find(t => t.symbol.toLowerCase() === itoken.symbol.toLowerCase());
176
176
  if (!token) {
177
177
  throw Error('Cannot build data for transaction without token');
178
178
  }
179
- const targetChainProvider = new ethers_1.ethers.providers.JsonRpcProvider((0, exports.getRpcProviderUrl)(targetChainId));
179
+ const targetChainProvider = new ethers_1.ethers.providers.JsonRpcProvider((0, exports.getRpcProviderUrl)(transaction.targetChainId));
180
180
  const targetWallet = new ethers_1.ethers.Wallet(config_1.default.privateKey, targetChainProvider);
181
- const gatewayAddress = constants_1.addresses[targetChainId].interopXGateway;
181
+ const gatewayAddress = constants_1.addresses[chainId].interopXGateway;
182
182
  const interopBridgeContract = getContract(gatewayAddress, abi_1.default.interopXGateway, targetWallet);
183
- const { data } = await interopBridgeContract.populateTransaction.systemWithdraw(ethers_1.ethers.BigNumber.from(amount.toString()), to, token.address, ethers_1.ethers.BigNumber.from(sourceChainId.toString()), transaction.submitTransactionHash);
183
+ const { data } = await interopBridgeContract.populateTransaction.systemWithdraw(ethers_1.ethers.BigNumber.from(amount.toString()), to, token.address, ethers_1.ethers.BigNumber.from(transaction.sourceChainId.toString()), transaction.submitTransactionHash);
184
184
  transactions.push({
185
185
  to: gatewayAddress,
186
186
  data: data,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instadapp/interop-x",
3
- "version": "0.0.0-dev.f0a6281",
3
+ "version": "0.0.0-dev.fabee70",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.js",
6
6
  "engines": {
@@ -28,6 +28,7 @@
28
28
  "await-spawn": "^4.0.2",
29
29
  "axios": "^0.27.1",
30
30
  "axios-retry": "^3.2.4",
31
+ "bignumber.js": "^9.0.2",
31
32
  "chalk": "4.1.2",
32
33
  "dotenv": "^16.0.0",
33
34
  "ethereumjs-util": "^7.1.4",
@@ -35,7 +36,6 @@
35
36
  "ethers-multisend": "^2.1.1",
36
37
  "expand-home-dir": "^0.0.3",
37
38
  "fastify": "^3.28.0",
38
- "fs-extra": "^10.1.0",
39
39
  "libp2p": "^0.36.2",
40
40
  "libp2p-bootstrap": "^0.14.0",
41
41
  "libp2p-kad-dht": "^0.28.6",