@augustdigital/sdk 4.7.2-alpha → 4.7.2-beta

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 (38) hide show
  1. package/lib/abis/TokenizedVaultV2WithDepositWithPermit.d.ts +78 -0
  2. package/lib/abis/TokenizedVaultV2WithDepositWithPermit.js +1878 -0
  3. package/lib/abis/TokenizedVaultV2WithDepositWithPermit.js.map +1 -0
  4. package/lib/core/fetcher.d.ts +1 -0
  5. package/lib/core/fetcher.js +15 -0
  6. package/lib/core/fetcher.js.map +1 -1
  7. package/lib/core/helpers.web3.js +2 -2
  8. package/lib/core/helpers.web3.js.map +1 -1
  9. package/lib/modules/vaults/getters.js +11 -10
  10. package/lib/modules/vaults/getters.js.map +1 -1
  11. package/lib/modules/vaults/utils.js +2 -2
  12. package/lib/modules/vaults/utils.js.map +1 -1
  13. package/lib/modules/vaults/write.actions.js +2 -2
  14. package/lib/modules/vaults/write.actions.js.map +1 -1
  15. package/lib/services/subgraph/vaults.js +4 -4
  16. package/lib/services/subgraph/vaults.js.map +1 -1
  17. package/package.json +12 -12
  18. package/lib/core/constants.d.ts +0 -88
  19. package/lib/core/constants.js +0 -148
  20. package/lib/core/constants.js.map +0 -1
  21. package/lib/core/core.helpers.d.ts +0 -23
  22. package/lib/core/core.helpers.js +0 -210
  23. package/lib/core/core.helpers.js.map +0 -1
  24. package/lib/core/read.actions.d.ts +0 -3
  25. package/lib/core/read.actions.js +0 -39
  26. package/lib/core/read.actions.js.map +0 -1
  27. package/lib/core/web3.helpers.d.ts +0 -29
  28. package/lib/core/web3.helpers.js +0 -356
  29. package/lib/core/web3.helpers.js.map +0 -1
  30. package/lib/core/write.actions.d.ts +0 -9
  31. package/lib/core/write.actions.js +0 -51
  32. package/lib/core/write.actions.js.map +0 -1
  33. package/lib/modules/vaults/constants.d.ts +0 -65
  34. package/lib/modules/vaults/constants.js +0 -194
  35. package/lib/modules/vaults/constants.js.map +0 -1
  36. package/lib/modules/vaults/vault.actions.d.ts +0 -10
  37. package/lib/modules/vaults/vault.actions.js +0 -95
  38. package/lib/modules/vaults/vault.actions.js.map +0 -1
@@ -1,210 +0,0 @@
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 constants_1 = require("./constants");
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 constants_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 ?? constants_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.helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"core.helpers.js","sourceRoot":"","sources":["../../src.ts/core/core.helpers.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import { IContractWriteOptions } from './write.actions';
2
- import { IContractRunner } from '../types';
3
- export declare function allowance(signer: IContractRunner, options: IContractWriteOptions): Promise<import("..").INormalizedNumber>;
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.allowance = allowance;
4
- const abis_1 = require("../abis");
5
- const __1 = require("..");
6
- const web3_helpers_1 = require("./web3.helpers");
7
- async function allowance(signer, options) {
8
- const { wallet, target } = options;
9
- const [goodWallet, goodPool] = [
10
- (0, web3_helpers_1.checkAddress)(wallet, console, 'wallet'),
11
- (0, web3_helpers_1.checkAddress)(target, console),
12
- ];
13
- if (!goodWallet || !goodPool)
14
- return;
15
- try {
16
- const poolContract = (0, web3_helpers_1.createContract)({
17
- address: target,
18
- abi: abis_1.ABI_LENDING_POOLS,
19
- provider: signer,
20
- });
21
- const [asset, decimals] = await Promise.all([
22
- poolContract.asset(),
23
- poolContract.decimals(),
24
- ]);
25
- const depositTokenContract = (0, web3_helpers_1.createContract)({
26
- address: asset,
27
- abi: abis_1.ABI_ERC20,
28
- provider: signer,
29
- });
30
- const _allowance = (await depositTokenContract.allowance(wallet, target));
31
- const normalized = (0, __1.toNormalizedBn)(_allowance, decimals);
32
- console.log('#allowance:', normalized);
33
- return normalized;
34
- }
35
- catch (e) {
36
- console.error('#allowance', e);
37
- }
38
- }
39
- //# sourceMappingURL=read.actions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"read.actions.js","sourceRoot":"","sources":["../../src.ts/core/read.actions.ts"],"names":[],"mappings":";;AAYA,8BAuCC;AAnDD,kCAAuD;AACvD,0BAAoC;AACpC,iDAA8D;AAUvD,KAAK,UAAU,SAAS,CAC7B,MAAuB,EACvB,OAA8B;IAE9B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACnC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG;QAC7B,IAAA,2BAAY,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;QACvC,IAAA,2BAAY,EAAC,MAAM,EAAE,OAAO,CAAC;KAC9B,CAAC;IACF,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ;QAAE,OAAO;IAErC,IAAI,CAAC;QAEH,MAAM,YAAY,GAAG,IAAA,6BAAc,EAAC;YAClC,OAAO,EAAE,MAAM;YACf,GAAG,EAAE,wBAAiB;YACtB,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC1C,YAAY,CAAC,KAAK,EAAqB;YACvC,YAAY,CAAC,QAAQ,EAAqB;SAC3C,CAAC,CAAC;QAEH,MAAM,oBAAoB,GAAG,IAAA,6BAAc,EAAC;YAC1C,OAAO,EAAE,KAAK;YACd,GAAG,EAAE,gBAAS;YACd,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,CAAC,MAAM,oBAAoB,CAAC,SAAS,CACtD,MAAM,EACN,MAAM,CACP,CAAW,CAAC;QACb,MAAM,UAAU,GAAG,IAAA,kBAAc,EAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACvC,OAAO,UAAU,CAAC;IACpB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;AACH,CAAC"}
@@ -1,29 +0,0 @@
1
- import { Contract, ethers, Interface, InterfaceAbi } from 'ethers';
2
- import { IAddress, IChainId, IContractRunner, IExplorerType, IInfuraOptions } from '../types';
3
- export declare const determineBlockCutoff: (chain: number) => 120000 | 150000;
4
- export declare const determineBlockSkipInternal: (chain: number) => 8000 | 50000;
5
- export declare const getChainId: (provider: IContractRunner) => Promise<number>;
6
- export declare function createContract({ provider, address, abi, }: {
7
- address: string;
8
- provider: IContractRunner;
9
- abi: Interface | InterfaceAbi;
10
- }): Contract;
11
- export declare const createProvider: (rpcUrl: string) => any;
12
- export declare const getInfuraProvider: (infura: IInfuraOptions) => ethers.JsonRpcProvider;
13
- export declare const explorerLink: (hex: IAddress, chain: IChainId, type: IExplorerType) => string;
14
- export declare const getDecimals: (provider: IContractRunner, address: IAddress) => Promise<any>;
15
- export declare const getReceiptTokenAddress: (provider: IContractRunner, address: IAddress) => Promise<any>;
16
- export declare const getSymbol: (provider: IContractRunner, address: IAddress | undefined) => Promise<any>;
17
- export declare function getTokenMetadata(provider: IContractRunner, asset: IAddress, meta: ('symbol' | 'decimals' | 'name' | 'totalSupply')[]): Promise<any[]>;
18
- export declare const getManagementFeePercent: (provider: IContractRunner, address: IAddress) => Promise<number>;
19
- export declare function simulateTransaction(provider: IContractRunner, abi: string[] | any, functionName: string, options?: {
20
- args?: (string | number | bigint)[][];
21
- from?: string;
22
- to?: string;
23
- }): Promise<boolean | ethers.Result>;
24
- export declare function checkAddress(address: string, logger?: any, type?: 'wallet' | 'contract'): boolean;
25
- type ILoanOracleFeeCategories = 'LOAN.REPAY.INTERESTS';
26
- export declare function getLoanOracleFeeRate(provider: IContractRunner, category_id: ILoanOracleFeeCategories, address: IAddress, chainId?: number): Promise<number>;
27
- export declare function getHistoricalContractData(provider: IContractRunner, contractAddress: IAddress, abi: Interface | InterfaceAbi, methodName: string, args: (string | number | bigint | boolean)[], startBlock: number, endBlock: number, blockInterval?: number): Promise<any[]>;
28
- export declare function getHistoricalContractDataByDate(provider: IContractRunner, contractAddress: IAddress, abi: Interface | InterfaceAbi, methodName: string, args: (string | number | bigint | boolean)[], startDate: string | number, endDate: string | number, intervalHours?: number): Promise<any[]>;
29
- export {};
@@ -1,356 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getManagementFeePercent = exports.getSymbol = exports.getReceiptTokenAddress = exports.getDecimals = exports.explorerLink = exports.getInfuraProvider = exports.createProvider = exports.getChainId = exports.determineBlockSkipInternal = exports.determineBlockCutoff = void 0;
4
- exports.createContract = createContract;
5
- exports.getTokenMetadata = getTokenMetadata;
6
- exports.simulateTransaction = simulateTransaction;
7
- exports.checkAddress = checkAddress;
8
- exports.getLoanOracleFeeRate = getLoanOracleFeeRate;
9
- exports.getHistoricalContractData = getHistoricalContractData;
10
- exports.getHistoricalContractDataByDate = getHistoricalContractDataByDate;
11
- const ethers_1 = require("ethers");
12
- const _1 = require(".");
13
- const solana_1 = require("../adapters/solana");
14
- const abis_1 = require("../abis");
15
- const TokenizedVaultV2_1 = require("../abis/TokenizedVaultV2");
16
- const determineBlockCutoff = (chain) => {
17
- switch (chain) {
18
- case 56:
19
- return 120000;
20
- case 43114:
21
- return 120000;
22
- default:
23
- return 150000;
24
- }
25
- };
26
- exports.determineBlockCutoff = determineBlockCutoff;
27
- const determineBlockSkipInternal = (chain) => {
28
- switch (chain) {
29
- case 43114:
30
- return 8000;
31
- case 56:
32
- return 8000;
33
- default:
34
- return 50000;
35
- }
36
- };
37
- exports.determineBlockSkipInternal = determineBlockSkipInternal;
38
- const getChainId = async (provider) => {
39
- try {
40
- if (!provider?._network) {
41
- return Number((await provider.getNetwork()).chainId);
42
- }
43
- else {
44
- return Number(provider?._network.chainId);
45
- }
46
- }
47
- catch (e) {
48
- return Number((await provider.getNetwork()).chainId);
49
- }
50
- };
51
- exports.getChainId = getChainId;
52
- function createContract({ provider, address, abi, }) {
53
- const goodAddress = checkAddress(address);
54
- if (!goodAddress)
55
- return;
56
- const contract = new ethers_1.Contract(address, abi, provider);
57
- if (!contract) {
58
- console.error('#createContract', 'contract does not exist on connected chain');
59
- return;
60
- }
61
- return contract;
62
- }
63
- const createProvider = (rpcUrl) => {
64
- if (_1.CACHE.has(rpcUrl))
65
- return _1.CACHE.get(rpcUrl);
66
- const provider = new ethers_1.JsonRpcProvider(rpcUrl);
67
- _1.CACHE.set(rpcUrl, provider);
68
- return provider;
69
- };
70
- exports.createProvider = createProvider;
71
- const getInfuraProvider = (infura) => {
72
- let baseUrl = 'https://';
73
- switch (infura.chainId) {
74
- case 8453: {
75
- baseUrl = baseUrl + 'base-mainnet';
76
- break;
77
- }
78
- case 43114: {
79
- baseUrl = baseUrl + 'avalanche-mainnet';
80
- break;
81
- }
82
- case 137: {
83
- baseUrl = baseUrl + 'polygon-mainnet';
84
- break;
85
- }
86
- case 42161: {
87
- baseUrl = baseUrl + 'arbitrum-mainnet';
88
- break;
89
- }
90
- default: {
91
- baseUrl = baseUrl + 'mainnet';
92
- break;
93
- }
94
- }
95
- return new ethers_1.JsonRpcProvider(`${baseUrl}.infura.io/v3/${infura.apiKey}`);
96
- };
97
- exports.getInfuraProvider = getInfuraProvider;
98
- const explorerLink = (hex, chain, type) => {
99
- if (!chain)
100
- return;
101
- return `${_1.NETWORKS[chain].explorer}/${type}/${hex}`;
102
- };
103
- exports.explorerLink = explorerLink;
104
- const getDecimals = async (provider, address) => {
105
- if (solana_1.Solana.utils.isSolanaAddress(address))
106
- return solana_1.Solana.constants.fallbackDecimals;
107
- if (!(address && provider))
108
- return;
109
- const key = `decimals-${address}`;
110
- try {
111
- if (_1.CACHE.get(key))
112
- return _1.CACHE.get(key);
113
- const contract = new ethers_1.Contract(address, [_1.MIN_ABIS.decimals], provider);
114
- const decimals = (await contract.decimals());
115
- _1.CACHE.set(key, decimals);
116
- return decimals;
117
- }
118
- catch (e) {
119
- console.error('#getDecimals:', e);
120
- }
121
- };
122
- exports.getDecimals = getDecimals;
123
- const getReceiptTokenAddress = async (provider, address) => {
124
- if (!(address && provider))
125
- return;
126
- const key = `receipt-token-${address}`;
127
- try {
128
- if (_1.CACHE.get(key))
129
- return _1.CACHE.get(key);
130
- const vaultContract = new ethers_1.Contract(address, TokenizedVaultV2_1.ABI_TOKENIZED_VAULT_V2, provider);
131
- console.log('vaultContract', await vaultContract.getAddress());
132
- const receiptToken = (await vaultContract.lpTokenAddress());
133
- console.log('receiptToken', receiptToken);
134
- _1.CACHE.set(key, receiptToken);
135
- return receiptToken;
136
- }
137
- catch (e) {
138
- console.error('#getReceiptTokenAddress:', e);
139
- }
140
- };
141
- exports.getReceiptTokenAddress = getReceiptTokenAddress;
142
- const getSymbol = async (provider, address) => {
143
- if (!(address && provider))
144
- return;
145
- const key = `symbol-${address}`;
146
- try {
147
- if (_1.CACHE.get(key))
148
- return _1.CACHE.get(key);
149
- const contract = new ethers_1.Contract(address, [_1.MIN_ABIS.symbol], provider);
150
- const symbol = (await contract.symbol());
151
- _1.CACHE.set(key, symbol);
152
- return symbol;
153
- }
154
- catch (e) {
155
- console.error('#getSymbol:', e);
156
- }
157
- };
158
- exports.getSymbol = getSymbol;
159
- async function getTokenMetadata(provider, asset, meta) {
160
- if (!asset)
161
- return [];
162
- function buildAbi() {
163
- const abiArr = [];
164
- if (meta?.includes('name'))
165
- abiArr.push(_1.MIN_ABIS.name);
166
- if (meta?.includes('symbol'))
167
- abiArr.push(_1.MIN_ABIS.symbol);
168
- if (meta?.includes('decimals'))
169
- abiArr.push(_1.MIN_ABIS.decimals);
170
- if (meta?.includes('totalSupply'))
171
- abiArr.push(_1.MIN_ABIS.totalSupply);
172
- return abiArr;
173
- }
174
- try {
175
- const contract = new ethers_1.Contract(asset, buildAbi(), provider);
176
- const getterArr = [];
177
- if (meta?.includes('name'))
178
- getterArr.push(contract.name());
179
- if (meta?.includes('symbol'))
180
- getterArr.push(contract.symbol());
181
- if (meta?.includes('decimals'))
182
- getterArr.push(contract.decimals());
183
- if (meta?.includes('totalSupply'))
184
- getterArr.push(contract.totalSupply());
185
- return await Promise.all(getterArr);
186
- }
187
- catch (e) {
188
- console.error('#getTokenMetadata:', e);
189
- return [];
190
- }
191
- }
192
- const getManagementFeePercent = async (provider, address) => {
193
- if (!(address && provider))
194
- return;
195
- try {
196
- const contract = new ethers_1.Contract(address, [_1.MIN_ABIS.managementFeePercent], provider);
197
- await contract.managementFeePercent.staticCall();
198
- }
199
- catch (e) {
200
- console.error('#getManagementFeePercent::simulate:', e);
201
- return undefined;
202
- }
203
- try {
204
- const contract = new ethers_1.Contract(address, [_1.MIN_ABIS.managementFeePercent], provider);
205
- const fee = (await contract.managementFeePercent());
206
- return Number(fee) / 100;
207
- }
208
- catch (e) {
209
- console.error('#getManagementFeePercent:', e);
210
- return undefined;
211
- }
212
- };
213
- exports.getManagementFeePercent = getManagementFeePercent;
214
- async function simulateTransaction(provider, abi, functionName, options) {
215
- try {
216
- const customInterface = new ethers_1.Interface(abi);
217
- const callData = customInterface.encodeFunctionData(functionName, options?.args);
218
- const response = await provider.call({
219
- from: options?.from,
220
- to: options?.to,
221
- data: callData,
222
- });
223
- if (!response)
224
- return false;
225
- return customInterface.decodeFunctionResult(functionName, response);
226
- }
227
- catch (e) {
228
- console.error('#simulateTransaction:', e);
229
- if (String(e).includes('reverted with reason string "denied"'))
230
- return true;
231
- return false;
232
- }
233
- }
234
- function checkAddress(address, logger, type = 'contract') {
235
- const _logger = logger ?? console;
236
- if (!address) {
237
- _logger.error(type, 'address is undefined');
238
- return false;
239
- }
240
- if (typeof address !== 'string') {
241
- _logger.error(type, 'address not of string type:', String(typeof address), String(address));
242
- return false;
243
- }
244
- if (!(0, ethers_1.isAddress)(address)) {
245
- _logger.error(type, 'address not checksummed:', String(address));
246
- return false;
247
- }
248
- return true;
249
- }
250
- async function getLoanOracleFeeRate(provider, category_id, address, chainId) {
251
- if (!(0, ethers_1.isAddress)(address)) {
252
- console.error('#getLoanOracleFee:', 'address is undefined or not a valid address');
253
- return;
254
- }
255
- let _chainId = chainId;
256
- if (!chainId) {
257
- const chainIdRes = await (0, exports.getChainId)(provider);
258
- _chainId = Number(chainIdRes);
259
- }
260
- if (!_1.ORACLE_CONTRACTS?.[_chainId]) {
261
- console.warn('#getLoanOracleFeeRate: no oracle address for', _chainId);
262
- return Number(0);
263
- }
264
- const oracleContract = createContract({
265
- provider,
266
- address: _1.ORACLE_CONTRACTS[_chainId],
267
- abi: abis_1.ABI_FEE_ORACLE,
268
- });
269
- const hashedCategory = (0, ethers_1.keccak256)((0, ethers_1.toUtf8Bytes)(category_id));
270
- const rawFee = await oracleContract.getContextFeeRate(hashedCategory, (0, ethers_1.getAddress)(address));
271
- return Number((0, ethers_1.formatUnits)(rawFee, 6));
272
- }
273
- async function getHistoricalContractData(provider, contractAddress, abi, methodName, args = [], startBlock, endBlock, blockInterval = 1000) {
274
- const contract = new ethers_1.ethers.Contract(contractAddress, abi, provider);
275
- const results = [];
276
- if (!endBlock) {
277
- endBlock = await provider.getBlockNumber();
278
- }
279
- for (let blockNumber = startBlock; blockNumber <= endBlock; blockNumber += blockInterval) {
280
- try {
281
- const contractAtBlock = contract.connect(provider);
282
- const result = await contractAtBlock[methodName](...args, {
283
- blockTag: blockNumber,
284
- });
285
- const block = await provider.getBlock(blockNumber);
286
- results.push({
287
- blockNumber,
288
- timestamp: block.timestamp,
289
- result: result.toString(),
290
- });
291
- }
292
- catch (error) {
293
- console.error(`Error at block ${blockNumber}:`, error);
294
- }
295
- }
296
- return results;
297
- }
298
- async function getHistoricalContractDataByDate(provider, contractAddress, abi, methodName, args = [], startDate, endDate, intervalHours = 24) {
299
- const contract = new ethers_1.ethers.Contract(contractAddress, abi, provider);
300
- const startTimestamp = Math.floor(new Date(startDate).getTime() / 1000);
301
- const endTimestamp = Math.floor(new Date(endDate).getTime() / 1000);
302
- const intervalSeconds = intervalHours * 3600;
303
- const results = [];
304
- async function findBlockByTimestamp(targetTimestamp) {
305
- let left = 1;
306
- let right = await provider.getBlockNumber();
307
- let closestBlock = null;
308
- while (left <= right) {
309
- const mid = Math.floor((left + right) / 2);
310
- const block = await provider.getBlock(mid);
311
- if (!block) {
312
- right = mid - 1;
313
- continue;
314
- }
315
- if (block.timestamp === targetTimestamp) {
316
- return block;
317
- }
318
- if (!closestBlock ||
319
- Math.abs(block.timestamp - targetTimestamp) <
320
- Math.abs(closestBlock.timestamp - targetTimestamp)) {
321
- closestBlock = block;
322
- }
323
- if (block.timestamp < targetTimestamp) {
324
- left = mid + 1;
325
- }
326
- else {
327
- right = mid - 1;
328
- }
329
- }
330
- return closestBlock;
331
- }
332
- try {
333
- for (let timestamp = startTimestamp; timestamp <= endTimestamp; timestamp += intervalSeconds) {
334
- const block = await findBlockByTimestamp(timestamp);
335
- if (!block) {
336
- console.warn(`No block found for timestamp ${timestamp}`);
337
- continue;
338
- }
339
- const result = await contract[methodName](...args, {
340
- blockTag: block.number,
341
- });
342
- results.push({
343
- date: new Date(timestamp * 1000).toISOString(),
344
- blockNumber: block.number,
345
- timestamp,
346
- result: result.toString(),
347
- });
348
- }
349
- return results;
350
- }
351
- catch (error) {
352
- console.error('Error fetching historical data:', error);
353
- throw error;
354
- }
355
- }
356
- //# sourceMappingURL=web3.helpers.js.map