@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
@@ -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,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AbstractAdapter = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var axios_1 = tslib_1.__importDefault(require("axios"));
6
+ var _a = process.env.ACROSS_USER_AGENT, ACROSS_USER_AGENT = _a === void 0 ? "across-protocol" : _a;
7
+ var AbstractAdapter = (function () {
8
+ function AbstractAdapter(name, path, opts) {
9
+ var _a, _b, _c;
10
+ this.name = name;
11
+ this.path = path;
12
+ this.timeout = (_a = opts === null || opts === void 0 ? void 0 : opts.timeout) !== null && _a !== void 0 ? _a : 2000;
13
+ this.retries = (_b = opts === null || opts === void 0 ? void 0 : opts.retries) !== null && _b !== void 0 ? _b : 1;
14
+ this.throw = (_c = opts === null || opts === void 0 ? void 0 : opts.throwOnError) !== null && _c !== void 0 ? _c : true;
15
+ this.logger = opts === null || opts === void 0 ? void 0 : opts.logger;
16
+ }
17
+ AbstractAdapter.prototype.sleep = function (ms) {
18
+ return new Promise(function (r) { return setTimeout(r, ms); });
19
+ };
20
+ AbstractAdapter.prototype.fetch = function (name, url, timeout, retries) {
21
+ if (timeout === void 0) { timeout = 2000; }
22
+ if (retries === void 0) { retries = 1; }
23
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
24
+ var args, errs, tries, err_1, errMsg;
25
+ return tslib_1.__generator(this, function (_a) {
26
+ switch (_a.label) {
27
+ case 0:
28
+ args = {
29
+ headers: { "User-Agent": ACROSS_USER_AGENT },
30
+ timeout: timeout,
31
+ };
32
+ errs = [];
33
+ tries = 0;
34
+ _a.label = 1;
35
+ case 1:
36
+ _a.trys.push([1, 3, , 6]);
37
+ return [4, (0, axios_1.default)(url, args)];
38
+ case 2: return [2, (_a.sent()).data];
39
+ case 3:
40
+ err_1 = _a.sent();
41
+ errMsg = axios_1.default.isAxiosError(err_1) || err_1 instanceof Error ? err_1.message : "unknown error";
42
+ errs.push(errMsg);
43
+ if (!(++tries <= retries)) return [3, 5];
44
+ return [4, this.sleep(Math.pow(1.5, tries) * 1000)];
45
+ case 4:
46
+ _a.sent();
47
+ _a.label = 5;
48
+ case 5: return [3, 6];
49
+ case 6:
50
+ if (tries <= retries) return [3, 1];
51
+ _a.label = 7;
52
+ case 7: throw new Error("".concat(name, " retrieval failure (").concat(errs.join(", "), ")"));
53
+ }
54
+ });
55
+ });
56
+ };
57
+ AbstractAdapter.prototype.error = function (error) {
58
+ var _a;
59
+ if (this.throw) {
60
+ throw error;
61
+ }
62
+ var reason;
63
+ if (error instanceof Error) {
64
+ reason = error.message;
65
+ }
66
+ else {
67
+ reason = typeof error === "string" ? error : "unknown error";
68
+ }
69
+ var _b = this, name = _b.name, path = _b.path, timeout = _b.timeout, retries = _b.retries;
70
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.warn({
71
+ at: "".concat(name, "::update"),
72
+ message: "Failed to read addresses from ".concat(name, "."),
73
+ reason: reason,
74
+ path: path,
75
+ retries: retries,
76
+ timeout: timeout,
77
+ });
78
+ return Promise.resolve([]);
79
+ };
80
+ return AbstractAdapter;
81
+ }());
82
+ exports.AbstractAdapter = AbstractAdapter;
83
+ //# 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
  }
@@ -3,7 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AddressList = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var superstruct_1 = require("superstruct");
6
- var util_1 = require("./util");
6
+ var abstract_1 = require("./abstract");
7
+ var DEFAULT_NAME = "bybit";
7
8
  var DEFAULT_URL = "https://hackscan.hackbounty.io/public/hack-address.json";
8
9
  var bybitResponse = (0, superstruct_1.type)({
9
10
  "0221": (0, superstruct_1.type)({
@@ -12,24 +13,22 @@ var bybitResponse = (0, superstruct_1.type)({
12
13
  arbi: (0, superstruct_1.defaulted)((0, superstruct_1.array)((0, superstruct_1.string)()), []),
13
14
  }),
14
15
  });
15
- var AddressList = (function () {
16
- function AddressList(url) {
17
- if (url === void 0) { url = DEFAULT_URL; }
18
- this.url = url;
19
- this.timeout = 2000;
20
- this.retries = 1;
21
- this.name = "bybit";
16
+ var AddressList = (function (_super) {
17
+ tslib_1.__extends(AddressList, _super);
18
+ function AddressList(opts) {
19
+ var _a, _b;
20
+ 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;
22
21
  }
23
- AddressList.prototype.update = function (logger) {
22
+ AddressList.prototype.update = function () {
24
23
  return tslib_1.__awaiter(this, void 0, void 0, function () {
25
24
  var response;
26
25
  return tslib_1.__generator(this, function (_a) {
27
26
  switch (_a.label) {
28
- case 0: return [4, (0, util_1.fetch)(this.name, this.url, this.timeout, this.retries)];
27
+ case 0: return [4, this.fetch(this.name, this.path, this.timeout, this.retries)];
29
28
  case 1:
30
29
  response = _a.sent();
31
30
  if (!bybitResponse.is(response)) {
32
- return [2, (0, util_1.logError)(this.name, "Failed to validate response", logger)];
31
+ return [2, this.error("Failed to validate response")];
33
32
  }
34
33
  return [2, tslib_1.__spreadArray(tslib_1.__spreadArray(tslib_1.__spreadArray([], response["0221"].eth, true), response["0221"].bsc, true), response["0221"].arbi, true)];
35
34
  }
@@ -37,6 +36,6 @@ var AddressList = (function () {
37
36
  });
38
37
  };
39
38
  return AddressList;
40
- }());
39
+ }(abstract_1.AbstractAdapter));
41
40
  exports.AddressList = AddressList;
42
41
  //# sourceMappingURL=bybit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bybit.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/bybit.ts"],"names":[],"mappings":";;;;AAAA,2CAA6D;AAE7D,+BAAiD;AAEjD,IAAM,WAAW,GAAG,yDAAyD,CAAC;AAG9E,IAAM,aAAa,GAAG,IAAA,kBAAI,EAAC;IACzB,MAAM,EAAE,IAAA,kBAAI,EAAC;QACX,GAAG,EAAE,IAAA,uBAAS,EAAC,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,EAAE,EAAE,CAAC;QACnC,GAAG,EAAE,IAAA,uBAAS,EAAC,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,EAAE,EAAE,CAAC;QACnC,IAAI,EAAE,IAAA,uBAAS,EAAC,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,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;QACf,YAAO,GAAG,CAAC,CAAC;QACZ,SAAI,GAAG,OAAO,CAAC;IAEiB,CAAC;IAEpC,4BAAM,GAAZ,UAAa,MAAe;;;;;4BACT,WAAM,IAAA,YAAK,EAAC,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;4BAE/B,WAAO,IAAA,eAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,6BAA6B,EAAE,MAAM,CAAC,EAAC;yBACnE;wBAED,iFAAW,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;AAhBY,kCAAW"}
1
+ {"version":3,"file":"bybit.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/bybit.ts"],"names":[],"mappings":";;;;AAAA,2CAA6D;AAE7D,uCAA6C;AAE7C,IAAM,YAAY,GAAG,OAAO,CAAC;AAC7B,IAAM,WAAW,GAAG,yDAAyD,CAAC;AAG9E,IAAM,aAAa,GAAG,IAAA,kBAAI,EAAC;IACzB,MAAM,EAAE,IAAA,kBAAI,EAAC;QACX,GAAG,EAAE,IAAA,uBAAS,EAAC,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,EAAE,EAAE,CAAC;QACnC,GAAG,EAAE,IAAA,uBAAS,EAAC,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,EAAE,EAAE,CAAC;QACnC,IAAI,EAAE,IAAA,uBAAS,EAAC,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,EAAE,EAAE,CAAC;KACrC,CAAC;CACH,CAAC,CAAC;AAEH;IAAiC,uCAAe;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,WAAM,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;4BAE/B,WAAO,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,EAAC;yBAClD;wBAED,iFAAW,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,0BAAe,GAc/C;AAdY,kCAAW"}
@@ -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
  }
@@ -1,17 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AddressList = void 0;
4
+ var tslib_1 = require("tslib");
4
5
  var superstruct_1 = require("superstruct");
5
- var util_1 = require("./util");
6
+ var abstract_1 = require("./abstract");
6
7
  var envConfig = (0, superstruct_1.defaulted)((0, superstruct_1.array)((0, superstruct_1.string)()), []);
7
- var AddressList = (function () {
8
- function AddressList(envVar) {
9
- if (envVar === void 0) { envVar = "ACROSS_IGNORED_ADDRESSES"; }
10
- this.envVar = envVar;
11
- this.name = "process.env";
8
+ var AddressList = (function (_super) {
9
+ tslib_1.__extends(AddressList, _super);
10
+ function AddressList(opts) {
11
+ var _a, _b;
12
+ return _super.call(this, (_a = opts === null || opts === void 0 ? void 0 : opts.name) !== null && _a !== void 0 ? _a : "process.env", (_b = opts === null || opts === void 0 ? void 0 : opts.path) !== null && _b !== void 0 ? _b : "ACROSS_IGNORED_ADDRESSES", opts) || this;
12
13
  }
13
- AddressList.prototype.update = function (logger) {
14
- var config = process.env[this.envVar];
14
+ AddressList.prototype.update = function () {
15
+ var config = process.env[this.path];
15
16
  if (!config) {
16
17
  return Promise.resolve([]);
17
18
  }
@@ -19,15 +20,15 @@ var AddressList = (function () {
19
20
  try {
20
21
  addresses = JSON.parse(config);
21
22
  if (!envConfig.is(addresses)) {
22
- return (0, util_1.logError)(this.name, "Address format validation failure.", logger);
23
+ return this.error("Address format validation failure.");
23
24
  }
24
25
  }
25
26
  catch (err) {
26
- return (0, util_1.logError)(this.name, err, logger);
27
+ return this.error(err);
27
28
  }
28
29
  return Promise.resolve(addresses);
29
30
  };
30
31
  return AddressList;
31
- }());
32
+ }(abstract_1.AbstractAdapter));
32
33
  exports.AddressList = AddressList;
33
34
  //# sourceMappingURL=env.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/env.ts"],"names":[],"mappings":";;;AAAA,2CAAuD;AAEvD,+BAA0C;AAE1C,IAAM,SAAS,GAAG,IAAA,uBAAS,EAAC,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAEjD;IAGE,qBAAqB,MAAmC;QAAnC,uBAAA,EAAA,mCAAmC;QAAnC,WAAM,GAAN,MAAM,CAA6B;QAF/C,SAAI,GAAG,aAAa,CAAC;IAE6B,CAAC;IAE5D,4BAAM,GAAN,UAAO,MAAe;QACpB,IAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SAC5B;QAED,IAAI,SAAkB,CAAC;QACvB,IAAI;YACF,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE;gBAC5B,OAAO,IAAA,eAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,oCAAoC,EAAE,MAAM,CAAC,CAAC;aAC1E;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,IAAA,eAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;SACzC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IACH,kBAAC;AAAD,CAAC,AAvBD,IAuBC;AAvBY,kCAAW"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/env.ts"],"names":[],"mappings":";;;;AAAA,2CAAuD;AAEvD,uCAA6C;AAE7C,IAAM,SAAS,GAAG,IAAA,uBAAS,EAAC,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAEjD;IAAiC,uCAAe;IAC9C,qBAAY,IAAqB;;eAC/B,kBAAM,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,mCAAI,aAAa,EAAE,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,mCAAI,0BAA0B,EAAE,IAAI,CAAC;IACpF,CAAC;IAED,4BAAM,GAAN;QACE,IAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SAC5B;QAED,IAAI,SAAkB,CAAC;QACvB,IAAI;YACF,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE;gBAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;aACzD;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACxB;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IACH,kBAAC;AAAD,CAAC,AAvBD,CAAiC,0BAAe,GAuB/C;AAvBY,kCAAW"}
@@ -1,8 +1,6 @@
1
- import { AddressListAdapter } from "../types";
2
- import { Logger } from "./util";
3
- export declare class AddressList implements AddressListAdapter {
4
- readonly path: string;
5
- readonly name: string;
6
- constructor(path?: 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
  }
@@ -4,15 +4,16 @@ exports.AddressList = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var promises_1 = require("node:fs/promises");
6
6
  var superstruct_1 = require("superstruct");
7
- var util_1 = require("./util");
7
+ var abstract_1 = require("./abstract");
8
8
  var fileConfig = (0, superstruct_1.defaulted)((0, superstruct_1.array)((0, superstruct_1.string)()), []);
9
- var AddressList = (function () {
10
- function AddressList(path) {
11
- if (path === void 0) { path = "./addresses.json"; }
12
- this.path = path;
13
- this.name = "fs:".concat(path);
9
+ var AddressList = (function (_super) {
10
+ tslib_1.__extends(AddressList, _super);
11
+ function AddressList(opts) {
12
+ var _a;
13
+ var _b = (opts !== null && opts !== void 0 ? opts : {}).path, path = _b === void 0 ? "addresses.json" : _b;
14
+ return _super.call(this, (_a = opts === null || opts === void 0 ? void 0 : opts.name) !== null && _a !== void 0 ? _a : "fs:".concat(path), path, opts) || this;
14
15
  }
15
- AddressList.prototype.update = function (logger) {
16
+ AddressList.prototype.update = function () {
16
17
  return tslib_1.__awaiter(this, void 0, void 0, function () {
17
18
  var data, err_1, addresses;
18
19
  return tslib_1.__generator(this, function (_a) {
@@ -25,19 +26,19 @@ var AddressList = (function () {
25
26
  return [3, 3];
26
27
  case 2:
27
28
  err_1 = _a.sent();
28
- return [2, (0, util_1.logError)(this.name, err_1, logger)];
29
+ return [2, this.error(err_1)];
29
30
  case 3:
30
31
  if (!data) {
31
- return [2, (0, util_1.logError)(this.name, "No addresses found in \"".concat(this.path, "\""), logger)];
32
+ return [2, this.error("No addresses found")];
32
33
  }
33
34
  try {
34
35
  addresses = JSON.parse(data);
35
36
  if (!fileConfig.is(addresses)) {
36
- return [2, (0, util_1.logError)(this.name, "Address format validation failure.", logger)];
37
+ return [2, this.error("Address format validation failure.")];
37
38
  }
38
39
  }
39
40
  catch (err) {
40
- return [2, (0, util_1.logError)(this.name, err, logger)];
41
+ return [2, this.error(err)];
41
42
  }
42
43
  return [2, Promise.resolve(addresses)];
43
44
  }
@@ -45,6 +46,6 @@ var AddressList = (function () {
45
46
  });
46
47
  };
47
48
  return AddressList;
48
- }());
49
+ }(abstract_1.AbstractAdapter));
49
50
  exports.AddressList = AddressList;
50
51
  //# sourceMappingURL=file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/file.ts"],"names":[],"mappings":";;;;AAAA,6CAA4C;AAC5C,2CAAuD;AAEvD,+BAA0C;AAE1C,IAAM,UAAU,GAAG,IAAA,uBAAS,EAAC,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAElD;IAGE,qBAAqB,IAAyB;QAAzB,qBAAA,EAAA,yBAAyB;QAAzB,SAAI,GAAJ,IAAI,CAAqB;QAC5C,IAAI,CAAC,IAAI,GAAG,aAAM,IAAI,CAAE,CAAC;IAC3B,CAAC;IAEK,4BAAM,GAAZ,UAAa,MAAe;;;;;;;wBAGjB,WAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAA;;wBAAtD,IAAI,GAAG,SAA+C,CAAC;;;;wBAEvD,WAAO,IAAA,eAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,KAAG,EAAE,MAAM,CAAC,EAAC;;wBAG1C,IAAI,CAAC,IAAI,EAAE;4BACT,WAAO,IAAA,eAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,kCAA0B,IAAI,CAAC,IAAI,OAAG,EAAE,MAAM,CAAC,EAAC;yBAC5E;wBAGD,IAAI;4BACF,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;4BAC7B,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE;gCAC7B,WAAO,IAAA,eAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,oCAAoC,EAAE,MAAM,CAAC,EAAC;6BAC1E;yBACF;wBAAC,OAAO,GAAG,EAAE;4BACZ,WAAO,IAAA,eAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAC;yBACzC;wBAED,WAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAC;;;;KACnC;IACH,kBAAC;AAAD,CAAC,AA/BD,IA+BC;AA/BY,kCAAW"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/file.ts"],"names":[],"mappings":";;;;AAAA,6CAA4C;AAC5C,2CAAuD;AAEvD,uCAA6C;AAE7C,IAAM,UAAU,GAAG,IAAA,uBAAS,EAAC,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAElD;IAAiC,uCAAe;IAC9C,qBAAY,IAAqB;;QACvB,IAAA,KAA4B,CAAA,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAA,KAAf,EAAvB,IAAI,mBAAG,gBAAgB,KAAA,CAAgB;eAC/C,kBAAM,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,mCAAI,aAAM,IAAI,CAAE,EAAE,IAAI,EAAE,IAAI,CAAC;IAC/C,CAAC;IAEK,4BAAM,GAAZ;;;;;;;wBAGW,WAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAA;;wBAAtD,IAAI,GAAG,SAA+C,CAAC;;;;wBAEvD,WAAO,IAAI,CAAC,KAAK,CAAC,KAAG,CAAC,EAAC;;wBAGzB,IAAI,CAAC,IAAI,EAAE;4BACT,WAAO,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAC;yBACzC;wBAGD,IAAI;4BACF,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;4BAC7B,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE;gCAC7B,WAAO,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,EAAC;6BACzD;yBACF;wBAAC,OAAO,GAAG,EAAE;4BACZ,WAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAC;yBACxB;wBAED,WAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAC;;;;KACnC;IACH,kBAAC;AAAD,CAAC,AA9BD,CAAiC,0BAAe,GA8B/C;AA9BY,kCAAW"}
@@ -1,10 +1,6 @@
1
- import { AddressListAdapter } from "../types";
2
- import { Logger } from "./util";
3
- export declare class AddressList implements AddressListAdapter {
4
- readonly name: string;
5
- readonly url: string;
6
- readonly timeout = 2000;
7
- readonly retries = 1;
8
- constructor(name?: string, 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
  }
@@ -3,29 +3,33 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AddressList = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var superstruct_1 = require("superstruct");
6
- var util_1 = require("./util");
6
+ var abstract_1 = require("./abstract");
7
7
  var RESPONSE_TYPE = (0, superstruct_1.array)((0, superstruct_1.string)());
8
8
  var DEFAULT_NAME = "Risk Labs";
9
9
  var DEFAULT_URL = "https://blacklist.risklabs.foundation/api/blacklist";
10
- var AddressList = (function () {
11
- function AddressList(name, url) {
12
- if (name === void 0) { name = DEFAULT_NAME; }
13
- if (url === void 0) { url = DEFAULT_URL; }
14
- this.name = name;
15
- this.url = url;
16
- this.timeout = 2000;
17
- this.retries = 1;
10
+ var AddressList = (function (_super) {
11
+ tslib_1.__extends(AddressList, _super);
12
+ function AddressList(opts) {
13
+ var _a, _b;
14
+ 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;
18
15
  }
19
- AddressList.prototype.update = function (logger) {
16
+ AddressList.prototype.update = function () {
20
17
  return tslib_1.__awaiter(this, void 0, void 0, function () {
21
- var response;
18
+ var response, err_1;
22
19
  return tslib_1.__generator(this, function (_a) {
23
20
  switch (_a.label) {
24
- case 0: return [4, (0, util_1.fetch)(this.name, this.url, this.timeout, this.retries)];
21
+ case 0:
22
+ _a.trys.push([0, 2, , 3]);
23
+ return [4, this.fetch(this.name, this.path, this.timeout, this.retries)];
25
24
  case 1:
26
25
  response = _a.sent();
26
+ return [3, 3];
27
+ case 2:
28
+ err_1 = _a.sent();
29
+ return [2, this.error(err_1)];
30
+ case 3:
27
31
  if (!RESPONSE_TYPE.is(response)) {
28
- return [2, (0, util_1.logError)(this.name, "Failed to validate response", logger)];
32
+ return [2, this.error("Failed to validate response")];
29
33
  }
30
34
  return [2, response];
31
35
  }
@@ -33,6 +37,6 @@ var AddressList = (function () {
33
37
  });
34
38
  };
35
39
  return AddressList;
36
- }());
40
+ }(abstract_1.AbstractAdapter));
37
41
  exports.AddressList = AddressList;
38
42
  //# sourceMappingURL=risklabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"risklabs.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/risklabs.ts"],"names":[],"mappings":";;;;AAAA,2CAA4C;AAE5C,+BAAiD;AAEjD,IAAM,aAAa,GAAG,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,CAAC;AACtC,IAAM,YAAY,GAAG,WAAW,CAAC;AACjC,IAAM,WAAW,GAAG,qDAAqD,CAAC;AAE1E;IAIE,qBACW,IAAmB,EACnB,GAAiB;QADjB,qBAAA,EAAA,mBAAmB;QACnB,oBAAA,EAAA,iBAAiB;QADjB,SAAI,GAAJ,IAAI,CAAe;QACnB,QAAG,GAAH,GAAG,CAAc;QALnB,YAAO,GAAG,IAAI,CAAC;QACf,YAAO,GAAG,CAAC,CAAC;IAKlB,CAAC;IAEE,4BAAM,GAAZ,UAAa,MAAe;;;;;4BACT,WAAM,IAAA,YAAK,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,EAAA;;wBAAvE,QAAQ,GAAG,SAA4D;wBAE7E,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE;4BAC/B,WAAO,IAAA,eAAQ,EAAC,IAAI,CAAC,IAAI,EAAE,6BAA6B,EAAE,MAAM,CAAC,EAAC;yBACnE;wBAED,WAAO,QAAQ,EAAC;;;;KACjB;IACH,kBAAC;AAAD,CAAC,AAlBD,IAkBC;AAlBY,kCAAW"}
1
+ {"version":3,"file":"risklabs.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/risklabs.ts"],"names":[],"mappings":";;;;AAAA,2CAA4C;AAE5C,uCAA6C;AAE7C,IAAM,aAAa,GAAG,IAAA,mBAAK,EAAC,IAAA,oBAAM,GAAE,CAAC,CAAC;AACtC,IAAM,YAAY,GAAG,WAAW,CAAC;AACjC,IAAM,WAAW,GAAG,qDAAqD,CAAC;AAE1E;IAAiC,uCAAe;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;;;;;;;wBAGe,WAAM,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,CAAC;;;;wBAE9E,WAAO,IAAI,CAAC,KAAK,CAAC,KAAG,CAAC,EAAC;;wBAGzB,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE;4BAC/B,WAAO,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,EAAC;yBAClD;wBAED,WAAO,QAAQ,EAAC;;;;KACjB;IACH,kBAAC;AAAD,CAAC,AAnBD,CAAiC,0BAAe,GAmB/C;AAnBY,kCAAW"}
@@ -36,7 +36,7 @@ var AddressAggregator = (function () {
36
36
  switch (_c.label) {
37
37
  case 0:
38
38
  invalidAddresses = [];
39
- return [4, adapter.update(this.logger)];
39
+ return [4, adapter.update()];
40
40
  case 1:
41
41
  addresses = (_c.sent())
42
42
  .map(function (address) {
@@ -86,7 +86,7 @@ function run() {
86
86
  return tslib_1.__generator(this, function (_a) {
87
87
  switch (_a.label) {
88
88
  case 0:
89
- addressList = new AddressAggregator([new adapters.risklabs.AddressList()]);
89
+ addressList = new AddressAggregator([new adapters.risklabs.AddressList({ throwOnError: true })]);
90
90
  return [4, addressList.update()];
91
91
  case 1:
92
92
  addresses = _a.sent();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/addressAggregator/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/addressAggregator/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,14 @@
1
1
  import { Logger } from "../utils";
2
+ export type AdapterOptions = {
3
+ name?: string;
4
+ path?: string;
5
+ retries?: number;
6
+ timeout?: number;
7
+ throwOnError?: boolean;
8
+ logger?: Logger;
9
+ };
2
10
  export interface AddressListAdapter {
3
11
  readonly name: string;
4
- update(logger?: Logger): Promise<string[]>;
12
+ update(): Promise<string[]>;
5
13
  }
6
14
  export declare const INVALID_ADDRESS = "";
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/addressAggregator/types.ts"],"names":[],"mappings":";;;AAOa,QAAA,eAAe,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/addressAggregator/types.ts"],"names":[],"mappings":";;;AAgBa,QAAA,eAAe,GAAG,EAAE,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { Contract, PopulatedTransaction, providers } from "ethers";
2
+ import { Deposit, FillStatus, FillWithBlock, RelayData } from "../../interfaces";
3
+ import { BigNumber } from "../../utils";
4
+ type BlockTag = providers.BlockTag;
5
+ export declare function populateV3Relay(spokePool: Contract, deposit: Omit<Deposit, "messageHash">, relayer: string, repaymentChainId?: number): Promise<PopulatedTransaction>;
6
+ export declare function getTimeAt(spokePool: Contract, blockNumber: number): Promise<number>;
7
+ export declare function getTimestampForBlock(provider: providers.Provider, blockNumber: number): Promise<number>;
8
+ export declare function getMaxFillDeadlineInRange(spokePool: Contract, startBlock: number, endBlock: number): Promise<number>;
9
+ export declare function getDepositIdAtBlock(contract: Contract, blockTag: number): Promise<BigNumber>;
10
+ export declare function findDepositBlock(spokePool: Contract, depositId: BigNumber, lowBlock: number, highBlock?: number): Promise<number | undefined>;
11
+ export declare function relayFillStatus(spokePool: Contract, relayData: RelayData, blockTag?: number | "latest", destinationChainId?: number): Promise<FillStatus>;
12
+ export declare function fillStatusArray(spokePool: Contract, relayData: RelayData[], blockTag?: BlockTag): Promise<(FillStatus | undefined)[]>;
13
+ export declare function findFillBlock(spokePool: Contract, relayData: RelayData, lowBlockNumber: number, highBlockNumber?: number): Promise<number | undefined>;
14
+ export declare function findFillEvent(spokePool: Contract, relayData: RelayData, lowBlockNumber: number, highBlockNumber?: number): Promise<FillWithBlock | undefined>;
15
+ export {};