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

Sign up to get free protection for your applications and to get access to all the features.
Files changed (98) hide show
  1. package/.env.example +2 -1
  2. package/bin/interop-x +1 -1
  3. package/dist/package.json +73 -0
  4. package/dist/src/abi/erc20.json +350 -0
  5. package/dist/src/abi/gnosisSafe.json +747 -0
  6. package/dist/src/abi/index.js +15 -0
  7. package/dist/src/abi/interopBridgeToken.json +298 -0
  8. package/dist/src/abi/interopXGateway.json +184 -0
  9. package/dist/src/api/index.js +33 -0
  10. package/dist/src/config/index.js +31 -0
  11. package/dist/src/constants/addresses.js +20 -0
  12. package/dist/{constants → src/constants}/index.js +2 -0
  13. package/dist/src/constants/itokens.js +13 -0
  14. package/dist/src/constants/tokens.js +107 -0
  15. package/dist/{db → src/db}/index.js +0 -0
  16. package/dist/{db → src/db}/models/index.js +1 -1
  17. package/dist/src/db/models/transaction.js +54 -0
  18. package/dist/{db → src/db}/sequelize.js +2 -1
  19. package/dist/src/index.js +130 -0
  20. package/dist/{logger → src/logger}/index.js +0 -0
  21. package/dist/{net → src/net}/index.js +0 -0
  22. package/dist/{net → src/net}/peer/index.js +8 -3
  23. package/dist/{net → src/net}/pool/index.js +32 -9
  24. package/dist/{net → src/net}/protocol/dial/BaseDialProtocol.js +0 -0
  25. package/dist/{net → src/net}/protocol/dial/SignatureDialProtocol.js +20 -12
  26. package/dist/src/net/protocol/dial/TransactionStatusDialProtocol.js +28 -0
  27. package/dist/{net → src/net}/protocol/index.js +44 -4
  28. package/dist/src/tasks/AutoUpdateTask.js +70 -0
  29. package/dist/{tasks → src/tasks}/BaseTask.js +13 -5
  30. package/dist/src/tasks/InteropBridge/ProcessWithdrawEvents.js +146 -0
  31. package/dist/src/tasks/InteropBridge/SyncWithdrawEvents.js +71 -0
  32. package/dist/src/tasks/InteropXGateway/ProcessDepositEvents.js +161 -0
  33. package/dist/src/tasks/InteropXGateway/SyncDepositEvents.js +74 -0
  34. package/dist/src/tasks/Transactions/SyncTransactionStatusTask.js +53 -0
  35. package/dist/src/tasks/index.js +44 -0
  36. package/dist/src/typechain/Erc20.js +2 -0
  37. package/dist/src/typechain/GnosisSafe.js +2 -0
  38. package/dist/src/typechain/InteropBridgeToken.js +2 -0
  39. package/dist/src/typechain/InteropXGateway.js +2 -0
  40. package/dist/src/typechain/common.js +2 -0
  41. package/dist/src/typechain/factories/Erc20__factory.js +367 -0
  42. package/dist/src/typechain/factories/GnosisSafe__factory.js +1174 -0
  43. package/dist/src/typechain/factories/InteropBridgeToken__factory.js +471 -0
  44. package/dist/src/typechain/factories/InteropXGateway__factory.js +265 -0
  45. package/dist/src/typechain/factories/index.js +14 -0
  46. package/dist/src/typechain/index.js +35 -0
  47. package/dist/{types.js → src/types.js} +0 -0
  48. package/dist/src/utils/index.js +238 -0
  49. package/package.json +18 -10
  50. package/patches/@ethersproject+properties+5.6.0.patch +13 -0
  51. package/src/abi/erc20.json +350 -0
  52. package/src/abi/gnosisSafe.json +747 -0
  53. package/src/abi/index.ts +11 -0
  54. package/src/abi/interopBridgeToken.json +298 -0
  55. package/src/abi/interopXGateway.json +184 -0
  56. package/src/api/index.ts +33 -0
  57. package/src/config/index.ts +17 -1
  58. package/src/constants/addresses.ts +9 -2
  59. package/src/constants/index.ts +2 -0
  60. package/src/constants/itokens.ts +10 -0
  61. package/src/constants/tokens.ts +104 -0
  62. package/src/db/models/index.ts +1 -1
  63. package/src/db/models/transaction.ts +96 -0
  64. package/src/db/sequelize.ts +2 -1
  65. package/src/index.ts +119 -7
  66. package/src/net/peer/index.ts +9 -7
  67. package/src/net/pool/index.ts +41 -11
  68. package/src/net/protocol/dial/SignatureDialProtocol.ts +24 -15
  69. package/src/net/protocol/dial/TransactionStatusDialProtocol.ts +31 -0
  70. package/src/net/protocol/index.ts +60 -4
  71. package/src/tasks/AutoUpdateTask.ts +82 -0
  72. package/src/tasks/BaseTask.ts +15 -6
  73. package/src/tasks/InteropBridge/ProcessWithdrawEvents.ts +231 -0
  74. package/src/tasks/InteropBridge/SyncWithdrawEvents.ts +121 -0
  75. package/src/tasks/InteropXGateway/ProcessDepositEvents.ts +256 -0
  76. package/src/tasks/InteropXGateway/SyncDepositEvents.ts +124 -0
  77. package/src/tasks/Transactions/SyncTransactionStatusTask.ts +65 -0
  78. package/src/tasks/index.ts +26 -1
  79. package/src/typechain/Erc20.ts +491 -0
  80. package/src/typechain/GnosisSafe.ts +1728 -0
  81. package/src/typechain/InteropBridgeToken.ts +692 -0
  82. package/src/typechain/InteropXGateway.ts +407 -0
  83. package/src/typechain/common.ts +44 -0
  84. package/src/typechain/factories/Erc20__factory.ts +368 -0
  85. package/src/typechain/factories/GnosisSafe__factory.ts +1178 -0
  86. package/src/typechain/factories/InteropBridgeToken__factory.ts +478 -0
  87. package/src/typechain/factories/InteropXGateway__factory.ts +272 -0
  88. package/src/typechain/factories/index.ts +7 -0
  89. package/src/typechain/index.ts +12 -0
  90. package/src/types.ts +1 -1
  91. package/src/utils/index.ts +206 -3
  92. package/dist/config/index.js +0 -17
  93. package/dist/constants/addresses.js +0 -13
  94. package/dist/db/models/execution.js +0 -38
  95. package/dist/index.js +0 -43
  96. package/dist/tasks/index.js +0 -19
  97. package/dist/utils/index.js +0 -89
  98. package/src/db/models/execution.ts +0 -57
@@ -0,0 +1,407 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import type {
17
+ FunctionFragment,
18
+ Result,
19
+ EventFragment,
20
+ } from "@ethersproject/abi";
21
+ import type { Listener, Provider } from "@ethersproject/providers";
22
+ import type {
23
+ TypedEventFilter,
24
+ TypedEvent,
25
+ TypedListener,
26
+ OnEvent,
27
+ } from "./common";
28
+
29
+ export interface InteropXGatewayInterface extends utils.Interface {
30
+ functions: {
31
+ "_vnonce()": FunctionFragment;
32
+ "deposit(address,uint256,uint32)": FunctionFragment;
33
+ "depositFor(address,address,uint256,uint32)": FunctionFragment;
34
+ "owner()": FunctionFragment;
35
+ "renounceOwnership()": FunctionFragment;
36
+ "systemWithdraw(uint256,address,address,uint32,bytes32)": FunctionFragment;
37
+ "transferOwnership(address)": FunctionFragment;
38
+ };
39
+
40
+ getFunction(
41
+ nameOrSignatureOrTopic:
42
+ | "_vnonce"
43
+ | "deposit"
44
+ | "depositFor"
45
+ | "owner"
46
+ | "renounceOwnership"
47
+ | "systemWithdraw"
48
+ | "transferOwnership"
49
+ ): FunctionFragment;
50
+
51
+ encodeFunctionData(functionFragment: "_vnonce", values?: undefined): string;
52
+ encodeFunctionData(
53
+ functionFragment: "deposit",
54
+ values: [string, BigNumberish, BigNumberish]
55
+ ): string;
56
+ encodeFunctionData(
57
+ functionFragment: "depositFor",
58
+ values: [string, string, BigNumberish, BigNumberish]
59
+ ): string;
60
+ encodeFunctionData(functionFragment: "owner", values?: undefined): string;
61
+ encodeFunctionData(
62
+ functionFragment: "renounceOwnership",
63
+ values?: undefined
64
+ ): string;
65
+ encodeFunctionData(
66
+ functionFragment: "systemWithdraw",
67
+ values: [BigNumberish, string, string, BigNumberish, BytesLike]
68
+ ): string;
69
+ encodeFunctionData(
70
+ functionFragment: "transferOwnership",
71
+ values: [string]
72
+ ): string;
73
+
74
+ decodeFunctionResult(functionFragment: "_vnonce", data: BytesLike): Result;
75
+ decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result;
76
+ decodeFunctionResult(functionFragment: "depositFor", data: BytesLike): Result;
77
+ decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
78
+ decodeFunctionResult(
79
+ functionFragment: "renounceOwnership",
80
+ data: BytesLike
81
+ ): Result;
82
+ decodeFunctionResult(
83
+ functionFragment: "systemWithdraw",
84
+ data: BytesLike
85
+ ): Result;
86
+ decodeFunctionResult(
87
+ functionFragment: "transferOwnership",
88
+ data: BytesLike
89
+ ): Result;
90
+
91
+ events: {
92
+ "LogGatewayDeposit(address,address,uint256,uint256,uint32,uint32)": EventFragment;
93
+ "LogGatewayWithdraw(address,address,uint256,uint32,uint32,bytes32)": EventFragment;
94
+ "OwnershipTransferred(address,address)": EventFragment;
95
+ };
96
+
97
+ getEvent(nameOrSignatureOrTopic: "LogGatewayDeposit"): EventFragment;
98
+ getEvent(nameOrSignatureOrTopic: "LogGatewayWithdraw"): EventFragment;
99
+ getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment;
100
+ }
101
+
102
+ export interface LogGatewayDepositEventObject {
103
+ user: string;
104
+ token: string;
105
+ amount: BigNumber;
106
+ vnonce: BigNumber;
107
+ sourceChainId: number;
108
+ targetChainId: number;
109
+ }
110
+ export type LogGatewayDepositEvent = TypedEvent<
111
+ [string, string, BigNumber, BigNumber, number, number],
112
+ LogGatewayDepositEventObject
113
+ >;
114
+
115
+ export type LogGatewayDepositEventFilter =
116
+ TypedEventFilter<LogGatewayDepositEvent>;
117
+
118
+ export interface LogGatewayWithdrawEventObject {
119
+ user: string;
120
+ token: string;
121
+ amount: BigNumber;
122
+ sourceChainId: number;
123
+ targetChainId: number;
124
+ transactionHash: string;
125
+ }
126
+ export type LogGatewayWithdrawEvent = TypedEvent<
127
+ [string, string, BigNumber, number, number, string],
128
+ LogGatewayWithdrawEventObject
129
+ >;
130
+
131
+ export type LogGatewayWithdrawEventFilter =
132
+ TypedEventFilter<LogGatewayWithdrawEvent>;
133
+
134
+ export interface OwnershipTransferredEventObject {
135
+ previousOwner: string;
136
+ newOwner: string;
137
+ }
138
+ export type OwnershipTransferredEvent = TypedEvent<
139
+ [string, string],
140
+ OwnershipTransferredEventObject
141
+ >;
142
+
143
+ export type OwnershipTransferredEventFilter =
144
+ TypedEventFilter<OwnershipTransferredEvent>;
145
+
146
+ export interface InteropXGateway extends BaseContract {
147
+ connect(signerOrProvider: Signer | Provider | string): this;
148
+ attach(addressOrName: string): this;
149
+ deployed(): Promise<this>;
150
+
151
+ interface: InteropXGatewayInterface;
152
+
153
+ queryFilter<TEvent extends TypedEvent>(
154
+ event: TypedEventFilter<TEvent>,
155
+ fromBlockOrBlockhash?: string | number | undefined,
156
+ toBlock?: string | number | undefined
157
+ ): Promise<Array<TEvent>>;
158
+
159
+ listeners<TEvent extends TypedEvent>(
160
+ eventFilter?: TypedEventFilter<TEvent>
161
+ ): Array<TypedListener<TEvent>>;
162
+ listeners(eventName?: string): Array<Listener>;
163
+ removeAllListeners<TEvent extends TypedEvent>(
164
+ eventFilter: TypedEventFilter<TEvent>
165
+ ): this;
166
+ removeAllListeners(eventName?: string): this;
167
+ off: OnEvent<this>;
168
+ on: OnEvent<this>;
169
+ once: OnEvent<this>;
170
+ removeListener: OnEvent<this>;
171
+
172
+ functions: {
173
+ _vnonce(overrides?: CallOverrides): Promise<[BigNumber]>;
174
+
175
+ deposit(
176
+ token_: string,
177
+ amount_: BigNumberish,
178
+ chainId_: BigNumberish,
179
+ overrides?: Overrides & { from?: string | Promise<string> }
180
+ ): Promise<ContractTransaction>;
181
+
182
+ depositFor(
183
+ to_: string,
184
+ token_: string,
185
+ amount_: BigNumberish,
186
+ chainId_: BigNumberish,
187
+ overrides?: Overrides & { from?: string | Promise<string> }
188
+ ): Promise<ContractTransaction>;
189
+
190
+ owner(overrides?: CallOverrides): Promise<[string]>;
191
+
192
+ renounceOwnership(
193
+ overrides?: Overrides & { from?: string | Promise<string> }
194
+ ): Promise<ContractTransaction>;
195
+
196
+ systemWithdraw(
197
+ amount_: BigNumberish,
198
+ user_: string,
199
+ token_: string,
200
+ chainId_: BigNumberish,
201
+ transactionHash_: BytesLike,
202
+ overrides?: Overrides & { from?: string | Promise<string> }
203
+ ): Promise<ContractTransaction>;
204
+
205
+ transferOwnership(
206
+ newOwner: string,
207
+ overrides?: Overrides & { from?: string | Promise<string> }
208
+ ): Promise<ContractTransaction>;
209
+ };
210
+
211
+ _vnonce(overrides?: CallOverrides): Promise<BigNumber>;
212
+
213
+ deposit(
214
+ token_: string,
215
+ amount_: BigNumberish,
216
+ chainId_: BigNumberish,
217
+ overrides?: Overrides & { from?: string | Promise<string> }
218
+ ): Promise<ContractTransaction>;
219
+
220
+ depositFor(
221
+ to_: string,
222
+ token_: string,
223
+ amount_: BigNumberish,
224
+ chainId_: BigNumberish,
225
+ overrides?: Overrides & { from?: string | Promise<string> }
226
+ ): Promise<ContractTransaction>;
227
+
228
+ owner(overrides?: CallOverrides): Promise<string>;
229
+
230
+ renounceOwnership(
231
+ overrides?: Overrides & { from?: string | Promise<string> }
232
+ ): Promise<ContractTransaction>;
233
+
234
+ systemWithdraw(
235
+ amount_: BigNumberish,
236
+ user_: string,
237
+ token_: string,
238
+ chainId_: BigNumberish,
239
+ transactionHash_: BytesLike,
240
+ overrides?: Overrides & { from?: string | Promise<string> }
241
+ ): Promise<ContractTransaction>;
242
+
243
+ transferOwnership(
244
+ newOwner: string,
245
+ overrides?: Overrides & { from?: string | Promise<string> }
246
+ ): Promise<ContractTransaction>;
247
+
248
+ callStatic: {
249
+ _vnonce(overrides?: CallOverrides): Promise<BigNumber>;
250
+
251
+ deposit(
252
+ token_: string,
253
+ amount_: BigNumberish,
254
+ chainId_: BigNumberish,
255
+ overrides?: CallOverrides
256
+ ): Promise<void>;
257
+
258
+ depositFor(
259
+ to_: string,
260
+ token_: string,
261
+ amount_: BigNumberish,
262
+ chainId_: BigNumberish,
263
+ overrides?: CallOverrides
264
+ ): Promise<void>;
265
+
266
+ owner(overrides?: CallOverrides): Promise<string>;
267
+
268
+ renounceOwnership(overrides?: CallOverrides): Promise<void>;
269
+
270
+ systemWithdraw(
271
+ amount_: BigNumberish,
272
+ user_: string,
273
+ token_: string,
274
+ chainId_: BigNumberish,
275
+ transactionHash_: BytesLike,
276
+ overrides?: CallOverrides
277
+ ): Promise<void>;
278
+
279
+ transferOwnership(
280
+ newOwner: string,
281
+ overrides?: CallOverrides
282
+ ): Promise<void>;
283
+ };
284
+
285
+ filters: {
286
+ "LogGatewayDeposit(address,address,uint256,uint256,uint32,uint32)"(
287
+ user?: null,
288
+ token?: string | null,
289
+ amount?: null,
290
+ vnonce?: BigNumberish | null,
291
+ sourceChainId?: null,
292
+ targetChainId?: BigNumberish | null
293
+ ): LogGatewayDepositEventFilter;
294
+ LogGatewayDeposit(
295
+ user?: null,
296
+ token?: string | null,
297
+ amount?: null,
298
+ vnonce?: BigNumberish | null,
299
+ sourceChainId?: null,
300
+ targetChainId?: BigNumberish | null
301
+ ): LogGatewayDepositEventFilter;
302
+
303
+ "LogGatewayWithdraw(address,address,uint256,uint32,uint32,bytes32)"(
304
+ user?: null,
305
+ token?: string | null,
306
+ amount?: null,
307
+ sourceChainId?: BigNumberish | null,
308
+ targetChainId?: null,
309
+ transactionHash?: BytesLike | null
310
+ ): LogGatewayWithdrawEventFilter;
311
+ LogGatewayWithdraw(
312
+ user?: null,
313
+ token?: string | null,
314
+ amount?: null,
315
+ sourceChainId?: BigNumberish | null,
316
+ targetChainId?: null,
317
+ transactionHash?: BytesLike | null
318
+ ): LogGatewayWithdrawEventFilter;
319
+
320
+ "OwnershipTransferred(address,address)"(
321
+ previousOwner?: string | null,
322
+ newOwner?: string | null
323
+ ): OwnershipTransferredEventFilter;
324
+ OwnershipTransferred(
325
+ previousOwner?: string | null,
326
+ newOwner?: string | null
327
+ ): OwnershipTransferredEventFilter;
328
+ };
329
+
330
+ estimateGas: {
331
+ _vnonce(overrides?: CallOverrides): Promise<BigNumber>;
332
+
333
+ deposit(
334
+ token_: string,
335
+ amount_: BigNumberish,
336
+ chainId_: BigNumberish,
337
+ overrides?: Overrides & { from?: string | Promise<string> }
338
+ ): Promise<BigNumber>;
339
+
340
+ depositFor(
341
+ to_: string,
342
+ token_: string,
343
+ amount_: BigNumberish,
344
+ chainId_: BigNumberish,
345
+ overrides?: Overrides & { from?: string | Promise<string> }
346
+ ): Promise<BigNumber>;
347
+
348
+ owner(overrides?: CallOverrides): Promise<BigNumber>;
349
+
350
+ renounceOwnership(
351
+ overrides?: Overrides & { from?: string | Promise<string> }
352
+ ): Promise<BigNumber>;
353
+
354
+ systemWithdraw(
355
+ amount_: BigNumberish,
356
+ user_: string,
357
+ token_: string,
358
+ chainId_: BigNumberish,
359
+ transactionHash_: BytesLike,
360
+ overrides?: Overrides & { from?: string | Promise<string> }
361
+ ): Promise<BigNumber>;
362
+
363
+ transferOwnership(
364
+ newOwner: string,
365
+ overrides?: Overrides & { from?: string | Promise<string> }
366
+ ): Promise<BigNumber>;
367
+ };
368
+
369
+ populateTransaction: {
370
+ _vnonce(overrides?: CallOverrides): Promise<PopulatedTransaction>;
371
+
372
+ deposit(
373
+ token_: string,
374
+ amount_: BigNumberish,
375
+ chainId_: BigNumberish,
376
+ overrides?: Overrides & { from?: string | Promise<string> }
377
+ ): Promise<PopulatedTransaction>;
378
+
379
+ depositFor(
380
+ to_: string,
381
+ token_: string,
382
+ amount_: BigNumberish,
383
+ chainId_: BigNumberish,
384
+ overrides?: Overrides & { from?: string | Promise<string> }
385
+ ): Promise<PopulatedTransaction>;
386
+
387
+ owner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
388
+
389
+ renounceOwnership(
390
+ overrides?: Overrides & { from?: string | Promise<string> }
391
+ ): Promise<PopulatedTransaction>;
392
+
393
+ systemWithdraw(
394
+ amount_: BigNumberish,
395
+ user_: string,
396
+ token_: string,
397
+ chainId_: BigNumberish,
398
+ transactionHash_: BytesLike,
399
+ overrides?: Overrides & { from?: string | Promise<string> }
400
+ ): Promise<PopulatedTransaction>;
401
+
402
+ transferOwnership(
403
+ newOwner: string,
404
+ overrides?: Overrides & { from?: string | Promise<string> }
405
+ ): Promise<PopulatedTransaction>;
406
+ };
407
+ }
@@ -0,0 +1,44 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type { Listener } from "@ethersproject/providers";
5
+ import type { Event, EventFilter } from "ethers";
6
+
7
+ export interface TypedEvent<
8
+ TArgsArray extends Array<any> = any,
9
+ TArgsObject = any
10
+ > extends Event {
11
+ args: TArgsArray & TArgsObject;
12
+ }
13
+
14
+ export interface TypedEventFilter<_TEvent extends TypedEvent>
15
+ extends EventFilter {}
16
+
17
+ export interface TypedListener<TEvent extends TypedEvent> {
18
+ (...listenerArg: [...__TypechainArgsArray<TEvent>, TEvent]): void;
19
+ }
20
+
21
+ type __TypechainArgsArray<T> = T extends TypedEvent<infer U> ? U : never;
22
+
23
+ export interface OnEvent<TRes> {
24
+ <TEvent extends TypedEvent>(
25
+ eventFilter: TypedEventFilter<TEvent>,
26
+ listener: TypedListener<TEvent>
27
+ ): TRes;
28
+ (eventName: string, listener: Listener): TRes;
29
+ }
30
+
31
+ export type MinEthersFactory<C, ARGS> = {
32
+ deploy(...a: ARGS[]): Promise<C>;
33
+ };
34
+
35
+ export type GetContractTypeFromFactory<F> = F extends MinEthersFactory<
36
+ infer C,
37
+ any
38
+ >
39
+ ? C
40
+ : never;
41
+
42
+ export type GetARGsTypeFromFactory<F> = F extends MinEthersFactory<any, any>
43
+ ? Parameters<F["deploy"]>
44
+ : never;