@across-protocol/sdk 4.3.145-alpha.2 → 4.3.145

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 (43) hide show
  1. package/dist/cjs/src/caching/Arweave/ArweaveClient.d.ts +2 -0
  2. package/dist/cjs/src/caching/Arweave/ArweaveClient.js +116 -40
  3. package/dist/cjs/src/caching/Arweave/ArweaveClient.js.map +1 -1
  4. package/dist/cjs/src/clients/BundleDataClient/BundleDataClient.d.ts +5 -2
  5. package/dist/cjs/src/clients/BundleDataClient/BundleDataClient.js +74 -10
  6. package/dist/cjs/src/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  7. package/dist/cjs/src/coingecko/Coingecko.js +2 -9
  8. package/dist/cjs/src/coingecko/Coingecko.js.map +1 -1
  9. package/dist/cjs/src/utils/CachingUtils.d.ts +1 -0
  10. package/dist/cjs/src/utils/CachingUtils.js +4 -0
  11. package/dist/cjs/src/utils/CachingUtils.js.map +1 -1
  12. package/dist/cjs/src/utils/common.d.ts +1 -24
  13. package/dist/cjs/src/utils/common.js +8 -33
  14. package/dist/cjs/src/utils/common.js.map +1 -1
  15. package/dist/esm/src/caching/Arweave/ArweaveClient.d.ts +2 -0
  16. package/dist/esm/src/caching/Arweave/ArweaveClient.js +117 -47
  17. package/dist/esm/src/caching/Arweave/ArweaveClient.js.map +1 -1
  18. package/dist/esm/src/clients/BundleDataClient/BundleDataClient.d.ts +5 -2
  19. package/dist/esm/src/clients/BundleDataClient/BundleDataClient.js +77 -13
  20. package/dist/esm/src/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  21. package/dist/esm/src/coingecko/Coingecko.js +2 -9
  22. package/dist/esm/src/coingecko/Coingecko.js.map +1 -1
  23. package/dist/esm/src/utils/CachingUtils.d.ts +1 -0
  24. package/dist/esm/src/utils/CachingUtils.js +3 -0
  25. package/dist/esm/src/utils/CachingUtils.js.map +1 -1
  26. package/dist/esm/src/utils/common.d.ts +6 -55
  27. package/dist/esm/src/utils/common.js +15 -32
  28. package/dist/esm/src/utils/common.js.map +1 -1
  29. package/dist/types/src/caching/Arweave/ArweaveClient.d.ts +2 -0
  30. package/dist/types/src/caching/Arweave/ArweaveClient.d.ts.map +1 -1
  31. package/dist/types/src/clients/BundleDataClient/BundleDataClient.d.ts +5 -2
  32. package/dist/types/src/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  33. package/dist/types/src/coingecko/Coingecko.d.ts.map +1 -1
  34. package/dist/types/src/utils/CachingUtils.d.ts +1 -0
  35. package/dist/types/src/utils/CachingUtils.d.ts.map +1 -1
  36. package/dist/types/src/utils/common.d.ts +6 -55
  37. package/dist/types/src/utils/common.d.ts.map +1 -1
  38. package/package.json +1 -1
  39. package/src/caching/Arweave/ArweaveClient.ts +142 -54
  40. package/src/clients/BundleDataClient/BundleDataClient.ts +86 -17
  41. package/src/coingecko/Coingecko.ts +2 -9
  42. package/src/utils/CachingUtils.ts +4 -0
  43. package/src/utils/common.ts +14 -93
@@ -18,6 +18,8 @@ export declare class ArweaveClient {
18
18
  private _raceGateways;
19
19
  private _failoverGateways;
20
20
  private _retryRequest;
21
+ private _isNotFoundError;
22
+ private _wrapWriteError;
21
23
  set(value: Record<string, unknown>, topicTag?: string | undefined): Promise<string | undefined>;
22
24
  get<T>(transactionID: string, validator: Struct<T>): Promise<T | null>;
23
25
  getByTopic<T>(tag: string, validator: Struct<T>, originQueryAddress?: string): Promise<{
@@ -7,6 +7,18 @@ const superstruct_1 = require("superstruct");
7
7
  const constants_1 = require("../../constants");
8
8
  const utils_1 = require("../../utils");
9
9
  exports.DEFAULT_ARWEAVE_GATEWAYS = [{ host: "arweave.net" }, { host: "ar-io.net" }];
10
+ class ArweaveWriteError extends Error {
11
+ phase;
12
+ gateway;
13
+ status;
14
+ constructor(message, phase, gateway, status) {
15
+ super(message);
16
+ this.phase = phase;
17
+ this.gateway = gateway;
18
+ this.status = status;
19
+ this.name = "ArweaveWriteError";
20
+ }
21
+ }
10
22
  class ArweaveClient {
11
23
  arweaveJWT;
12
24
  logger;
@@ -51,15 +63,19 @@ class ArweaveClient {
51
63
  }
52
64
  async _failoverGateways(label, fn) {
53
65
  const errors = [];
54
- for (const gw of this.gateways) {
66
+ for (const [index, gw] of this.gateways.entries()) {
55
67
  try {
56
- return await this._retryRequest(() => fn(gw), 0);
68
+ return await this._retryRequest(() => fn(gw, index + 1), 0);
57
69
  }
58
70
  catch (e) {
59
- errors.push(e);
71
+ const error = e instanceof Error ? e : new Error(String(e));
72
+ errors.push(error);
60
73
  this.logger.debug({
61
74
  at: "ArweaveClient:failoverGateways",
62
- message: `Gateway ${gw.url} failed for ${label}, trying next: ${e}`,
75
+ message: `Gateway ${gw.url} failed for ${label}, trying next gateway`,
76
+ gateway: gw.url,
77
+ attempt: index + 1,
78
+ error: String(error),
63
79
  });
64
80
  }
65
81
  }
@@ -87,36 +103,81 @@ class ArweaveClient {
87
103
  }
88
104
  }
89
105
  }
106
+ _isNotFoundError(error) {
107
+ if ((0, utils_1.isHttpError)(error)) {
108
+ return error.status === 404;
109
+ }
110
+ const message = error instanceof Error ? error.message : String(error);
111
+ return /404/i.test(message);
112
+ }
113
+ _wrapWriteError(error, phase, gateway) {
114
+ if (error instanceof ArweaveWriteError) {
115
+ return error;
116
+ }
117
+ if ((0, utils_1.isHttpError)(error)) {
118
+ return new ArweaveWriteError(error.message, phase, gateway, error.status);
119
+ }
120
+ const message = error instanceof Error ? error.message : String(error);
121
+ return new ArweaveWriteError(message, phase, gateway);
122
+ }
90
123
  async set(value, topicTag) {
91
- const templateClient = this.gateways[0].client;
92
- const transaction = await templateClient.createTransaction({ data: JSON.stringify(value, utils_1.jsonReplacerWithBigNumbers) }, this.arweaveJWT);
93
- transaction.addTag("Content-Type", "application/json");
94
- transaction.addTag("App-Name", constants_1.ARWEAVE_TAG_APP_NAME);
95
- transaction.addTag("App-Version", constants_1.ARWEAVE_TAG_APP_VERSION.toString());
96
- if ((0, utils_1.isDefined)(topicTag)) {
97
- transaction.addTag("Topic", topicTag);
98
- }
99
- await templateClient.transactions.sign(transaction, this.arweaveJWT);
100
- return await this._failoverGateways("set", async ({ client }) => {
101
- const result = await client.transactions.post(transaction);
102
- if (result.status !== 200) {
103
- const message = result?.data?.error?.msg ?? "Unknown error";
104
- this.logger.error({
124
+ const payload = JSON.stringify(value, utils_1.jsonReplacerWithBigNumbers);
125
+ let signedTransaction;
126
+ try {
127
+ return await this._failoverGateways("set", async ({ client, url }, attempt) => {
128
+ if (!signedTransaction) {
129
+ let createdTransaction;
130
+ try {
131
+ createdTransaction = await client.createTransaction({ data: payload }, this.arweaveJWT);
132
+ }
133
+ catch (error) {
134
+ throw this._wrapWriteError(error, "createTransaction", url);
135
+ }
136
+ createdTransaction.addTag("Content-Type", "application/json");
137
+ createdTransaction.addTag("App-Name", constants_1.ARWEAVE_TAG_APP_NAME);
138
+ createdTransaction.addTag("App-Version", constants_1.ARWEAVE_TAG_APP_VERSION.toString());
139
+ if ((0, utils_1.isDefined)(topicTag)) {
140
+ createdTransaction.addTag("Topic", topicTag);
141
+ }
142
+ try {
143
+ await client.transactions.sign(createdTransaction, this.arweaveJWT);
144
+ }
145
+ catch (error) {
146
+ throw this._wrapWriteError(error, "sign", url);
147
+ }
148
+ signedTransaction = createdTransaction;
149
+ }
150
+ let result;
151
+ try {
152
+ result = await client.transactions.post(signedTransaction);
153
+ }
154
+ catch (error) {
155
+ throw this._wrapWriteError(error, "post", url);
156
+ }
157
+ if (result.status !== 200) {
158
+ const message = result?.data?.error?.msg ?? result.statusText ?? `HTTP ${result.status}`;
159
+ throw new ArweaveWriteError(message, "post", url, result.status);
160
+ }
161
+ this.logger.debug({
105
162
  at: "ArweaveClient:set",
106
- message,
107
- result,
108
- txn: transaction.id,
109
- address: await this.getAddress(),
110
- balance: (await this.getBalance()).toString(),
163
+ message: `Arweave transaction posted with ${signedTransaction.id}`,
164
+ gateway: url,
165
+ attempt,
166
+ phase: "post",
167
+ txn: signedTransaction.id,
111
168
  });
112
- throw new Error(message);
113
- }
114
- this.logger.debug({
169
+ return signedTransaction.id;
170
+ });
171
+ }
172
+ catch (error) {
173
+ this.logger.error({
115
174
  at: "ArweaveClient:set",
116
- message: `Arweave transaction posted with ${transaction.id}`,
175
+ message: "Failed to persist data to Arweave after exhausting all gateways",
176
+ topicTag,
177
+ error: String(error),
117
178
  });
118
- return transaction.id;
119
- });
179
+ throw error;
180
+ }
120
181
  }
121
182
  async get(transactionID, validator) {
122
183
  const data = await this._raceGateways("get", async ({ url }) => {
@@ -146,14 +207,10 @@ class ArweaveClient {
146
207
  ]
147
208
  ) { edges { node { id } } }
148
209
  }`;
149
- const response = await this._raceGateways("getByTopic", async ({ client }) => {
150
- const response = await client.api.post("/graphql", { query });
151
- if (!response.ok) {
152
- throw new Error(`Arweave GraphQL request failed with status ${response.status}`);
153
- }
154
- return response;
210
+ const response = await this._raceGateways("getByTopic", async ({ url }) => {
211
+ return await (0, utils_1.postWithTimeout)(`${url}/graphql`, { query }, {}, {}, 20_000);
155
212
  });
156
- const entries = response?.data?.data?.transactions?.edges ?? [];
213
+ const entries = response?.data?.transactions?.edges ?? [];
157
214
  this.logger.debug({
158
215
  at: "ArweaveClient:getByTopic",
159
216
  message: `Retrieved ${entries.length} matching transactions from Arweave`,
@@ -164,6 +221,7 @@ class ArweaveClient {
164
221
  appVersion: constants_1.ARWEAVE_TAG_APP_VERSION,
165
222
  },
166
223
  });
224
+ const failures = [];
167
225
  const results = await Promise.all(entries.map(async (edge) => {
168
226
  try {
169
227
  const data = await this.get(edge.node.id, validator);
@@ -175,13 +233,31 @@ class ArweaveClient {
175
233
  : null;
176
234
  }
177
235
  catch (e) {
178
- this.logger.warn({
179
- at: "ArweaveClient:getByTopic",
180
- message: `Bad request for Arweave topic ${edge.node.id}: ${e}`,
181
- });
236
+ failures.push({ hash: edge.node.id, error: e });
182
237
  return null;
183
238
  }
184
239
  }));
240
+ const notFoundFailures = failures.filter(({ error }) => this._isNotFoundError(error));
241
+ const unexpectedFailures = failures.filter(({ error }) => !this._isNotFoundError(error));
242
+ if (notFoundFailures.length > 0) {
243
+ this.logger.debug({
244
+ at: "ArweaveClient:getByTopic",
245
+ message: `Skipped ${notFoundFailures.length} Arweave topic entries that were not yet available`,
246
+ tag,
247
+ transactions: notFoundFailures.map(({ hash }) => hash),
248
+ });
249
+ }
250
+ if (unexpectedFailures.length > 0) {
251
+ this.logger.warn({
252
+ at: "ArweaveClient:getByTopic",
253
+ message: `Failed to fetch ${unexpectedFailures.length} Arweave topic entries`,
254
+ tag,
255
+ failures: unexpectedFailures.map(({ hash, error }) => ({
256
+ hash,
257
+ error: String(error),
258
+ })),
259
+ });
260
+ }
185
261
  return results.filter(utils_1.isDefined);
186
262
  }
187
263
  async getMetadata(transactionID) {
@@ -1 +1 @@
1
- {"version":3,"file":"ArweaveClient.js","sourceRoot":"","sources":["../../../../../src/caching/Arweave/ArweaveClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ArweaveClient.js","sourceRoot":"","sources":["../../../../../src/caching/Arweave/ArweaveClient.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { SpokePoolClientsByChain, LoadDataReturnValue, Clients, FillWithBlock, DepositWithBlock } from "../../interfaces";
1
+ import { SpokePoolClientsByChain, LoadDataReturnValue, Clients, FillWithBlock, DepositWithBlock, CachingMechanismInterface } from "../../interfaces";
2
2
  import { SpokePoolClient } from "..";
3
3
  import winston from "winston";
4
4
  import { SpokePoolManager } from "../SpokePoolClient/SpokePoolClientManager";
@@ -9,6 +9,7 @@ export declare class BundleDataClient {
9
9
  readonly blockRangeEndBlockBuffer: {
10
10
  [chainId: number]: number;
11
11
  };
12
+ readonly arweaveTopicCache?: CachingMechanismInterface | undefined;
12
13
  private loadDataCache;
13
14
  private arweaveDataCache;
14
15
  private bundleTimestampCache;
@@ -17,7 +18,7 @@ export declare class BundleDataClient {
17
18
  [chainId: number]: SpokePoolClient;
18
19
  }, chainIdListForBundleEvaluationBlockNumbers: number[], blockRangeEndBlockBuffer?: {
19
20
  [chainId: number]: number;
20
- });
21
+ }, arweaveTopicCache?: CachingMechanismInterface | undefined);
21
22
  clearCache(): void;
22
23
  private loadDataFromCache;
23
24
  getBundleTimestampsFromCache(key: string): undefined | {
@@ -28,6 +29,8 @@ export declare class BundleDataClient {
28
29
  }): void;
29
30
  static getArweaveClientKey(blockRangesForChains: number[][]): string;
30
31
  private getArweaveBundleDataClientKey;
32
+ private getPersistedArweaveTopicFromCache;
33
+ private backfillPersistedArweaveTopicCache;
31
34
  private loadPersistedDataFromArweave;
32
35
  private loadArweaveData;
33
36
  loadData(blockRangesForChains: number[][], spokePoolClients: SpokePoolClientsByChain, attemptArweaveLoad?: boolean): Promise<LoadDataReturnValue>;
@@ -4,6 +4,7 @@ exports.BundleDataClient = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const assert_1 = tslib_1.__importDefault(require("assert"));
6
6
  const lodash_1 = tslib_1.__importDefault(require("lodash"));
7
+ const superstruct_1 = require("superstruct");
7
8
  const interfaces_1 = require("../../interfaces");
8
9
  const evm_1 = require("../../arch/evm");
9
10
  const svm_1 = require("../../arch/svm");
@@ -12,6 +13,7 @@ const utils_1 = require("../../utils");
12
13
  const utils_2 = require("./utils");
13
14
  const SpokePoolClient_1 = require("../SpokePoolClient");
14
15
  const SpokePoolClientManager_1 = require("../SpokePoolClient/SpokePoolClientManager");
16
+ const constants_1 = require("../../constants");
15
17
  function updateExpiredDepositsV3(dict, deposit) {
16
18
  if (!deposit.depositor.isValidOn(deposit.originChainId)) {
17
19
  return;
@@ -78,15 +80,17 @@ class BundleDataClient {
78
80
  clients;
79
81
  chainIdListForBundleEvaluationBlockNumbers;
80
82
  blockRangeEndBlockBuffer;
83
+ arweaveTopicCache;
81
84
  loadDataCache = {};
82
85
  arweaveDataCache = {};
83
86
  bundleTimestampCache = {};
84
87
  spokePoolClientManager;
85
- constructor(logger, clients, spokePoolClients, chainIdListForBundleEvaluationBlockNumbers, blockRangeEndBlockBuffer = {}) {
88
+ constructor(logger, clients, spokePoolClients, chainIdListForBundleEvaluationBlockNumbers, blockRangeEndBlockBuffer = {}, arweaveTopicCache) {
86
89
  this.logger = logger;
87
90
  this.clients = clients;
88
91
  this.chainIdListForBundleEvaluationBlockNumbers = chainIdListForBundleEvaluationBlockNumbers;
89
92
  this.blockRangeEndBlockBuffer = blockRangeEndBlockBuffer;
93
+ this.arweaveTopicCache = arweaveTopicCache;
90
94
  this.spokePoolClientManager = new SpokePoolClientManager_1.SpokePoolManager(logger, spokePoolClients);
91
95
  }
92
96
  clearCache() {
@@ -110,14 +114,65 @@ class BundleDataClient {
110
114
  getArweaveBundleDataClientKey(blockRangesForChains) {
111
115
  return `bundles-${BundleDataClient.getArweaveClientKey(blockRangesForChains)}`;
112
116
  }
117
+ async getPersistedArweaveTopicFromCache(tag) {
118
+ if (!(0, utils_1.isDefined)(this.arweaveTopicCache)) {
119
+ return undefined;
120
+ }
121
+ try {
122
+ const cachedPayload = await this.arweaveTopicCache.get((0, utils_1.getArweaveTopicCacheKey)(tag));
123
+ if (!(0, utils_1.isDefined)(cachedPayload)) {
124
+ return undefined;
125
+ }
126
+ return (0, superstruct_1.create)(JSON.parse(cachedPayload), utils_2.BundleDataSS);
127
+ }
128
+ catch (error) {
129
+ this.logger.debug({
130
+ at: "BundleDataClient#getPersistedArweaveTopicFromCache",
131
+ message: "Failed to restore persisted bundle data from topic cache, falling back to Arweave",
132
+ tag,
133
+ error: String(error),
134
+ });
135
+ return undefined;
136
+ }
137
+ }
138
+ async backfillPersistedArweaveTopicCache(tag, data) {
139
+ if (!(0, utils_1.isDefined)(this.arweaveTopicCache)) {
140
+ return;
141
+ }
142
+ try {
143
+ await this.arweaveTopicCache.set((0, utils_1.getArweaveTopicCacheKey)(tag), JSON.stringify(data, utils_1.jsonReplacerWithBigNumbers), constants_1.DEFAULT_CACHING_TTL);
144
+ }
145
+ catch (error) {
146
+ this.logger.debug({
147
+ at: "BundleDataClient#backfillPersistedArweaveTopicCache",
148
+ message: "Failed to backfill persisted bundle data into topic cache",
149
+ tag,
150
+ error: String(error),
151
+ });
152
+ }
153
+ }
113
154
  async loadPersistedDataFromArweave(blockRangesForChains) {
114
155
  if (!(0, utils_1.isDefined)(this.clients?.arweaveClient)) {
115
156
  return undefined;
116
157
  }
117
158
  const start = performance.now();
118
- const persistedData = await this.clients.arweaveClient.getByTopic(this.getArweaveBundleDataClientKey(blockRangesForChains), utils_2.BundleDataSS);
119
- if (!(0, utils_1.isDefined)(persistedData) || persistedData.length < 1) {
120
- return undefined;
159
+ const tag = this.getArweaveBundleDataClientKey(blockRangesForChains);
160
+ let data = await this.getPersistedArweaveTopicFromCache(tag);
161
+ if (!(0, utils_1.isDefined)(data)) {
162
+ const persistedData = await this.clients.arweaveClient.getByTopic(tag, utils_2.BundleDataSS);
163
+ if (!(0, utils_1.isDefined)(persistedData) || persistedData.length < 1) {
164
+ return undefined;
165
+ }
166
+ data = persistedData[0].data;
167
+ await this.backfillPersistedArweaveTopicCache(tag, data);
168
+ }
169
+ else {
170
+ this.logger.debug({
171
+ at: "BundleDataClient#loadPersistedDataFromArweave",
172
+ message: "Loaded persisted bundle data from topic cache",
173
+ blockRanges: JSON.stringify(blockRangesForChains),
174
+ tag,
175
+ });
121
176
  }
122
177
  const convertTypedStringRecordIntoNumericRecord = (data) => Object.keys(data).reduce((acc, chainId) => {
123
178
  acc[Number(chainId)] = data[chainId];
@@ -150,7 +205,6 @@ class BundleDataClient {
150
205
  ])),
151
206
  ]));
152
207
  };
153
- const data = persistedData[0].data;
154
208
  const bundleData = {
155
209
  bundleFillsV3: convertTypedStringRecordIntoNumericRecord(Object.fromEntries(Object.entries(data.bundleFillsV3).map(([chainId, tokenData]) => [
156
210
  chainId,
@@ -180,7 +234,10 @@ class BundleDataClient {
180
234
  async loadArweaveData(blockRangesForChains) {
181
235
  const arweaveKey = this.getArweaveBundleDataClientKey(blockRangesForChains);
182
236
  if (!this.arweaveDataCache[arweaveKey]) {
183
- this.arweaveDataCache[arweaveKey] = this.loadPersistedDataFromArweave(blockRangesForChains);
237
+ this.arweaveDataCache[arweaveKey] = this.loadPersistedDataFromArweave(blockRangesForChains).catch((error) => {
238
+ delete this.arweaveDataCache[arweaveKey];
239
+ throw error;
240
+ });
184
241
  }
185
242
  const arweaveData = lodash_1.default.cloneDeep(await this.arweaveDataCache[arweaveKey]);
186
243
  return arweaveData;
@@ -190,10 +247,17 @@ class BundleDataClient {
190
247
  if (!this.loadDataCache[key]) {
191
248
  let arweaveData;
192
249
  if (attemptArweaveLoad) {
193
- arweaveData = await this.loadArweaveData(blockRangesForChains);
194
- }
195
- else {
196
- arweaveData = undefined;
250
+ try {
251
+ arweaveData = await this.loadArweaveData(blockRangesForChains);
252
+ }
253
+ catch (error) {
254
+ this.logger.warn({
255
+ at: "BundleDataClient#loadData",
256
+ message: "Failed to load bundle data from Arweave, falling back to on-chain reconstruction",
257
+ blockRanges: JSON.stringify(blockRangesForChains),
258
+ error: String(error),
259
+ });
260
+ }
197
261
  }
198
262
  const data = (0, utils_1.isDefined)(arweaveData)
199
263
  ?
@@ -1 +1 @@
1
- {"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":"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"}
@@ -237,7 +237,7 @@ class Coingecko {
237
237
  getPlatforms() {
238
238
  return this.call("asset_platforms");
239
239
  }
240
- async call(path) {
240
+ call(path) {
241
241
  const sendRequest = async () => {
242
242
  const { proHost } = this;
243
243
  if (this.apiKey === undefined) {
@@ -255,14 +255,7 @@ class Coingecko {
255
255
  return await this._callPro(path);
256
256
  }
257
257
  };
258
- const result = await (0, utils_1.retry)(sendRequest, {
259
- retries: this.apiKey === undefined ? this.numRetries : 0,
260
- delaySeconds: this.retryDelay,
261
- });
262
- if (!result.ok) {
263
- throw result.error;
264
- }
265
- return result.value;
258
+ return (0, utils_1.retry)(sendRequest, this.apiKey === undefined ? this.numRetries : 0, this.retryDelay);
266
259
  }
267
260
  getPriceCache(currency, platform_id) {
268
261
  if (this.prices[platform_id] === undefined)