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

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.
Files changed (77) hide show
  1. package/.github/workflows/ci.yml +19 -0
  2. package/dist/package.json +14 -13
  3. package/dist/src/abi/index.js +2 -4
  4. package/dist/src/abi/interopX.json +1436 -0
  5. package/dist/src/alias.js +10 -0
  6. package/dist/src/api/index.js +3 -0
  7. package/dist/src/config/index.js +10 -1
  8. package/dist/src/constants/addresses.js +2 -7
  9. package/dist/src/constants/index.js +0 -1
  10. package/dist/src/constants/tokens.js +62 -39
  11. package/dist/src/db/models/transaction.js +29 -11
  12. package/dist/src/gnosis/actions/index.js +9 -0
  13. package/dist/src/gnosis/actions/withdraw/index.js +114 -0
  14. package/dist/src/gnosis/index.js +20 -0
  15. package/dist/src/index.js +34 -22
  16. package/dist/src/net/protocol/dial/SignatureDialProtocol.js +9 -10
  17. package/dist/src/net/protocol/dial/{SignatureDialProtocol.1.js → TransactionStatusDialProtocol.js} +2 -0
  18. package/dist/src/net/protocol/index.js +17 -7
  19. package/dist/src/tasks/AutoUpdateTask.js +20 -7
  20. package/dist/src/tasks/BaseTask.js +4 -0
  21. package/dist/src/tasks/InteropX/SyncLogSubmitEvents.js +84 -0
  22. package/dist/src/tasks/Transactions/SyncTransactionStatusTask.js +8 -3
  23. package/dist/src/tasks/index.js +9 -19
  24. package/dist/src/typechain/{InteropBridgeToken.js → InteropX.js} +0 -0
  25. package/dist/src/typechain/factories/InteropX__factory.js +1928 -0
  26. package/dist/src/typechain/factories/index.js +3 -5
  27. package/dist/src/typechain/index.js +3 -5
  28. package/dist/src/utils/index.js +46 -89
  29. package/package.json +14 -13
  30. package/src/abi/index.ts +2 -4
  31. package/src/abi/interopX.json +1436 -0
  32. package/src/alias.ts +6 -0
  33. package/src/api/index.ts +3 -0
  34. package/src/config/index.ts +9 -1
  35. package/src/constants/addresses.ts +3 -8
  36. package/src/constants/index.ts +0 -1
  37. package/src/constants/tokens.ts +63 -40
  38. package/src/db/models/transaction.ts +65 -25
  39. package/src/gnosis/actions/index.ts +5 -0
  40. package/src/gnosis/actions/withdraw/index.ts +155 -0
  41. package/src/gnosis/index.ts +19 -0
  42. package/src/index.ts +47 -26
  43. package/src/net/protocol/dial/SignatureDialProtocol.ts +11 -13
  44. package/src/net/protocol/dial/{SignatureDialProtocol.1.ts → TransactionStatusDialProtocol.ts} +3 -1
  45. package/src/net/protocol/index.ts +17 -7
  46. package/src/tasks/AutoUpdateTask.ts +24 -15
  47. package/src/tasks/BaseTask.ts +5 -0
  48. package/src/tasks/InteropX/SyncLogSubmitEvents.ts +136 -0
  49. package/src/tasks/Transactions/SyncTransactionStatusTask.ts +8 -3
  50. package/src/tasks/index.ts +12 -22
  51. package/src/typechain/InteropX.ts +1216 -0
  52. package/src/typechain/factories/InteropX__factory.ts +1932 -0
  53. package/src/typechain/factories/index.ts +1 -2
  54. package/src/typechain/index.ts +2 -4
  55. package/src/utils/index.ts +98 -128
  56. package/tsconfig.json +7 -2
  57. package/dist/src/abi/interopBridgeToken.json +0 -286
  58. package/dist/src/abi/interopXGateway.json +0 -184
  59. package/dist/src/constants/itokens.js +0 -13
  60. package/dist/src/tasks/InteropBridge/ProcessWithdrawEvents.js +0 -146
  61. package/dist/src/tasks/InteropBridge/SyncWithdrawEvents.js +0 -69
  62. package/dist/src/tasks/InteropXGateway/ProcessDepositEvents.js +0 -149
  63. package/dist/src/tasks/InteropXGateway/SyncDepositEvents.js +0 -74
  64. package/dist/src/typechain/InteropXGateway.js +0 -2
  65. package/dist/src/typechain/factories/InteropBridgeToken__factory.js +0 -459
  66. package/dist/src/typechain/factories/InteropXGateway__factory.js +0 -265
  67. package/src/abi/interopBridgeToken.json +0 -286
  68. package/src/abi/interopXGateway.json +0 -184
  69. package/src/constants/itokens.ts +0 -10
  70. package/src/tasks/InteropBridge/ProcessWithdrawEvents.ts +0 -231
  71. package/src/tasks/InteropBridge/SyncWithdrawEvents.ts +0 -119
  72. package/src/tasks/InteropXGateway/ProcessDepositEvents.ts +0 -243
  73. package/src/tasks/InteropXGateway/SyncDepositEvents.ts +0 -124
  74. package/src/typechain/InteropBridgeToken.ts +0 -686
  75. package/src/typechain/InteropXGateway.ts +0 -407
  76. package/src/typechain/factories/InteropBridgeToken__factory.ts +0 -466
  77. package/src/typechain/factories/InteropXGateway__factory.ts +0 -272
@@ -1,124 +0,0 @@
1
- import { BaseTask } from "../BaseTask";
2
- import Logger from '@/logger';
3
- import { ethers } from "ethers";
4
- import abi from "@/abi";
5
- import { Transaction } from "@/db";
6
- import { generateInteropTransactionHash, getContract, getRpcProviderUrl } from "@/utils";
7
- import { addresses } from "@/constants";
8
- import { ChainId } from "@/types";
9
- import config from "@/config";
10
- import { InteropXGateway } from "@/typechain";
11
-
12
- class SyncDepositEvents extends BaseTask {
13
- contractAddress: string;
14
- provider: ethers.providers.JsonRpcProvider;
15
- contract: InteropXGateway;
16
- chainId: ChainId;
17
-
18
- constructor({ chainId }: { chainId: ChainId }) {
19
- super({
20
- logger: new Logger("InteropXGateway::SyncDepositEvents"),
21
- })
22
- this.chainId = chainId;
23
- }
24
-
25
- async pollHandler() {
26
- const currentBlock = await this.provider.getBlockNumber();
27
-
28
- const events = await this.contract.queryFilter(
29
- this.contract.filters.LogGatewayDeposit(),
30
- currentBlock - 2000,
31
- currentBlock,
32
- );
33
-
34
- let processedEvents = 0;
35
-
36
- for (const event of events) {
37
-
38
- try {
39
- if (!event.args) {
40
- continue;
41
- }
42
-
43
- const { sourceChainId, targetChainId, user, vnonce, amount, token } = event.args;
44
-
45
- const uniqueIdentifier = {
46
- action: 'deposit',
47
- submitTransactionHash: event.transactionHash,
48
- sourceChainId: sourceChainId.toNumber(),
49
- targetChainId: targetChainId.toNumber(),
50
- }
51
-
52
- if (await Transaction.findOne({ where: uniqueIdentifier })) {
53
- continue;
54
- }
55
-
56
- const tx = await event.getTransaction()
57
-
58
- await Transaction.create({
59
- ...uniqueIdentifier,
60
- transactionHash: generateInteropTransactionHash(uniqueIdentifier),
61
- from: tx.from,
62
- to: user,
63
-
64
-
65
- submitTransactionHash: event.transactionHash,
66
- submitBlockNumber: event.blockNumber,
67
-
68
- // submit & source are the same
69
- sourceTransactionHash: event.transactionHash,
70
- sourceBlockNumber: event.blockNumber,
71
- sourceStatus: "success",
72
-
73
- targetStatus: "uninitialised",
74
-
75
- submitEvent: {
76
- user,
77
- sourceChainId: sourceChainId.toString(),
78
- targetChainId: targetChainId.toString(),
79
- token: token,
80
- amount: amount.toString(),
81
- vnonce: vnonce.toString(),
82
- },
83
-
84
- sourceEvent: {
85
- user,
86
- sourceChainId: sourceChainId.toString(),
87
- targetChainId: targetChainId.toString(),
88
- token: token,
89
- amount: amount.toString(),
90
- vnonce: vnonce.toString(),
91
- },
92
- status: "pending",
93
- })
94
-
95
- this.logger.info(
96
- `Deposit queued: ${event.transactionHash} ${event.blockNumber}`
97
- );
98
- } catch (error) {
99
- this.logger.error(error);
100
- }
101
- }
102
-
103
- if (processedEvents > 0)
104
- this.logger.info(`${processedEvents} events processed`);
105
- }
106
-
107
- async start(): Promise<void> {
108
- this.contractAddress = addresses[this.chainId].interopXGateway;
109
-
110
- this.provider = new ethers.providers.JsonRpcProvider(
111
- getRpcProviderUrl(this.chainId)
112
- );
113
-
114
- this.contract = getContract<InteropXGateway>(
115
- this.contractAddress,
116
- abi.interopXGateway,
117
- new ethers.Wallet(config.privateKey!, this.provider)
118
- );
119
-
120
- await super.start()
121
- }
122
- }
123
-
124
- export default SyncDepositEvents;