@augustdigital/sdk 4.7.3-alpha → 4.7.4

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 (112) hide show
  1. package/lib/__tests__/adapter.e2e.test.d.ts +1 -0
  2. package/lib/__tests__/adapter.e2e.test.js +94 -0
  3. package/lib/__tests__/adapter.e2e.test.js.map +1 -0
  4. package/lib/adapters/evm/index.d.ts +1 -1
  5. package/lib/adapters/evm/index.js +2 -2
  6. package/lib/adapters/evm/index.js.map +1 -1
  7. package/lib/adapters/solana/index.d.ts +7 -39
  8. package/lib/adapters/solana/types.d.ts +12 -0
  9. package/lib/adapters/solana/utils.d.ts +4 -20
  10. package/lib/adapters/solana/utils.js +25 -2
  11. package/lib/adapters/solana/utils.js.map +1 -1
  12. package/lib/core/auth/verify.js +2 -2
  13. package/lib/core/auth/verify.js.map +1 -1
  14. package/lib/core/base.class.d.ts +1 -0
  15. package/lib/core/base.class.js.map +1 -1
  16. package/lib/core/constants/adapters.d.ts +88 -0
  17. package/lib/core/constants/adapters.js +160 -0
  18. package/lib/core/constants/adapters.js.map +1 -0
  19. package/lib/core/constants/core.d.ts +71 -0
  20. package/lib/core/constants/core.js +75 -0
  21. package/lib/core/constants/core.js.map +1 -0
  22. package/lib/core/constants/vaults.d.ts +19 -0
  23. package/lib/core/constants/vaults.js +163 -0
  24. package/lib/core/constants/vaults.js.map +1 -0
  25. package/lib/core/constants/web3.d.ts +30 -0
  26. package/lib/core/constants/web3.js +112 -0
  27. package/lib/core/constants/web3.js.map +1 -0
  28. package/lib/core/constants.d.ts +88 -0
  29. package/lib/core/constants.js +148 -0
  30. package/lib/core/constants.js.map +1 -0
  31. package/lib/core/constants.vaults.d.ts +1 -1
  32. package/lib/core/constants.vaults.js +0 -8
  33. package/lib/core/constants.vaults.js.map +1 -1
  34. package/lib/core/constants.web3.js +0 -12
  35. package/lib/core/constants.web3.js.map +1 -1
  36. package/lib/core/core.helpers.d.ts +23 -0
  37. package/lib/core/core.helpers.js +210 -0
  38. package/lib/core/core.helpers.js.map +1 -0
  39. package/lib/core/fetcher.d.ts +3 -1
  40. package/lib/core/fetcher.js +44 -29
  41. package/lib/core/fetcher.js.map +1 -1
  42. package/lib/core/helpers/adapters.d.ts +4 -0
  43. package/lib/core/helpers/adapters.js +28 -0
  44. package/lib/core/helpers/adapters.js.map +1 -0
  45. package/lib/core/helpers/core.d.ts +23 -0
  46. package/lib/core/helpers/core.js +210 -0
  47. package/lib/core/helpers/core.js.map +1 -0
  48. package/lib/core/helpers/signer.d.ts +5 -0
  49. package/lib/core/helpers/signer.js +54 -0
  50. package/lib/core/helpers/signer.js.map +1 -0
  51. package/lib/core/helpers/vaults.d.ts +16 -0
  52. package/lib/core/helpers/vaults.js +145 -0
  53. package/lib/core/helpers/vaults.js.map +1 -0
  54. package/lib/core/helpers/web3.d.ts +29 -0
  55. package/lib/core/helpers/web3.js +391 -0
  56. package/lib/core/helpers/web3.js.map +1 -0
  57. package/lib/core/helpers.web3.d.ts +2 -2
  58. package/lib/core/helpers.web3.js +20 -36
  59. package/lib/core/helpers.web3.js.map +1 -1
  60. package/lib/core/index.d.ts +9 -9
  61. package/lib/core/index.js +9 -9
  62. package/lib/core/logger/slack.js +3 -3
  63. package/lib/core/logger/slack.js.map +1 -1
  64. package/lib/core/read.actions.d.ts +3 -0
  65. package/lib/core/read.actions.js +39 -0
  66. package/lib/core/read.actions.js.map +1 -0
  67. package/lib/core/vault.utils.d.ts +4 -0
  68. package/lib/core/vault.utils.js +35 -0
  69. package/lib/core/vault.utils.js.map +1 -0
  70. package/lib/core/web3.helpers.d.ts +29 -0
  71. package/lib/core/web3.helpers.js +365 -0
  72. package/lib/core/web3.helpers.js.map +1 -0
  73. package/lib/core/write.actions.d.ts +9 -0
  74. package/lib/core/write.actions.js +51 -0
  75. package/lib/core/write.actions.js.map +1 -0
  76. package/lib/index.js +2 -2
  77. package/lib/index.js.map +1 -1
  78. package/lib/modules/vaults/adapter.helpers.js +4 -4
  79. package/lib/modules/vaults/adapter.helpers.js.map +1 -1
  80. package/lib/modules/vaults/constants.d.ts +63 -0
  81. package/lib/modules/vaults/constants.js +186 -0
  82. package/lib/modules/vaults/constants.js.map +1 -0
  83. package/lib/modules/vaults/getters.js +33 -7
  84. package/lib/modules/vaults/getters.js.map +1 -1
  85. package/lib/modules/vaults/main.js +2 -5
  86. package/lib/modules/vaults/main.js.map +1 -1
  87. package/lib/modules/vaults/utils.js +6 -6
  88. package/lib/modules/vaults/utils.js.map +1 -1
  89. package/lib/modules/vaults/vault.actions.d.ts +10 -0
  90. package/lib/modules/vaults/vault.actions.js +95 -0
  91. package/lib/modules/vaults/vault.actions.js.map +1 -0
  92. package/lib/services/debank/utils.js +4 -4
  93. package/lib/services/debank/utils.js.map +1 -1
  94. package/lib/services/octavfi/fetcher.d.ts +2 -0
  95. package/lib/services/octavfi/fetcher.js +73 -0
  96. package/lib/services/octavfi/fetcher.js.map +1 -0
  97. package/lib/services/octavfi/index.d.ts +3 -0
  98. package/lib/services/octavfi/index.js +20 -0
  99. package/lib/services/octavfi/index.js.map +1 -0
  100. package/lib/services/octavfi/types.d.ts +34 -0
  101. package/lib/services/octavfi/types.js +3 -0
  102. package/lib/services/octavfi/types.js.map +1 -0
  103. package/lib/services/octavfi/utils.d.ts +3 -0
  104. package/lib/services/octavfi/utils.js +178 -0
  105. package/lib/services/octavfi/utils.js.map +1 -0
  106. package/package.json +12 -12
  107. package/lib/abis/TokenizedVaultV2WithDepositWithPermit.d.ts +0 -78
  108. package/lib/abis/TokenizedVaultV2WithDepositWithPermit.js +0 -1878
  109. package/lib/abis/TokenizedVaultV2WithDepositWithPermit.js.map +0 -1
  110. package/lib/verify.d.ts +0 -2
  111. package/lib/verify.js +0 -33
  112. package/lib/verify.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CACHE = void 0;
3
+ exports.setSafeCache = exports.getSafeCache = exports.CACHE = void 0;
4
4
  exports.fetchAugustWithKey = fetchAugustWithKey;
5
5
  exports.fetchAugustPublic = fetchAugustPublic;
6
6
  exports.fetchAugustWithBearer = fetchAugustWithBearer;
@@ -11,21 +11,36 @@ exports.fetchTokenizedVaults = fetchTokenizedVaults;
11
11
  exports.fetchTokenPrice = fetchTokenPrice;
12
12
  exports.fetchTokenizedVaultLoans = fetchTokenizedVaultLoans;
13
13
  exports.promiseSettle = promiseSettle;
14
- const helpers_core_1 = require("./helpers.core");
14
+ const core_1 = require("./helpers/core");
15
15
  const ethers_1 = require("ethers");
16
16
  const abis_1 = require("../abis");
17
17
  const lru_cache_1 = require("lru-cache");
18
18
  const solana_1 = require("../adapters/solana");
19
19
  const fetcher_1 = require("../services/coingecko/fetcher");
20
20
  const logger_1 = require("./logger");
21
- const helpers_web3_1 = require("./helpers.web3");
22
- const constants_core_1 = require("./constants.core");
23
- const helpers_vaults_1 = require("./helpers.vaults");
21
+ const web3_1 = require("./helpers/web3");
22
+ const core_2 = require("./constants/core");
23
+ const vaults_1 = require("./helpers/vaults");
24
24
  exports.CACHE = new lru_cache_1.LRUCache({
25
25
  max: 1000,
26
26
  ttl: 1000 * 60 * 60 * 24,
27
27
  allowStale: true,
28
28
  });
29
+ const getSafeCache = async (key) => {
30
+ if (!key)
31
+ return null;
32
+ if (exports.CACHE.has(key)) {
33
+ return exports.CACHE.get(key);
34
+ }
35
+ return null;
36
+ };
37
+ exports.getSafeCache = getSafeCache;
38
+ const setSafeCache = async (key, value) => {
39
+ if (key && value) {
40
+ exports.CACHE.set(key, value);
41
+ }
42
+ };
43
+ exports.setSafeCache = setSafeCache;
29
44
  const PRICE_CACHE = new lru_cache_1.LRUCache({
30
45
  max: 500,
31
46
  ttl: 1000 * 30,
@@ -47,9 +62,9 @@ async function fetchAugustWithKey(apiKey, relativeUrl, options) {
47
62
  accept: 'application/json',
48
63
  };
49
64
  const controller = new AbortController();
50
- const timeoutId = setTimeout(() => controller.abort(), constants_core_1.REQUEST_TIMEOUT_MS);
65
+ const timeoutId = setTimeout(() => controller.abort(), core_2.REQUEST_TIMEOUT_MS);
51
66
  try {
52
- const res = await fetch(`${constants_core_1.WEBSERVER_URL[(options?.server || 'production')]}${relativeUrl}`, {
67
+ const res = await fetch(`${core_2.WEBSERVER_URL[(options?.server || 'production')]}${relativeUrl}`, {
53
68
  headers: {
54
69
  ...defaultHeaders,
55
70
  ...options?.headers,
@@ -74,7 +89,7 @@ async function fetchAugustWithKey(apiKey, relativeUrl, options) {
74
89
  catch (error) {
75
90
  clearTimeout(timeoutId);
76
91
  if (error.name === 'AbortError') {
77
- const timeoutError = new Error(`Request timeout after ${constants_core_1.REQUEST_TIMEOUT_MS / 1000}s: ${relativeUrl}`);
92
+ const timeoutError = new Error(`Request timeout after ${core_2.REQUEST_TIMEOUT_MS / 1000}s: ${relativeUrl}`);
78
93
  logger_1.Logger.log.error('fetchAugustWithKey', timeoutError, { relativeUrl });
79
94
  throw timeoutError;
80
95
  }
@@ -87,9 +102,9 @@ async function fetchAugustPublic(relativeUrl, options) {
87
102
  accept: 'application/json',
88
103
  };
89
104
  const controller = new AbortController();
90
- const timeoutId = setTimeout(() => controller.abort(), constants_core_1.REQUEST_TIMEOUT_MS);
105
+ const timeoutId = setTimeout(() => controller.abort(), core_2.REQUEST_TIMEOUT_MS);
91
106
  try {
92
- const res = await fetch(`${constants_core_1.WEBSERVER_URL['public']}${relativeUrl}`, {
107
+ const res = await fetch(`${core_2.WEBSERVER_URL['public']}${relativeUrl}`, {
93
108
  headers: {
94
109
  ...defaultHeaders,
95
110
  ...options?.headers,
@@ -114,7 +129,7 @@ async function fetchAugustPublic(relativeUrl, options) {
114
129
  catch (error) {
115
130
  clearTimeout(timeoutId);
116
131
  if (error.name === 'AbortError') {
117
- const timeoutError = new Error(`Request timeout after ${constants_core_1.REQUEST_TIMEOUT_MS / 1000}s: ${relativeUrl}`);
132
+ const timeoutError = new Error(`Request timeout after ${core_2.REQUEST_TIMEOUT_MS / 1000}s: ${relativeUrl}`);
118
133
  logger_1.Logger.log.error('fetchAugustPublic', timeoutError, { relativeUrl });
119
134
  throw timeoutError;
120
135
  }
@@ -128,9 +143,9 @@ async function fetchAugustWithBearer(bearerToken, relativeUrl, options) {
128
143
  accept: 'application/json',
129
144
  };
130
145
  const controller = new AbortController();
131
- const timeoutId = setTimeout(() => controller.abort(), constants_core_1.REQUEST_TIMEOUT_MS);
146
+ const timeoutId = setTimeout(() => controller.abort(), core_2.REQUEST_TIMEOUT_MS);
132
147
  try {
133
- const res = await fetch(`${constants_core_1.WEBSERVER_URL[(options?.server ?? 'production')]}${relativeUrl}`, {
148
+ const res = await fetch(`${core_2.WEBSERVER_URL[(options?.server ?? 'production')]}${relativeUrl}`, {
134
149
  headers: {
135
150
  ...defaultHeaders,
136
151
  ...options.headers,
@@ -155,7 +170,7 @@ async function fetchAugustWithBearer(bearerToken, relativeUrl, options) {
155
170
  catch (error) {
156
171
  clearTimeout(timeoutId);
157
172
  if (error.name === 'AbortError') {
158
- const timeoutError = new Error(`Request timeout after ${constants_core_1.REQUEST_TIMEOUT_MS / 1000}s: ${relativeUrl}`);
173
+ const timeoutError = new Error(`Request timeout after ${core_2.REQUEST_TIMEOUT_MS / 1000}s: ${relativeUrl}`);
159
174
  logger_1.Logger.log.error('fetchAugustWithBearer', timeoutError, { relativeUrl });
160
175
  throw timeoutError;
161
176
  }
@@ -196,7 +211,7 @@ async function fetchTokenizedVault(pool, headers) {
196
211
  }
197
212
  const key = `tokenized-vault-${pool}`;
198
213
  let tokenizedVault;
199
- const tokenizedVaultsResponse = await fetchAugustPublic(constants_core_1.WEBSERVER_ENDPOINTS.public.tokenizedVault.byVaultAddress(pool), { headers: headers });
214
+ const tokenizedVaultsResponse = await fetchAugustPublic(core_2.WEBSERVER_ENDPOINTS.public.tokenizedVault.byVaultAddress(pool), { headers: headers });
200
215
  tokenizedVault = (await tokenizedVaultsResponse.json());
201
216
  exports.CACHE.set(key, tokenizedVault);
202
217
  if (pool && ((0, ethers_1.isAddress)(pool) || solana_1.Solana.utils.isSolanaAddress(pool))) {
@@ -211,7 +226,7 @@ async function fetchTokenizedVaults(pool, headers) {
211
226
  tokenizedVaults = exports.CACHE.get(key);
212
227
  }
213
228
  else {
214
- const tokenizedVaultsResponse = await fetchAugustPublic(constants_core_1.WEBSERVER_ENDPOINTS.public.tokenizedVault.list, { headers: headers });
229
+ const tokenizedVaultsResponse = await fetchAugustPublic(core_2.WEBSERVER_ENDPOINTS.public.tokenizedVault.list, { headers: headers });
215
230
  tokenizedVaults =
216
231
  (await tokenizedVaultsResponse.json());
217
232
  exports.CACHE.set(key, tokenizedVaults);
@@ -268,17 +283,17 @@ async function fetchTokenPrice(symbol, provider, coinGeckoKey, headers) {
268
283
  }
269
284
  async function _fetchTokenPriceInternal(symbol, provider, coinGeckoKey, headers) {
270
285
  let tokenizedVaults;
271
- if (exports.CACHE.get(constants_core_1.WEBSERVER_ENDPOINTS.public.tokenizedVault.list)) {
272
- tokenizedVaults = exports.CACHE.get(constants_core_1.WEBSERVER_ENDPOINTS.public.tokenizedVault.list);
286
+ if (exports.CACHE.get(core_2.WEBSERVER_ENDPOINTS.public.tokenizedVault.list)) {
287
+ tokenizedVaults = exports.CACHE.get(core_2.WEBSERVER_ENDPOINTS.public.tokenizedVault.list);
273
288
  }
274
289
  else {
275
- const tokenizedVaultsResponse = await withRetry(async () => await fetchAugustPublic(constants_core_1.WEBSERVER_ENDPOINTS.public.tokenizedVault.list, { headers: headers }), 5, 2000);
290
+ const tokenizedVaultsResponse = await withRetry(async () => await fetchAugustPublic(core_2.WEBSERVER_ENDPOINTS.public.tokenizedVault.list, { headers: headers }), 5, 2000);
276
291
  if (!tokenizedVaultsResponse.ok) {
277
292
  throw new Error(`fetching tokenized vaults: ${tokenizedVaultsResponse?.statusText}`);
278
293
  }
279
294
  tokenizedVaults =
280
295
  (await tokenizedVaultsResponse.json());
281
- exports.CACHE.set(constants_core_1.WEBSERVER_ENDPOINTS.public.tokenizedVault.list, tokenizedVaults);
296
+ exports.CACHE.set(core_2.WEBSERVER_ENDPOINTS.public.tokenizedVault.list, tokenizedVaults);
282
297
  }
283
298
  const vaultArray = tokenizedVaults.map((vault) => ({
284
299
  vault: vault.address,
@@ -286,17 +301,17 @@ async function _fetchTokenPriceInternal(symbol, provider, coinGeckoKey, headers)
286
301
  }));
287
302
  const foundVaultLpAsset = vaultArray.find((v) => v.symbol?.toLowerCase() === symbol?.toLowerCase());
288
303
  const tokenizedVault = tokenizedVaults.find((vault) => vault.address === foundVaultLpAsset?.vault);
289
- const version = (0, helpers_vaults_1.getVaultVersionV2)(tokenizedVault);
304
+ const version = (0, vaults_1.getVaultVersionV2)(tokenizedVault);
290
305
  if (foundVaultLpAsset?.vault && provider && version === 'evm-2') {
291
306
  try {
292
- const vaultContract = (0, helpers_web3_1.createContract)({
307
+ const vaultContract = (0, web3_1.createContract)({
293
308
  provider,
294
309
  address: (0, ethers_1.getAddress)(foundVaultLpAsset?.vault),
295
310
  abi: abis_1.ABI_TOKENIZED_VAULT_V2,
296
311
  });
297
- const decimals = await (0, helpers_web3_1.getDecimals)(provider, await (0, helpers_web3_1.getReceiptTokenAddress)(provider, foundVaultLpAsset?.vault), false);
312
+ const decimals = await (0, web3_1.getDecimals)(provider, await (0, web3_1.getReceiptTokenAddress)(provider, foundVaultLpAsset?.vault), false);
298
313
  const sharePrice = await vaultContract.getSharePrice();
299
- return Number((0, helpers_core_1.toNormalizedBn)(sharePrice, decimals).normalized);
314
+ return Number((0, core_1.toNormalizedBn)(sharePrice, decimals).normalized);
300
315
  }
301
316
  catch (e) {
302
317
  throw new Error('failed to fetch token price for evm-2 vault');
@@ -312,7 +327,7 @@ async function _fetchTokenPriceInternal(symbol, provider, coinGeckoKey, headers)
312
327
  }
313
328
  const json = (await res.json());
314
329
  if (foundVaultLpAsset && provider) {
315
- const vaultContract = (0, helpers_web3_1.createContract)({
330
+ const vaultContract = (0, web3_1.createContract)({
316
331
  provider,
317
332
  address: (0, ethers_1.getAddress)(foundVaultLpAsset.vault),
318
333
  abi: abis_1.ABI_LENDING_POOL_V2,
@@ -323,14 +338,14 @@ async function _fetchTokenPriceInternal(symbol, provider, coinGeckoKey, headers)
323
338
  vaultContract.decimals(),
324
339
  ]));
325
340
  const ratio = (totalAssets || BigInt(0)) / (totalSupply || BigInt(0)) || 1;
326
- return json.price * Number((0, helpers_core_1.toNormalizedBn)(ratio, decimals).normalized);
341
+ return json.price * Number((0, core_1.toNormalizedBn)(ratio, decimals).normalized);
327
342
  }
328
343
  return json.price;
329
344
  }
330
345
  catch (e) {
331
346
  const fallbackPrice = await (0, fetcher_1.fetchTokenPricesFromCoinGecko)(symbol, coinGeckoKey);
332
347
  if (foundVaultLpAsset && provider) {
333
- const vaultContract = (0, helpers_web3_1.createContract)({
348
+ const vaultContract = (0, web3_1.createContract)({
334
349
  provider,
335
350
  address: (0, ethers_1.getAddress)(foundVaultLpAsset.vault),
336
351
  abi: abis_1.ABI_LENDING_POOL_V2,
@@ -341,7 +356,7 @@ async function _fetchTokenPriceInternal(symbol, provider, coinGeckoKey, headers)
341
356
  vaultContract.decimals(),
342
357
  ]));
343
358
  const ratio = (totalAssets || BigInt(0)) / (totalSupply || BigInt(0)) || 1;
344
- return fallbackPrice * Number((0, helpers_core_1.toNormalizedBn)(ratio, decimals).normalized);
359
+ return fallbackPrice * Number((0, core_1.toNormalizedBn)(ratio, decimals).normalized);
345
360
  }
346
361
  if (fallbackPrice) {
347
362
  return fallbackPrice;
@@ -358,7 +373,7 @@ async function fetchTokenizedVaultLoans(pool, chainId, headers) {
358
373
  loans = exports.CACHE.get(key);
359
374
  }
360
375
  else {
361
- const tokenizedVaultsResponse = await fetchAugustPublic(constants_core_1.WEBSERVER_ENDPOINTS.public.tokenizedVault.loans(pool, chainId, true), { headers: headers });
376
+ const tokenizedVaultsResponse = await fetchAugustPublic(core_2.WEBSERVER_ENDPOINTS.public.tokenizedVault.loans(pool, chainId, true), { headers: headers });
362
377
  loans = (await tokenizedVaultsResponse.json()).loans;
363
378
  exports.CACHE.set(key, loans);
364
379
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../../src.ts/core/fetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../../src.ts/core/fetcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { IAddress, IVaultAdapterConfig } from '../../types';
2
+ export declare function getVaultAdapterConfig(vaultAddress: IAddress): IVaultAdapterConfig | undefined;
3
+ export declare function vaultHasAdapter(vaultAddress: IAddress): boolean;
4
+ export declare function getVaultDepositTokens(vaultAddress: IAddress, underlyingToken: IAddress): IAddress[];
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getVaultAdapterConfig = getVaultAdapterConfig;
4
+ exports.vaultHasAdapter = vaultHasAdapter;
5
+ exports.getVaultDepositTokens = getVaultDepositTokens;
6
+ const adapters_1 = require("../constants/adapters");
7
+ function getVaultAdapterConfig(vaultAddress) {
8
+ return adapters_1.VAULT_ADAPTER_CONFIGS[vaultAddress];
9
+ }
10
+ function vaultHasAdapter(vaultAddress) {
11
+ return !!adapters_1.VAULT_ADAPTER_CONFIGS[vaultAddress];
12
+ }
13
+ function getVaultDepositTokens(vaultAddress, underlyingToken) {
14
+ const adapterConfig = getVaultAdapterConfig(vaultAddress);
15
+ if (!adapterConfig) {
16
+ return [underlyingToken];
17
+ }
18
+ const allTokens = [underlyingToken];
19
+ if (adapterConfig.tokens && adapterConfig.tokens.length > 0) {
20
+ adapterConfig.tokens.forEach((token) => {
21
+ if (!allTokens.includes(token)) {
22
+ allTokens.push(token);
23
+ }
24
+ });
25
+ }
26
+ return allTokens;
27
+ }
28
+ //# sourceMappingURL=adapters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../../src.ts/core/helpers/adapters.ts"],"names":[],"mappings":";;AAMA,sDAIC;AAKD,0CAEC;AAKD,sDAuBC;AA5CD,oDAA8D;AAK9D,SAAgB,qBAAqB,CACnC,YAAsB;IAEtB,OAAO,gCAAqB,CAAC,YAAY,CAAC,CAAC;AAC7C,CAAC;AAKD,SAAgB,eAAe,CAAC,YAAsB;IACpD,OAAO,CAAC,CAAC,gCAAqB,CAAC,YAAY,CAAC,CAAC;AAC/C,CAAC;AAKD,SAAgB,qBAAqB,CACnC,YAAsB,EACtB,eAAyB;IAEzB,MAAM,aAAa,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAE1D,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,CAAC,eAAe,CAAC,CAAC;IAC3B,CAAC;IAGD,MAAM,SAAS,GAAG,CAAC,eAAe,CAAC,CAAC;IAEpC,IAAI,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAE5D,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACrC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/B,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { INormalizedNumber } from '../../types';
2
+ export declare function toNormalizedBn(value: string | bigint | number, decimals?: number | BigInt): INormalizedNumber;
3
+ export declare function getFallbackRpcUrls(chainId: number): string[];
4
+ export declare const filterOutBySize: (usdAmount: number) => boolean;
5
+ export declare function toTitleCase(str: string, type?: 'camel'): string;
6
+ export declare function truncate(s: string, amount?: number): string;
7
+ export declare function round(value: number | string | bigint, options?: {
8
+ showing?: number | 'all';
9
+ usd?: boolean;
10
+ decimals?: number;
11
+ }): string;
12
+ export declare function loanStateToReadable(loanState: number | bigint): "PREAPPROVED" | "FUNDING_REQUIRED" | "FUNDED" | "ACTIVE" | "CANCELLED" | "MATURED" | "CLOSED";
13
+ export declare function dateToUnix(date: Date): number;
14
+ export declare function unixToDate(epoch: number): Date;
15
+ export declare function isEarlierThanNow(startTime: Date): boolean;
16
+ export declare function daysAgo(days: number): Date;
17
+ export declare function prepareDateForDb(date: string | Date): string;
18
+ export declare function orderObjArrByDate(objectArray: any[], options?: {
19
+ key?: string;
20
+ order?: 'asc' | 'desc';
21
+ }): any[];
22
+ export declare function calculateWeights(data?: Array<any>, weightProperty?: string): any[];
23
+ export declare function calculateWeightedAverage(data?: Array<any>, valueProperty?: string, weightProperty?: string): any;
@@ -0,0 +1,210 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.filterOutBySize = void 0;
4
+ exports.toNormalizedBn = toNormalizedBn;
5
+ exports.getFallbackRpcUrls = getFallbackRpcUrls;
6
+ exports.toTitleCase = toTitleCase;
7
+ exports.truncate = truncate;
8
+ exports.round = round;
9
+ exports.loanStateToReadable = loanStateToReadable;
10
+ exports.dateToUnix = dateToUnix;
11
+ exports.unixToDate = unixToDate;
12
+ exports.isEarlierThanNow = isEarlierThanNow;
13
+ exports.daysAgo = daysAgo;
14
+ exports.prepareDateForDb = prepareDateForDb;
15
+ exports.orderObjArrByDate = orderObjArrByDate;
16
+ exports.calculateWeights = calculateWeights;
17
+ exports.calculateWeightedAverage = calculateWeightedAverage;
18
+ const web3_1 = require("../constants/web3");
19
+ const ethers_1 = require("ethers");
20
+ function toNormalizedBn(value, decimals = 18) {
21
+ if (!value)
22
+ return { normalized: '0', raw: BigInt(0).toString() };
23
+ const sanitize = (val, decimals) => {
24
+ const [whole, frac = ''] = val.split('.');
25
+ const trimmedFrac = frac.slice(0, decimals);
26
+ return trimmedFrac ? `${whole}.${trimmedFrac}` : whole;
27
+ };
28
+ if (typeof value === 'string' || typeof value === 'number') {
29
+ const strVal = String(value);
30
+ const safeVal = sanitize(strVal, Number(decimals));
31
+ return {
32
+ normalized: safeVal,
33
+ raw: (0, ethers_1.parseUnits)(safeVal, Number(decimals)).toString(),
34
+ };
35
+ }
36
+ else {
37
+ return {
38
+ normalized: (0, ethers_1.formatUnits)(value, Number(decimals)) ?? '0',
39
+ raw: value.toString(),
40
+ };
41
+ }
42
+ }
43
+ function getFallbackRpcUrls(chainId) {
44
+ return web3_1.FALLBACK_RPC_URLS[chainId] || [];
45
+ }
46
+ const filterOutBySize = (usdAmount) => usdAmount > 3000;
47
+ exports.filterOutBySize = filterOutBySize;
48
+ function toTitleCase(str, type) {
49
+ if (!str)
50
+ return;
51
+ switch (type) {
52
+ case 'camel': {
53
+ const words = Array.from(str)
54
+ .map((letter) => {
55
+ if (letter === letter.toUpperCase()) {
56
+ return ` ${letter}`;
57
+ }
58
+ return letter;
59
+ })
60
+ .join('');
61
+ const _words = str.split(' ')?.map((w) => w.toLowerCase());
62
+ for (let i = 0; i < words.length; i++) {
63
+ _words[i] = _words[i][0].toUpperCase() + _words[i].substr(1);
64
+ }
65
+ return _words.join(' ');
66
+ }
67
+ default: {
68
+ const words = str.split(' ')?.map((w) => w.toLowerCase());
69
+ for (let i = 0; i < words.length; i++) {
70
+ words[i] = words[i][0].toUpperCase() + words[i].substr(1);
71
+ }
72
+ return words.join(' ');
73
+ }
74
+ }
75
+ }
76
+ function truncate(s, amount) {
77
+ if (typeof s !== 'string') {
78
+ if (s !== undefined)
79
+ console.error('#truncate: not a string', s);
80
+ return '';
81
+ }
82
+ if (!s)
83
+ return s;
84
+ if (s === 'N/A')
85
+ return s;
86
+ return `${s.slice(0, amount ? amount : 4)}...${s.slice(amount ? amount * -1 : -4)}`;
87
+ }
88
+ function round(value, options) {
89
+ let _value;
90
+ if (typeof value === 'bigint') {
91
+ _value = toNormalizedBn(value, options.decimals ?? web3_1.FALLBACK_DECIMALS).normalized;
92
+ }
93
+ else {
94
+ _value = String(value);
95
+ if (_value.includes(' '))
96
+ _value = _value.split(' ')[0];
97
+ }
98
+ if (options?.usd) {
99
+ const usdFormatter = new Intl.NumberFormat('en-US', {
100
+ style: 'currency',
101
+ currency: 'USD',
102
+ });
103
+ const valueNumber = Number(_value);
104
+ return usdFormatter.format(valueNumber) !== 'NaN'
105
+ ? usdFormatter.format(valueNumber)
106
+ : '0';
107
+ }
108
+ if (_value === '0' || _value === '0.0')
109
+ return '0.000';
110
+ if (options?.showing === 'all') {
111
+ return _value;
112
+ }
113
+ else {
114
+ const _showing = () => {
115
+ if (options?.showing && typeof options.showing === 'number')
116
+ return options?.showing;
117
+ if (options?.usd)
118
+ return 2;
119
+ if (_value?.includes('.') && _value.split('.')[0].length > 2)
120
+ return 3;
121
+ if (_value?.length && _value?.length > 6)
122
+ return 6;
123
+ return 4;
124
+ };
125
+ const numberFormatter = new Intl.NumberFormat('en-US', {
126
+ minimumFractionDigits: _showing(),
127
+ maximumFractionDigits: _showing(),
128
+ });
129
+ return numberFormatter.format(Number(_value)) !== 'NaN'
130
+ ? numberFormatter.format(Number(_value))
131
+ : '0';
132
+ }
133
+ }
134
+ function loanStateToReadable(loanState) {
135
+ switch (Number(loanState)) {
136
+ case 1:
137
+ return 'PREAPPROVED';
138
+ case 2:
139
+ return 'FUNDING_REQUIRED';
140
+ case 3:
141
+ return 'FUNDED';
142
+ case 4:
143
+ return 'ACTIVE';
144
+ case 5:
145
+ return 'CANCELLED';
146
+ case 6:
147
+ return 'MATURED';
148
+ case 7:
149
+ return 'CLOSED';
150
+ }
151
+ }
152
+ function dateToUnix(date) {
153
+ if (!date)
154
+ return Math.floor(new Date().getTime());
155
+ return Math.floor(new Date(date).getTime());
156
+ }
157
+ function unixToDate(epoch) {
158
+ if (!epoch)
159
+ return new Date();
160
+ return new Date(new Date(epoch).getTime());
161
+ }
162
+ function isEarlierThanNow(startTime) {
163
+ if (!startTime)
164
+ return true;
165
+ if (startTime <= new Date())
166
+ return true;
167
+ return false;
168
+ }
169
+ function daysAgo(days) {
170
+ const today = new Date();
171
+ return new Date(new Date().setDate(today.getDate() - days));
172
+ }
173
+ function prepareDateForDb(date) {
174
+ return new Date(date).toISOString();
175
+ }
176
+ function orderObjArrByDate(objectArray, options) {
177
+ const selectedOrder = options?.order ?? 'desc';
178
+ const selectedKey = options?.key ?? 'date';
179
+ return objectArray.sort(function (a, b) {
180
+ if (selectedOrder === 'asc')
181
+ return (new Date(a[selectedKey]).valueOf() - new Date(b[selectedKey]).valueOf());
182
+ return (new Date(b[selectedKey]).valueOf() - new Date(a[selectedKey]).valueOf());
183
+ });
184
+ }
185
+ function calculateWeights(data, weightProperty) {
186
+ if (!data || data.length === 0 || !weightProperty)
187
+ return [];
188
+ const total = data.reduce((sum, item) => sum + item[weightProperty], 0);
189
+ return data.map((item) => ({
190
+ ...item,
191
+ weight: item[weightProperty] / total,
192
+ }));
193
+ }
194
+ function calculateWeightedAverage(data, valueProperty, weightProperty) {
195
+ if (!data || data.length === 0 || !valueProperty)
196
+ return 0;
197
+ let weightedData = data;
198
+ if (!weightProperty) {
199
+ weightedData = data.map((item) => ({
200
+ ...item,
201
+ weight: 1 / data.length,
202
+ }));
203
+ }
204
+ else {
205
+ weightedData = calculateWeights(data, weightProperty);
206
+ }
207
+ const weightedAverage = weightedData.reduce((acc, item) => acc + item[valueProperty] * item.weight, 0);
208
+ return weightedAverage;
209
+ }
210
+ //# sourceMappingURL=core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src.ts/core/helpers/core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { Signer, Wallet } from 'ethers';
2
+ export declare function isViemWalletClient(signer: any): boolean;
3
+ export declare function viemToEthersSigner(walletClient: any): Promise<Signer | Wallet>;
4
+ export declare function normalizeSigner(signer: Signer | Wallet | any): Promise<Signer | Wallet>;
5
+ export type CompatibleSigner = Signer | Wallet | any;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isViemWalletClient = isViemWalletClient;
4
+ exports.viemToEthersSigner = viemToEthersSigner;
5
+ exports.normalizeSigner = normalizeSigner;
6
+ const ethers_1 = require("ethers");
7
+ function isViemWalletClient(signer) {
8
+ return !!(signer &&
9
+ typeof signer === 'object' &&
10
+ 'account' in signer &&
11
+ 'chain' in signer &&
12
+ 'transport' in signer &&
13
+ typeof signer.writeContract === 'function');
14
+ }
15
+ async function viemToEthersSigner(walletClient) {
16
+ if (!walletClient) {
17
+ throw new Error('WalletClient is required');
18
+ }
19
+ const { account, chain, transport } = walletClient;
20
+ if (!account) {
21
+ throw new Error('WalletClient must have an account');
22
+ }
23
+ const provider = new ethers_1.BrowserProvider({
24
+ request: async ({ method, params }) => {
25
+ if (method === 'eth_sendTransaction') {
26
+ const [tx] = params;
27
+ return walletClient.sendTransaction({
28
+ ...tx,
29
+ account,
30
+ chain,
31
+ });
32
+ }
33
+ return transport({ chain }).request({ method, params });
34
+ },
35
+ }, chain?.id);
36
+ return provider.getSigner(account.address);
37
+ }
38
+ function isEthersSigner(signer) {
39
+ return (signer &&
40
+ typeof signer === 'object' &&
41
+ typeof signer.signMessage === 'function' &&
42
+ typeof signer.signTransaction === 'function' &&
43
+ (signer.provider !== undefined || signer._isSigner === true));
44
+ }
45
+ async function normalizeSigner(signer) {
46
+ if (isEthersSigner(signer)) {
47
+ return signer;
48
+ }
49
+ if (isViemWalletClient(signer)) {
50
+ return viemToEthersSigner(signer);
51
+ }
52
+ throw new Error('Invalid signer type. Expected ethers Signer, ethers Wallet, or viem WalletClient');
53
+ }
54
+ //# sourceMappingURL=signer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../src.ts/core/helpers/signer.ts"],"names":[],"mappings":";;AAcA,gDAUC;AAQD,gDAsCC;AAwBD,0CAiBC;AA/GD,mCAAyD;AAczD,SAAgB,kBAAkB,CAAC,MAAW;IAE5C,OAAO,CAAC,CAAC,CACP,MAAM;QACN,OAAO,MAAM,KAAK,QAAQ;QAC1B,SAAS,IAAI,MAAM;QACnB,OAAO,IAAI,MAAM;QACjB,WAAW,IAAI,MAAM;QACrB,OAAO,MAAM,CAAC,aAAa,KAAK,UAAU,CAC3C,CAAC;AACJ,CAAC;AAQM,KAAK,UAAU,kBAAkB,CACtC,YAAiB;IAEjB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IAGD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC;IAEnD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAGD,MAAM,QAAQ,GAAG,IAAI,wBAAe,CAClC;QACE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAO,EAAE,EAAE;YAEzC,IAAI,MAAM,KAAK,qBAAqB,EAAE,CAAC;gBAErC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;gBACpB,OAAO,YAAY,CAAC,eAAe,CAAC;oBAClC,GAAG,EAAE;oBACL,OAAO;oBACP,KAAK;iBACN,CAAC,CAAC;YACL,CAAC;YAGD,OAAO,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1D,CAAC;KACF,EACD,KAAK,EAAE,EAAE,CACV,CAAC;IAGF,OAAO,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAC7C,CAAC;AAOD,SAAS,cAAc,CAAC,MAAW;IAEjC,OAAO,CACL,MAAM;QACN,OAAO,MAAM,KAAK,QAAQ;QAC1B,OAAO,MAAM,CAAC,WAAW,KAAK,UAAU;QACxC,OAAO,MAAM,CAAC,eAAe,KAAK,UAAU;QAC5C,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,CAC7D,CAAC;AACJ,CAAC;AAQM,KAAK,UAAU,eAAe,CACnC,MAA6B;IAG7B,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO,MAAM,CAAC;IAChB,CAAC;IAGD,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAGD,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;AACJ,CAAC"}