@across-protocol/sdk 4.1.42 → 4.1.44

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 (161) hide show
  1. package/dist/cjs/addressAggregator/adapters/abstract.d.ts +15 -0
  2. package/dist/cjs/addressAggregator/adapters/abstract.js +83 -0
  3. package/dist/cjs/addressAggregator/adapters/abstract.js.map +1 -0
  4. package/dist/cjs/addressAggregator/adapters/bybit.d.ts +5 -9
  5. package/dist/cjs/addressAggregator/adapters/bybit.js +11 -12
  6. package/dist/cjs/addressAggregator/adapters/bybit.js.map +1 -1
  7. package/dist/cjs/addressAggregator/adapters/env.d.ts +5 -7
  8. package/dist/cjs/addressAggregator/adapters/env.js +12 -11
  9. package/dist/cjs/addressAggregator/adapters/env.js.map +1 -1
  10. package/dist/cjs/addressAggregator/adapters/file.d.ts +5 -7
  11. package/dist/cjs/addressAggregator/adapters/file.js +13 -12
  12. package/dist/cjs/addressAggregator/adapters/file.js.map +1 -1
  13. package/dist/cjs/addressAggregator/adapters/risklabs.d.ts +5 -9
  14. package/dist/cjs/addressAggregator/adapters/risklabs.js +18 -14
  15. package/dist/cjs/addressAggregator/adapters/risklabs.js.map +1 -1
  16. package/dist/cjs/addressAggregator/index.js +2 -2
  17. package/dist/cjs/addressAggregator/index.js.map +1 -1
  18. package/dist/cjs/addressAggregator/types.d.ts +9 -1
  19. package/dist/cjs/addressAggregator/types.js.map +1 -1
  20. package/dist/cjs/arch/evm/SpokeUtils.d.ts +15 -0
  21. package/dist/cjs/arch/evm/SpokeUtils.js +312 -0
  22. package/dist/cjs/arch/evm/SpokeUtils.js.map +1 -0
  23. package/dist/cjs/arch/evm/index.d.ts +1 -1
  24. package/dist/cjs/arch/evm/index.js +2 -2
  25. package/dist/cjs/arch/evm/index.js.map +1 -1
  26. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +3 -2
  27. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  28. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +8 -8
  29. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -2
  30. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +11 -8
  31. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  32. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.d.ts +2 -1
  33. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  34. package/dist/cjs/constants.d.ts +1 -0
  35. package/dist/cjs/constants.js +13 -1
  36. package/dist/cjs/constants.js.map +1 -1
  37. package/dist/cjs/index.d.ts +1 -0
  38. package/dist/cjs/index.js +2 -1
  39. package/dist/cjs/index.js.map +1 -1
  40. package/dist/cjs/providers/types.d.ts +2 -2
  41. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +2 -1
  42. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  43. package/dist/cjs/utils/DepositUtils.js +1 -1
  44. package/dist/cjs/utils/DepositUtils.js.map +1 -1
  45. package/dist/cjs/utils/SpokeUtils.d.ts +2 -14
  46. package/dist/cjs/utils/SpokeUtils.js +8 -313
  47. package/dist/cjs/utils/SpokeUtils.js.map +1 -1
  48. package/dist/cjs/utils/TokenUtils.d.ts +1 -0
  49. package/dist/cjs/utils/TokenUtils.js +5 -1
  50. package/dist/cjs/utils/TokenUtils.js.map +1 -1
  51. package/dist/esm/addressAggregator/adapters/abstract.d.ts +15 -0
  52. package/dist/esm/addressAggregator/adapters/abstract.js +80 -0
  53. package/dist/esm/addressAggregator/adapters/abstract.js.map +1 -0
  54. package/dist/esm/addressAggregator/adapters/bybit.d.ts +5 -9
  55. package/dist/esm/addressAggregator/adapters/bybit.js +12 -13
  56. package/dist/esm/addressAggregator/adapters/bybit.js.map +1 -1
  57. package/dist/esm/addressAggregator/adapters/env.d.ts +5 -7
  58. package/dist/esm/addressAggregator/adapters/env.js +12 -11
  59. package/dist/esm/addressAggregator/adapters/env.js.map +1 -1
  60. package/dist/esm/addressAggregator/adapters/file.d.ts +5 -7
  61. package/dist/esm/addressAggregator/adapters/file.js +14 -13
  62. package/dist/esm/addressAggregator/adapters/file.js.map +1 -1
  63. package/dist/esm/addressAggregator/adapters/risklabs.d.ts +5 -9
  64. package/dist/esm/addressAggregator/adapters/risklabs.js +19 -15
  65. package/dist/esm/addressAggregator/adapters/risklabs.js.map +1 -1
  66. package/dist/esm/addressAggregator/index.js +2 -2
  67. package/dist/esm/addressAggregator/index.js.map +1 -1
  68. package/dist/esm/addressAggregator/types.d.ts +9 -1
  69. package/dist/esm/addressAggregator/types.js.map +1 -1
  70. package/dist/esm/arch/evm/SpokeUtils.d.ts +58 -0
  71. package/dist/esm/arch/evm/SpokeUtils.js +345 -0
  72. package/dist/esm/arch/evm/SpokeUtils.js.map +1 -0
  73. package/dist/esm/arch/evm/index.d.ts +1 -1
  74. package/dist/esm/arch/evm/index.js +1 -1
  75. package/dist/esm/arch/evm/index.js.map +1 -1
  76. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +3 -2
  77. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  78. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +8 -8
  79. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -2
  80. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +7 -4
  81. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  82. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.d.ts +9 -1
  83. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  84. package/dist/esm/constants.d.ts +1 -0
  85. package/dist/esm/constants.js +12 -0
  86. package/dist/esm/constants.js.map +1 -1
  87. package/dist/esm/index.d.ts +1 -0
  88. package/dist/esm/index.js +2 -0
  89. package/dist/esm/index.js.map +1 -1
  90. package/dist/esm/providers/types.d.ts +2 -2
  91. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +2 -1
  92. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  93. package/dist/esm/utils/DepositUtils.js +2 -1
  94. package/dist/esm/utils/DepositUtils.js.map +1 -1
  95. package/dist/esm/utils/SpokeUtils.d.ts +5 -55
  96. package/dist/esm/utils/SpokeUtils.js +11 -348
  97. package/dist/esm/utils/SpokeUtils.js.map +1 -1
  98. package/dist/esm/utils/TokenUtils.d.ts +1 -0
  99. package/dist/esm/utils/TokenUtils.js +3 -0
  100. package/dist/esm/utils/TokenUtils.js.map +1 -1
  101. package/dist/types/addressAggregator/adapters/abstract.d.ts +16 -0
  102. package/dist/types/addressAggregator/adapters/abstract.d.ts.map +1 -0
  103. package/dist/types/addressAggregator/adapters/bybit.d.ts +5 -9
  104. package/dist/types/addressAggregator/adapters/bybit.d.ts.map +1 -1
  105. package/dist/types/addressAggregator/adapters/env.d.ts +5 -7
  106. package/dist/types/addressAggregator/adapters/env.d.ts.map +1 -1
  107. package/dist/types/addressAggregator/adapters/file.d.ts +5 -7
  108. package/dist/types/addressAggregator/adapters/file.d.ts.map +1 -1
  109. package/dist/types/addressAggregator/adapters/risklabs.d.ts +5 -9
  110. package/dist/types/addressAggregator/adapters/risklabs.d.ts.map +1 -1
  111. package/dist/types/addressAggregator/types.d.ts +9 -1
  112. package/dist/types/addressAggregator/types.d.ts.map +1 -1
  113. package/dist/types/arch/evm/SpokeUtils.d.ts +59 -0
  114. package/dist/types/arch/evm/SpokeUtils.d.ts.map +1 -0
  115. package/dist/types/arch/evm/index.d.ts +1 -1
  116. package/dist/types/arch/evm/index.d.ts.map +1 -1
  117. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  118. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +8 -8
  119. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -2
  120. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts.map +1 -1
  121. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts +9 -1
  122. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -1
  123. package/dist/types/constants.d.ts +1 -0
  124. package/dist/types/constants.d.ts.map +1 -1
  125. package/dist/types/index.d.ts +1 -0
  126. package/dist/types/index.d.ts.map +1 -1
  127. package/dist/types/providers/types.d.ts +2 -2
  128. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
  129. package/dist/types/utils/DepositUtils.d.ts.map +1 -1
  130. package/dist/types/utils/SpokeUtils.d.ts +5 -55
  131. package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
  132. package/dist/types/utils/TokenUtils.d.ts +1 -0
  133. package/dist/types/utils/TokenUtils.d.ts.map +1 -1
  134. package/package.json +1 -1
  135. package/src/addressAggregator/adapters/abstract.ts +74 -0
  136. package/src/addressAggregator/adapters/bybit.ts +10 -11
  137. package/src/addressAggregator/adapters/env.ts +10 -10
  138. package/src/addressAggregator/adapters/file.ts +11 -12
  139. package/src/addressAggregator/adapters/risklabs.ts +14 -13
  140. package/src/addressAggregator/index.ts +2 -2
  141. package/src/addressAggregator/types.ts +10 -1
  142. package/src/arch/evm/SpokeUtils.ts +324 -0
  143. package/src/arch/evm/index.ts +1 -1
  144. package/src/clients/BundleDataClient/BundleDataClient.ts +2 -3
  145. package/src/clients/SpokePoolClient/EVMSpokePoolClient.ts +27 -16
  146. package/src/clients/SpokePoolClient/SpokePoolClient.ts +13 -5
  147. package/src/constants.ts +13 -0
  148. package/src/index.ts +1 -0
  149. package/src/relayFeeCalculator/chain-queries/baseQuery.ts +1 -1
  150. package/src/utils/DepositUtils.ts +2 -1
  151. package/src/utils/SpokeUtils.ts +16 -314
  152. package/src/utils/TokenUtils.ts +6 -0
  153. package/dist/cjs/addressAggregator/adapters/util.d.ts +0 -4
  154. package/dist/cjs/addressAggregator/adapters/util.js +0 -66
  155. package/dist/cjs/addressAggregator/adapters/util.js.map +0 -1
  156. package/dist/esm/addressAggregator/adapters/util.d.ts +0 -4
  157. package/dist/esm/addressAggregator/adapters/util.js +0 -60
  158. package/dist/esm/addressAggregator/adapters/util.js.map +0 -1
  159. package/dist/types/addressAggregator/adapters/util.d.ts +0 -5
  160. package/dist/types/addressAggregator/adapters/util.d.ts.map +0 -1
  161. package/src/addressAggregator/adapters/util.ts +0 -47
@@ -1,22 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMessageHash = exports.isZeroAddress = exports.findFillEvent = exports.findFillBlock = exports.fillStatusArray = exports.relayFillStatus = exports.isUnsafeDepositId = exports.findDepositBlock = exports.getRelayHashFromEvent = exports.getRelayDataHash = exports.getDepositIdAtBlock = exports.getMaxFillDeadlineInRange = exports.getTimestampForBlock = exports.getTimeAt = exports.populateV3Relay = void 0;
3
+ exports.getMessageHash = exports.isZeroAddress = exports.isUnsafeDepositId = exports.getRelayHashFromEvent = exports.getRelayDataHash = exports.getDepositRelayData = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var assert_1 = tslib_1.__importDefault(require("assert"));
6
5
  var ethers_1 = require("ethers");
7
6
  var constants_1 = require("../constants");
8
- var interfaces_1 = require("../interfaces");
9
- var ArrayUtils_1 = require("./ArrayUtils");
10
- var BigNumberUtils_1 = require("./BigNumberUtils");
7
+ var AddressUtils_1 = require("./AddressUtils");
11
8
  var common_1 = require("./common");
9
+ var BigNumberUtils_1 = require("./BigNumberUtils");
12
10
  var DepositUtils_1 = require("./DepositUtils");
13
- var TypeGuards_1 = require("./TypeGuards");
14
- var NetworkUtils_1 = require("./NetworkUtils");
15
- var EventUtils_1 = require("./EventUtils");
16
- var AddressUtils_1 = require("./AddressUtils");
17
- function populateV3Relay(spokePool, deposit, relayer, repaymentChainId) {
18
- if (repaymentChainId === void 0) { repaymentChainId = deposit.destinationChainId; }
19
- var v3RelayData = {
11
+ function getDepositRelayData(deposit) {
12
+ return {
20
13
  depositor: (0, AddressUtils_1.toBytes32)(deposit.depositor),
21
14
  recipient: (0, AddressUtils_1.toBytes32)(deposit.recipient),
22
15
  exclusiveRelayer: (0, AddressUtils_1.toBytes32)(deposit.exclusiveRelayer),
@@ -30,82 +23,11 @@ function populateV3Relay(spokePool, deposit, relayer, repaymentChainId) {
30
23
  exclusivityDeadline: deposit.exclusivityDeadline,
31
24
  message: deposit.message,
32
25
  };
33
- if ((0, TypeGuards_1.isDefined)(deposit.speedUpSignature)) {
34
- (0, assert_1.default)((0, TypeGuards_1.isDefined)(deposit.updatedRecipient) && !isZeroAddress(deposit.updatedRecipient));
35
- (0, assert_1.default)((0, TypeGuards_1.isDefined)(deposit.updatedOutputAmount));
36
- (0, assert_1.default)((0, TypeGuards_1.isDefined)(deposit.updatedMessage));
37
- return spokePool.populateTransaction.fillRelayWithUpdatedDeposit(v3RelayData, repaymentChainId, (0, AddressUtils_1.toBytes32)(relayer), deposit.updatedOutputAmount, (0, AddressUtils_1.toBytes32)(deposit.updatedRecipient), deposit.updatedMessage, deposit.speedUpSignature, { from: relayer });
38
- }
39
- return spokePool.populateTransaction.fillRelay(v3RelayData, repaymentChainId, (0, AddressUtils_1.toBytes32)(relayer), { from: relayer });
40
- }
41
- exports.populateV3Relay = populateV3Relay;
42
- function getTimeAt(spokePool, blockNumber) {
43
- return tslib_1.__awaiter(this, void 0, void 0, function () {
44
- var currentTime;
45
- return tslib_1.__generator(this, function (_a) {
46
- switch (_a.label) {
47
- case 0: return [4, spokePool.getCurrentTime({ blockTag: blockNumber })];
48
- case 1:
49
- currentTime = _a.sent();
50
- (0, assert_1.default)(BigNumberUtils_1.BigNumber.isBigNumber(currentTime) && currentTime.lt(BigNumberUtils_1.bnUint32Max));
51
- return [2, currentTime.toNumber()];
52
- }
53
- });
54
- });
55
- }
56
- exports.getTimeAt = getTimeAt;
57
- function getTimestampForBlock(provider, blockNumber) {
58
- return tslib_1.__awaiter(this, void 0, void 0, function () {
59
- var block;
60
- return tslib_1.__generator(this, function (_a) {
61
- switch (_a.label) {
62
- case 0: return [4, provider.getBlock(blockNumber)];
63
- case 1:
64
- block = _a.sent();
65
- return [2, block.timestamp];
66
- }
67
- });
68
- });
69
- }
70
- exports.getTimestampForBlock = getTimestampForBlock;
71
- function getMaxFillDeadlineInRange(spokePool, startBlock, endBlock) {
72
- return tslib_1.__awaiter(this, void 0, void 0, function () {
73
- var fillDeadlineBuffers;
74
- return tslib_1.__generator(this, function (_a) {
75
- switch (_a.label) {
76
- case 0: return [4, Promise.all([
77
- spokePool.fillDeadlineBuffer({ blockTag: startBlock }),
78
- spokePool.fillDeadlineBuffer({ blockTag: endBlock }),
79
- ])];
80
- case 1:
81
- fillDeadlineBuffers = _a.sent();
82
- return [2, Math.max(fillDeadlineBuffers[0], fillDeadlineBuffers[1])];
83
- }
84
- });
85
- });
86
26
  }
87
- exports.getMaxFillDeadlineInRange = getMaxFillDeadlineInRange;
88
- function getDepositIdAtBlock(contract, blockTag) {
89
- return tslib_1.__awaiter(this, void 0, void 0, function () {
90
- var _depositIdAtBlock, depositIdAtBlock;
91
- return tslib_1.__generator(this, function (_a) {
92
- switch (_a.label) {
93
- case 0: return [4, contract.numberOfDeposits({ blockTag: blockTag })];
94
- case 1:
95
- _depositIdAtBlock = _a.sent();
96
- depositIdAtBlock = (0, BigNumberUtils_1.toBN)(_depositIdAtBlock);
97
- if (depositIdAtBlock.lt(BigNumberUtils_1.bnZero)) {
98
- throw new Error("Invalid deposit count");
99
- }
100
- return [2, depositIdAtBlock];
101
- }
102
- });
103
- });
104
- }
105
- exports.getDepositIdAtBlock = getDepositIdAtBlock;
27
+ exports.getDepositRelayData = getDepositRelayData;
106
28
  function getRelayDataHash(relayData, destinationChainId) {
107
- var _relayData = tslib_1.__assign(tslib_1.__assign({}, relayData), { depositor: ethers_1.utils.hexZeroPad(relayData.depositor, 32), recipient: ethers_1.utils.hexZeroPad(relayData.recipient, 32), inputToken: ethers_1.utils.hexZeroPad(relayData.inputToken, 32), outputToken: ethers_1.utils.hexZeroPad(relayData.outputToken, 32), exclusiveRelayer: ethers_1.utils.hexZeroPad(relayData.exclusiveRelayer, 32) });
108
- return ethers_1.utils.keccak256(ethers_1.utils.defaultAbiCoder.encode([
29
+ var _relayData = tslib_1.__assign(tslib_1.__assign({}, relayData), { depositor: (0, AddressUtils_1.toBytes32)(relayData.depositor), recipient: (0, AddressUtils_1.toBytes32)(relayData.recipient), inputToken: (0, AddressUtils_1.toBytes32)(relayData.inputToken), outputToken: (0, AddressUtils_1.toBytes32)(relayData.outputToken), exclusiveRelayer: (0, AddressUtils_1.toBytes32)(relayData.exclusiveRelayer) });
30
+ return (0, common_1.keccak256)(ethers_1.utils.defaultAbiCoder.encode([
109
31
  "tuple(" +
110
32
  "bytes32 depositor," +
111
33
  "bytes32 recipient," +
@@ -128,238 +50,11 @@ function getRelayHashFromEvent(e) {
128
50
  return getRelayDataHash(e, e.destinationChainId);
129
51
  }
130
52
  exports.getRelayHashFromEvent = getRelayHashFromEvent;
131
- function findDepositBlock(spokePool, depositId, lowBlock, highBlock) {
132
- return tslib_1.__awaiter(this, void 0, void 0, function () {
133
- var _a, _b, nDepositsLow, nDepositsHigh, midBlock, nDeposits, _c;
134
- return tslib_1.__generator(this, function (_d) {
135
- switch (_d.label) {
136
- case 0:
137
- if (isUnsafeDepositId(depositId)) {
138
- throw new Error("Cannot binary search for depositId ".concat(depositId));
139
- }
140
- if (!(highBlock !== null && highBlock !== void 0)) return [3, 1];
141
- _a = highBlock;
142
- return [3, 3];
143
- case 1: return [4, spokePool.provider.getBlockNumber()];
144
- case 2:
145
- _a = (highBlock = _d.sent());
146
- _d.label = 3;
147
- case 3:
148
- _a;
149
- (0, assert_1.default)(highBlock > lowBlock, "Block numbers out of range (".concat(lowBlock, " >= ").concat(highBlock, ")"));
150
- return [4, Promise.all([
151
- spokePool.numberOfDeposits({ blockTag: lowBlock }),
152
- spokePool.numberOfDeposits({ blockTag: highBlock }),
153
- ])];
154
- case 4:
155
- _b = (_d.sent()).map(function (n) { return (0, BigNumberUtils_1.toBN)(n); }), nDepositsLow = _b[0], nDepositsHigh = _b[1];
156
- if (nDepositsLow.gt(depositId) || nDepositsHigh.lte(depositId)) {
157
- return [2, undefined];
158
- }
159
- _d.label = 5;
160
- case 5:
161
- midBlock = Math.floor((highBlock + lowBlock) / 2);
162
- _c = BigNumberUtils_1.toBN;
163
- return [4, spokePool.numberOfDeposits({ blockTag: midBlock })];
164
- case 6:
165
- nDeposits = _c.apply(void 0, [_d.sent()]);
166
- if (nDeposits.gt(depositId)) {
167
- highBlock = midBlock;
168
- }
169
- else {
170
- lowBlock = midBlock + 1;
171
- }
172
- _d.label = 7;
173
- case 7:
174
- if (lowBlock < highBlock) return [3, 5];
175
- _d.label = 8;
176
- case 8: return [2, lowBlock];
177
- }
178
- });
179
- });
180
- }
181
- exports.findDepositBlock = findDepositBlock;
182
53
  function isUnsafeDepositId(depositId) {
183
54
  var maxSafeDepositId = BigNumberUtils_1.BigNumber.from(constants_1.MAX_SAFE_DEPOSIT_ID);
184
55
  return maxSafeDepositId.lt(depositId);
185
56
  }
186
57
  exports.isUnsafeDepositId = isUnsafeDepositId;
187
- function relayFillStatus(spokePool, relayData, blockTag, destinationChainId) {
188
- return tslib_1.__awaiter(this, void 0, void 0, function () {
189
- var _a, hash, _fillStatus, fillStatus, originChainId, depositId;
190
- return tslib_1.__generator(this, function (_b) {
191
- switch (_b.label) {
192
- case 0:
193
- if (!(destinationChainId !== null && destinationChainId !== void 0)) return [3, 1];
194
- _a = destinationChainId;
195
- return [3, 3];
196
- case 1: return [4, spokePool.chainId()];
197
- case 2:
198
- _a = (destinationChainId = _b.sent());
199
- _b.label = 3;
200
- case 3:
201
- _a;
202
- (0, assert_1.default)((0, TypeGuards_1.isDefined)(destinationChainId));
203
- hash = getRelayDataHash(relayData, destinationChainId);
204
- return [4, spokePool.fillStatuses(hash, { blockTag: blockTag })];
205
- case 4:
206
- _fillStatus = _b.sent();
207
- fillStatus = Number(_fillStatus);
208
- if (![interfaces_1.FillStatus.Unfilled, interfaces_1.FillStatus.RequestedSlowFill, interfaces_1.FillStatus.Filled].includes(fillStatus)) {
209
- originChainId = relayData.originChainId, depositId = relayData.depositId;
210
- throw new Error("relayFillStatus: Unexpected fillStatus for ".concat(originChainId, " deposit ").concat(depositId.toString(), " (").concat(fillStatus, ")"));
211
- }
212
- return [2, fillStatus];
213
- }
214
- });
215
- });
216
- }
217
- exports.relayFillStatus = relayFillStatus;
218
- function fillStatusArray(spokePool, relayData, blockTag) {
219
- if (blockTag === void 0) { blockTag = "latest"; }
220
- return tslib_1.__awaiter(this, void 0, void 0, function () {
221
- var fillStatuses, destinationChainId, queries, chunkSize, chunkedQueries, multicalls, status, bnUnfilled, bnFilled;
222
- return tslib_1.__generator(this, function (_a) {
223
- switch (_a.label) {
224
- case 0:
225
- fillStatuses = "fillStatuses";
226
- return [4, spokePool.chainId()];
227
- case 1:
228
- destinationChainId = _a.sent();
229
- queries = relayData.map(function (relayData) {
230
- var hash = getRelayDataHash(relayData, destinationChainId);
231
- return spokePool.interface.encodeFunctionData(fillStatuses, [hash]);
232
- });
233
- chunkSize = 250;
234
- chunkedQueries = (0, ArrayUtils_1.chunk)(queries, chunkSize);
235
- return [4, Promise.all(chunkedQueries.map(function (queries) { return spokePool.callStatic.multicall(queries, { blockTag: blockTag }); }))];
236
- case 2:
237
- multicalls = _a.sent();
238
- status = multicalls
239
- .map(function (multicall) {
240
- return multicall.map(function (result) { return spokePool.interface.decodeFunctionResult(fillStatuses, result)[0]; });
241
- })
242
- .flat();
243
- bnUnfilled = (0, BigNumberUtils_1.toBN)(interfaces_1.FillStatus.Unfilled);
244
- bnFilled = (0, BigNumberUtils_1.toBN)(interfaces_1.FillStatus.Filled);
245
- return [2, status.map(function (status) {
246
- return BigNumberUtils_1.BigNumber.isBigNumber(status) && status.gte(bnUnfilled) && status.lte(bnFilled)
247
- ? status.toNumber()
248
- : undefined;
249
- })];
250
- }
251
- });
252
- });
253
- }
254
- exports.fillStatusArray = fillStatusArray;
255
- function findFillBlock(spokePool, relayData, lowBlockNumber, highBlockNumber) {
256
- return tslib_1.__awaiter(this, void 0, void 0, function () {
257
- var provider, _a, destinationChainId, _b, _c, _d, initialFillStatus, finalFillStatus, depositId, originChainId, _e, srcChain, dstChain, midBlockNumber, fillStatus;
258
- return tslib_1.__generator(this, function (_f) {
259
- switch (_f.label) {
260
- case 0:
261
- provider = spokePool.provider;
262
- if (!(highBlockNumber !== null && highBlockNumber !== void 0)) return [3, 1];
263
- _a = highBlockNumber;
264
- return [3, 3];
265
- case 1: return [4, provider.getBlockNumber()];
266
- case 2:
267
- _a = (highBlockNumber = _f.sent());
268
- _f.label = 3;
269
- case 3:
270
- _a;
271
- (0, assert_1.default)(highBlockNumber > lowBlockNumber, "Block numbers out of range (".concat(lowBlockNumber, " >= ").concat(highBlockNumber, ")"));
272
- if (!Object.values(constants_1.CHAIN_IDs).includes(relayData.originChainId)) return [3, 5];
273
- return [4, provider.getNetwork()];
274
- case 4:
275
- _b = (_f.sent()).chainId;
276
- return [3, 7];
277
- case 5:
278
- _c = Number;
279
- return [4, spokePool.chainId()];
280
- case 6:
281
- _b = _c.apply(void 0, [_f.sent()]);
282
- _f.label = 7;
283
- case 7:
284
- destinationChainId = _b;
285
- (0, assert_1.default)(relayData.originChainId !== destinationChainId, "Origin & destination chain IDs must not be equal (".concat(destinationChainId, ")"));
286
- return [4, Promise.all([
287
- relayFillStatus(spokePool, relayData, lowBlockNumber, destinationChainId),
288
- relayFillStatus(spokePool, relayData, highBlockNumber, destinationChainId),
289
- ])];
290
- case 8:
291
- _d = (_f.sent()).map(Number), initialFillStatus = _d[0], finalFillStatus = _d[1];
292
- if (finalFillStatus !== interfaces_1.FillStatus.Filled) {
293
- return [2, undefined];
294
- }
295
- if (initialFillStatus === interfaces_1.FillStatus.Filled) {
296
- depositId = relayData.depositId, originChainId = relayData.originChainId;
297
- _e = [(0, NetworkUtils_1.getNetworkName)(originChainId), (0, NetworkUtils_1.getNetworkName)(destinationChainId)], srcChain = _e[0], dstChain = _e[1];
298
- throw new Error("".concat(srcChain, " deposit ").concat(depositId.toString(), " filled on ").concat(dstChain, " before block ").concat(lowBlockNumber));
299
- }
300
- _f.label = 9;
301
- case 9:
302
- midBlockNumber = Math.floor((highBlockNumber + lowBlockNumber) / 2);
303
- return [4, relayFillStatus(spokePool, relayData, midBlockNumber, destinationChainId)];
304
- case 10:
305
- fillStatus = _f.sent();
306
- if (fillStatus === interfaces_1.FillStatus.Filled) {
307
- highBlockNumber = midBlockNumber;
308
- }
309
- else {
310
- lowBlockNumber = midBlockNumber + 1;
311
- }
312
- _f.label = 11;
313
- case 11:
314
- if (lowBlockNumber < highBlockNumber) return [3, 9];
315
- _f.label = 12;
316
- case 12: return [2, lowBlockNumber];
317
- }
318
- });
319
- });
320
- }
321
- exports.findFillBlock = findFillBlock;
322
- function findFillEvent(spokePool, relayData, lowBlockNumber, highBlockNumber) {
323
- return tslib_1.__awaiter(this, void 0, void 0, function () {
324
- var blockNumber, maxBlockLookBack, _a, fromBlock, toBlock, query, event, destinationChainId, _b, _c, fill;
325
- return tslib_1.__generator(this, function (_d) {
326
- switch (_d.label) {
327
- case 0: return [4, findFillBlock(spokePool, relayData, lowBlockNumber, highBlockNumber)];
328
- case 1:
329
- blockNumber = _d.sent();
330
- if (!blockNumber)
331
- return [2, undefined];
332
- maxBlockLookBack = 0;
333
- _a = [blockNumber, blockNumber], fromBlock = _a[0], toBlock = _a[1];
334
- return [4, Promise.all([
335
- (0, EventUtils_1.paginatedEventQuery)(spokePool, spokePool.filters.FilledRelay(null, null, null, null, null, relayData.originChainId, relayData.depositId), { fromBlock: fromBlock, toBlock: toBlock, maxBlockLookBack: maxBlockLookBack }),
336
- (0, EventUtils_1.paginatedEventQuery)(spokePool, spokePool.filters.FilledV3Relay(null, null, null, null, null, relayData.originChainId, relayData.depositId), { fromBlock: fromBlock, toBlock: toBlock, maxBlockLookBack: maxBlockLookBack }),
337
- ])];
338
- case 2:
339
- query = (_d.sent()).flat();
340
- if (query.length === 0)
341
- throw new Error("Failed to find fill event at block ".concat(blockNumber));
342
- event = query[0];
343
- if (!Object.values(constants_1.CHAIN_IDs).includes(relayData.originChainId)) return [3, 4];
344
- return [4, spokePool.provider.getNetwork()];
345
- case 3:
346
- _b = (_d.sent()).chainId;
347
- return [3, 6];
348
- case 4:
349
- _c = Number;
350
- return [4, spokePool.chainId()];
351
- case 5:
352
- _b = _c.apply(void 0, [_d.sent()]);
353
- _d.label = 6;
354
- case 6:
355
- destinationChainId = _b;
356
- fill = tslib_1.__assign(tslib_1.__assign({}, (0, EventUtils_1.spreadEventWithBlockNumber)(event)), { destinationChainId: destinationChainId, messageHash: getMessageHash(event.args.message) });
357
- return [2, fill];
358
- }
359
- });
360
- });
361
- }
362
- exports.findFillEvent = findFillEvent;
363
58
  function isZeroAddress(address) {
364
59
  return address === constants_1.ZERO_ADDRESS || address === constants_1.ZERO_BYTES;
365
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":";;;;AAAA,iCAA8C;AAC9C,0CAA6E;AAE7E,+CAA2C;AAC3C,mCAAqC;AACrC,mDAA6C;AAC7C,+CAAgD;AAOhD,SAAgB,mBAAmB,CAAC,OAAqC;IACvE,OAAO;QACL,SAAS,EAAE,IAAA,wBAAS,EAAC,OAAO,CAAC,SAAS,CAAC;QACvC,SAAS,EAAE,IAAA,wBAAS,EAAC,OAAO,CAAC,SAAS,CAAC;QACvC,gBAAgB,EAAE,IAAA,wBAAS,EAAC,OAAO,CAAC,gBAAgB,CAAC;QACrD,UAAU,EAAE,IAAA,wBAAS,EAAC,OAAO,CAAC,UAAU,CAAC;QACzC,WAAW,EAAE,IAAA,wBAAS,EAAC,OAAO,CAAC,WAAW,CAAC;QAC3C,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC;AACJ,CAAC;AAfD,kDAeC;AAQD,SAAgB,gBAAgB,CAAC,SAAoB,EAAE,kBAA0B;IAC/E,IAAM,UAAU,yCACX,SAAS,KACZ,SAAS,EAAE,IAAA,wBAAS,EAAC,SAAS,CAAC,SAAS,CAAC,EACzC,SAAS,EAAE,IAAA,wBAAS,EAAC,SAAS,CAAC,SAAS,CAAC,EACzC,UAAU,EAAE,IAAA,wBAAS,EAAC,SAAS,CAAC,UAAU,CAAC,EAC3C,WAAW,EAAE,IAAA,wBAAS,EAAC,SAAS,CAAC,WAAW,CAAC,EAC7C,gBAAgB,EAAE,IAAA,wBAAS,EAAC,SAAS,CAAC,gBAAgB,CAAC,GACxD,CAAC;IACF,OAAO,IAAA,kBAAS,EACd,cAAW,CAAC,eAAe,CAAC,MAAM,CAChC;QACE,QAAQ;YACN,oBAAoB;YACpB,oBAAoB;YACpB,2BAA2B;YAC3B,qBAAqB;YACrB,sBAAsB;YACtB,sBAAsB;YACtB,uBAAuB;YACvB,wBAAwB;YACxB,oBAAoB;YACpB,sBAAsB;YACtB,6BAA6B;YAC7B,eAAe;YACf,GAAG;QACL,4BAA4B;KAC7B,EACD,CAAC,UAAU,EAAE,kBAAkB,CAAC,CACjC,CACF,CAAC;AACJ,CAAC;AA/BD,4CA+BC;AAED,SAAgB,qBAAqB,CAAC,CAA6C;IACjF,OAAO,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACnD,CAAC;AAFD,sDAEC;AAED,SAAgB,iBAAiB,CAAC,SAAoB;IAMpD,IAAM,gBAAgB,GAAG,0BAAS,CAAC,IAAI,CAAC,+BAAmB,CAAC,CAAC;IAC7D,OAAO,gBAAgB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC;AARD,8CAQC;AAGD,SAAgB,aAAa,CAAC,OAAe;IAC3C,OAAO,OAAO,KAAK,wBAAY,IAAI,OAAO,KAAK,sBAAU,CAAC;AAC5D,CAAC;AAFD,sCAEC;AAED,SAAgB,cAAc,CAAC,OAAe;IAC5C,OAAO,IAAA,6BAAc,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,sBAAU,CAAC,CAAC,CAAC,IAAA,kBAAS,EAAC,OAAO,CAAC,CAAC;AACnE,CAAC;AAFD,wCAEC"}
@@ -651,6 +651,7 @@ export declare function getTokenInformationFromAddress(address: string, tokenMap
651
651
  export declare function getCoingeckoTokenIdByAddress(contractAddress: string): string;
652
652
  export declare function getTokenBalance(address: string, tokenAddress: string, signerOrProvider: SignerOrProvider, blockTag?: BlockTag): Promise<BigNumber>;
653
653
  export declare function isBridgedUsdc(tokenSymbol: string): boolean;
654
+ export declare function isStablecoin(tokenSymbol: string): boolean;
654
655
  export declare function getTokenInfo(l2TokenAddress: string, chainId: number): L1Token;
655
656
  export declare function getUsdcSymbol(l2Token: string, chainId: number): string | undefined;
656
657
  export declare function getL1TokenInfo(l2TokenAddress: string, chainId: number): L1Token;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getL1TokenInfo = exports.getUsdcSymbol = exports.getTokenInfo = exports.isBridgedUsdc = exports.getTokenBalance = exports.getCoingeckoTokenIdByAddress = exports.getTokenInformationFromAddress = exports.resolveContractFromSymbol = exports.resolveSymbolOnChain = exports.getL2TokenAddresses = exports.fetchTokenInfo = void 0;
3
+ exports.getL1TokenInfo = exports.getUsdcSymbol = exports.getTokenInfo = exports.isStablecoin = exports.isBridgedUsdc = exports.getTokenBalance = exports.getCoingeckoTokenIdByAddress = exports.getTokenInformationFromAddress = exports.resolveContractFromSymbol = exports.resolveSymbolOnChain = exports.getL2TokenAddresses = exports.fetchTokenInfo = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var ethers_1 = require("ethers");
6
6
  var constants = tslib_1.__importStar(require("../constants"));
@@ -84,6 +84,10 @@ function isBridgedUsdc(tokenSymbol) {
84
84
  return !!constants.BRIDGED_USDC_SYMBOLS.find(function (bridgedUsdcSymbol) { return bridgedUsdcSymbol.toLowerCase() === tokenSymbol.toLowerCase(); });
85
85
  }
86
86
  exports.isBridgedUsdc = isBridgedUsdc;
87
+ function isStablecoin(tokenSymbol) {
88
+ return constants.STABLE_COIN_SYMBOLS.some(function (stablecoinSymbol) { return stablecoinSymbol.toLowerCase() === tokenSymbol.toLowerCase(); });
89
+ }
90
+ exports.isStablecoin = isStablecoin;
87
91
  function getTokenInfo(l2TokenAddress, chainId) {
88
92
  var tokenObject = Object.values(TOKEN_SYMBOLS_MAP).find(function (_a) {
89
93
  var addresses = _a.addresses;
@@ -1 +1 @@
1
- {"version":3,"file":"TokenUtils.js","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TokenUtils.js","sourceRoot":"","sources":["../../../src/utils/TokenUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { AdapterOptions, AddressListAdapter } from "../types";
2
+ import { Logger } from "../../utils";
3
+ export declare abstract class AbstractAdapter implements AddressListAdapter {
4
+ readonly name: string;
5
+ readonly path: string;
6
+ readonly timeout: number;
7
+ readonly retries: number;
8
+ readonly throw: boolean;
9
+ readonly logger?: Logger;
10
+ constructor(name: string, path: string, opts?: Omit<AdapterOptions, "name" | "path">);
11
+ abstract update(logger?: Logger): Promise<string[]>;
12
+ protected sleep(ms: number): Promise<void>;
13
+ protected fetch(name: string, url: string, timeout?: number, retries?: number): Promise<unknown>;
14
+ protected error(error: unknown): Promise<string[]>;
15
+ }
@@ -0,0 +1,80 @@
1
+ import { __awaiter, __generator } from "tslib";
2
+ import axios from "axios";
3
+ var _a = process.env.ACROSS_USER_AGENT, ACROSS_USER_AGENT = _a === void 0 ? "across-protocol" : _a;
4
+ var AbstractAdapter = /** @class */ (function () {
5
+ function AbstractAdapter(name, path, opts) {
6
+ var _a, _b, _c;
7
+ this.name = name;
8
+ this.path = path;
9
+ this.timeout = (_a = opts === null || opts === void 0 ? void 0 : opts.timeout) !== null && _a !== void 0 ? _a : 2000;
10
+ this.retries = (_b = opts === null || opts === void 0 ? void 0 : opts.retries) !== null && _b !== void 0 ? _b : 1;
11
+ this.throw = (_c = opts === null || opts === void 0 ? void 0 : opts.throwOnError) !== null && _c !== void 0 ? _c : true;
12
+ this.logger = opts === null || opts === void 0 ? void 0 : opts.logger;
13
+ }
14
+ AbstractAdapter.prototype.sleep = function (ms) {
15
+ return new Promise(function (r) { return setTimeout(r, ms); });
16
+ };
17
+ AbstractAdapter.prototype.fetch = function (name, url, timeout, retries) {
18
+ if (timeout === void 0) { timeout = 2000; }
19
+ if (retries === void 0) { retries = 1; }
20
+ return __awaiter(this, void 0, void 0, function () {
21
+ var args, errs, tries, err_1, errMsg;
22
+ return __generator(this, function (_a) {
23
+ switch (_a.label) {
24
+ case 0:
25
+ args = {
26
+ headers: { "User-Agent": ACROSS_USER_AGENT },
27
+ timeout: timeout,
28
+ };
29
+ errs = [];
30
+ tries = 0;
31
+ _a.label = 1;
32
+ case 1:
33
+ _a.trys.push([1, 3, , 6]);
34
+ return [4 /*yield*/, axios(url, args)];
35
+ case 2: return [2 /*return*/, (_a.sent()).data];
36
+ case 3:
37
+ err_1 = _a.sent();
38
+ errMsg = axios.isAxiosError(err_1) || err_1 instanceof Error ? err_1.message : "unknown error";
39
+ errs.push(errMsg);
40
+ if (!(++tries <= retries)) return [3 /*break*/, 5];
41
+ return [4 /*yield*/, this.sleep(Math.pow(1.5, tries) * 1000)];
42
+ case 4:
43
+ _a.sent(); // simple backoff
44
+ _a.label = 5;
45
+ case 5: return [3 /*break*/, 6];
46
+ case 6:
47
+ if (tries <= retries) return [3 /*break*/, 1];
48
+ _a.label = 7;
49
+ case 7: throw new Error("".concat(name, " retrieval failure (").concat(errs.join(", "), ")"));
50
+ }
51
+ });
52
+ });
53
+ };
54
+ AbstractAdapter.prototype.error = function (error) {
55
+ var _a;
56
+ if (this.throw) {
57
+ throw error;
58
+ }
59
+ var reason;
60
+ if (error instanceof Error) {
61
+ reason = error.message;
62
+ }
63
+ else {
64
+ reason = typeof error === "string" ? error : "unknown error";
65
+ }
66
+ var _b = this, name = _b.name, path = _b.path, timeout = _b.timeout, retries = _b.retries;
67
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.warn({
68
+ at: "".concat(name, "::update"),
69
+ message: "Failed to read addresses from ".concat(name, "."),
70
+ reason: reason,
71
+ path: path,
72
+ retries: retries,
73
+ timeout: timeout,
74
+ });
75
+ return Promise.resolve([]);
76
+ };
77
+ return AbstractAdapter;
78
+ }());
79
+ export { AbstractAdapter };
80
+ //# sourceMappingURL=abstract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/abstract.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,6 @@
1
- import { AddressListAdapter } from "../types";
2
- import { Logger } from "./util";
3
- export declare class AddressList implements AddressListAdapter {
4
- readonly url: string;
5
- readonly timeout = 2000;
6
- readonly retries = 1;
7
- readonly name = "bybit";
8
- constructor(url?: string);
9
- update(logger?: Logger): Promise<string[]>;
1
+ import { AdapterOptions } from "../types";
2
+ import { AbstractAdapter } from "./abstract";
3
+ export declare class AddressList extends AbstractAdapter {
4
+ constructor(opts?: AdapterOptions);
5
+ update(): Promise<string[]>;
10
6
  }
@@ -1,6 +1,7 @@
1
- import { __awaiter, __generator, __spreadArray } from "tslib";
1
+ import { __awaiter, __extends, __generator, __spreadArray } from "tslib";
2
2
  import { array, defaulted, string, type } from "superstruct";
3
- import { logError, fetch } from "./util";
3
+ import { AbstractAdapter } from "./abstract";
4
+ var DEFAULT_NAME = "bybit";
4
5
  var DEFAULT_URL = "https://hackscan.hackbounty.io/public/hack-address.json";
5
6
  // This type is a bit message and unweildy. Additional fields representing new chains may be added without notification.
6
7
  var bybitResponse = type({
@@ -10,25 +11,23 @@ var bybitResponse = type({
10
11
  arbi: defaulted(array(string()), []),
11
12
  }),
12
13
  });
13
- var AddressList = /** @class */ (function () {
14
- function AddressList(url) {
15
- if (url === void 0) { url = DEFAULT_URL; }
16
- this.url = url;
17
- this.timeout = 2000; // ms
18
- this.retries = 1;
19
- this.name = "bybit";
14
+ var AddressList = /** @class */ (function (_super) {
15
+ __extends(AddressList, _super);
16
+ function AddressList(opts) {
17
+ var _a, _b;
18
+ return _super.call(this, (_a = opts === null || opts === void 0 ? void 0 : opts.name) !== null && _a !== void 0 ? _a : DEFAULT_NAME, (_b = opts === null || opts === void 0 ? void 0 : opts.path) !== null && _b !== void 0 ? _b : DEFAULT_URL, opts) || this;
20
19
  }
21
- AddressList.prototype.update = function (logger) {
20
+ AddressList.prototype.update = function () {
22
21
  return __awaiter(this, void 0, void 0, function () {
23
22
  var response;
24
23
  return __generator(this, function (_a) {
25
24
  switch (_a.label) {
26
- case 0: return [4 /*yield*/, fetch(this.name, this.url, this.timeout, this.retries)];
25
+ case 0: return [4 /*yield*/, this.fetch(this.name, this.path, this.timeout, this.retries)];
27
26
  case 1:
28
27
  response = _a.sent();
29
28
  if (!bybitResponse.is(response)) {
30
29
  // nb. don't log the response because it might be very large.
31
- return [2 /*return*/, logError(this.name, "Failed to validate response", logger)];
30
+ return [2 /*return*/, this.error("Failed to validate response")];
32
31
  }
33
32
  return [2 /*return*/, __spreadArray(__spreadArray(__spreadArray([], response["0221"].eth, true), response["0221"].bsc, true), response["0221"].arbi, true)];
34
33
  }
@@ -36,6 +35,6 @@ var AddressList = /** @class */ (function () {
36
35
  });
37
36
  };
38
37
  return AddressList;
39
- }());
38
+ }(AbstractAdapter));
40
39
  export { AddressList };
41
40
  //# sourceMappingURL=bybit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bybit.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/bybit.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAU,KAAK,EAAE,MAAM,QAAQ,CAAC;AAEjD,IAAM,WAAW,GAAG,yDAAyD,CAAC;AAE9E,wHAAwH;AACxH,IAAM,aAAa,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,IAAI,CAAC;QACX,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;KACrC,CAAC;CACH,CAAC,CAAC;AAEH;IAKE,qBAAqB,GAAiB;QAAjB,oBAAA,EAAA,iBAAiB;QAAjB,QAAG,GAAH,GAAG,CAAc;QAJ7B,YAAO,GAAG,IAAI,CAAC,CAAC,KAAK;QACrB,YAAO,GAAG,CAAC,CAAC;QACZ,SAAI,GAAG,OAAO,CAAC;IAEiB,CAAC;IAEpC,4BAAM,GAAZ,UAAa,MAAe;;;;;4BACT,qBAAM,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,EAAA;;wBAAvE,QAAQ,GAAG,SAA4D;wBAC7E,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE;4BAC/B,6DAA6D;4BAC7D,sBAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,6BAA6B,EAAE,MAAM,CAAC,EAAC;yBACnE;wBAED,oEAAW,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,SAAK,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,SAAK,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,SAAE;;;;KACrF;IACH,kBAAC;AAAD,CAAC,AAhBD,IAgBC"}
1
+ {"version":3,"file":"bybit.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/bybit.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,IAAM,YAAY,GAAG,OAAO,CAAC;AAC7B,IAAM,WAAW,GAAG,yDAAyD,CAAC;AAE9E,wHAAwH;AACxH,IAAM,aAAa,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,IAAI,CAAC;QACX,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;KACrC,CAAC;CACH,CAAC,CAAC;AAEH;IAAiC,+BAAe;IAC9C,qBAAY,IAAqB;;eAC/B,kBAAM,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,mCAAI,YAAY,EAAE,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,mCAAI,WAAW,EAAE,IAAI,CAAC;IACpE,CAAC;IAEK,4BAAM,GAAZ;;;;;4BACmB,qBAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,EAAA;;wBAA7E,QAAQ,GAAG,SAAkE;wBACnF,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE;4BAC/B,6DAA6D;4BAC7D,sBAAO,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,EAAC;yBAClD;wBAED,oEAAW,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,SAAK,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,SAAK,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,SAAE;;;;KACrF;IACH,kBAAC;AAAD,CAAC,AAdD,CAAiC,eAAe,GAc/C"}
@@ -1,8 +1,6 @@
1
- import { AddressListAdapter } from "../types";
2
- import { Logger } from "./util";
3
- export declare class AddressList implements AddressListAdapter {
4
- readonly envVar: string;
5
- readonly name = "process.env";
6
- constructor(envVar?: string);
7
- update(logger?: Logger): Promise<string[]>;
1
+ import { AdapterOptions } from "../types";
2
+ import { AbstractAdapter } from "./abstract";
3
+ export declare class AddressList extends AbstractAdapter {
4
+ constructor(opts?: AdapterOptions);
5
+ update(): Promise<string[]>;
8
6
  }