@huma-finance/sdk 0.0.28 → 0.0.30
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.
- package/API.md +608 -482
- package/LICENSE +660 -660
- package/README.md +34 -34
- package/dist/cjs/graphql/generatedTypes.d.ts +40 -40
- package/dist/cjs/graphql/generatedTypes.js +8 -8
- package/dist/cjs/graphql/index.d.ts +1 -1
- package/dist/cjs/graphql/index.js +4 -4
- package/dist/cjs/helpers/BaseCreditPoolReceivableContractHelper.d.ts +10 -0
- package/dist/cjs/helpers/BaseCreditPoolReceivableContractHelper.js +22 -0
- package/dist/cjs/helpers/BaseCreditPoolReceivableContractHelper.js.map +1 -0
- package/dist/cjs/helpers/ERC20TransferableReceivableContractHelper.d.ts +10 -10
- package/dist/cjs/helpers/ERC20TransferableReceivableContractHelper.js +21 -21
- package/dist/cjs/helpers/PoolContractHelper.d.ts +119 -104
- package/dist/cjs/helpers/PoolContractHelper.js +142 -104
- package/dist/cjs/helpers/PoolContractHelper.js.map +1 -1
- package/dist/cjs/helpers/RealWorldReceivableContractHelper.d.ts +10 -10
- package/dist/cjs/helpers/RealWorldReceivableContractHelper.js +21 -21
- package/dist/cjs/helpers/index.d.ts +3 -3
- package/dist/cjs/helpers/index.js +6 -6
- package/dist/cjs/hooks/index.d.ts +4 -4
- package/dist/cjs/hooks/index.js +7 -7
- package/dist/cjs/hooks/useBaseCreditPoolReceivableContract.d.ts +10 -0
- package/dist/cjs/hooks/useBaseCreditPoolReceivableContract.js +20 -0
- package/dist/cjs/hooks/useBaseCreditPoolReceivableContract.js.map +1 -0
- package/dist/cjs/hooks/useContract.d.ts +13 -13
- package/dist/cjs/hooks/useContract.js +30 -30
- package/dist/cjs/hooks/useERC20TransferableReceivableContract.d.ts +12 -12
- package/dist/cjs/hooks/useERC20TransferableReceivableContract.js +20 -20
- package/dist/cjs/hooks/usePoolContract.d.ts +60 -60
- package/dist/cjs/hooks/usePoolContract.js +53 -53
- package/dist/cjs/hooks/useRealWorldReceivableContract.d.ts +10 -10
- package/dist/cjs/hooks/useRealWorldReceivableContract.js +19 -19
- package/dist/cjs/hooks/useReceivableFactoringPoolContract.d.ts +10 -0
- package/dist/cjs/hooks/useReceivableFactoringPoolContract.js +17 -0
- package/dist/cjs/hooks/useReceivableFactoringPoolContract.js.map +1 -0
- package/dist/cjs/index.d.ts +4 -4
- package/dist/cjs/index.js +7 -7
- package/dist/cjs/services/ARWeaveService.d.ts +95 -81
- package/dist/cjs/services/ARWeaveService.js +169 -145
- package/dist/cjs/services/ARWeaveService.js.map +1 -1
- package/dist/cjs/services/EAService.d.ts +20 -20
- package/dist/cjs/services/EAService.js +33 -33
- package/dist/cjs/services/ReceivableService.d.ts +89 -89
- package/dist/cjs/services/ReceivableService.js +193 -193
- package/dist/cjs/services/SubgraphService.d.ts +53 -53
- package/dist/cjs/services/SubgraphService.js +93 -93
- package/dist/cjs/services/index.d.ts +4 -4
- package/dist/cjs/services/index.js +7 -7
- package/dist/cjs/utils/chain.d.ts +15 -15
- package/dist/cjs/utils/chain.js +37 -37
- package/dist/cjs/utils/index.d.ts +4 -4
- package/dist/cjs/utils/index.js +7 -7
- package/dist/cjs/utils/maticGasStation.d.ts +3 -3
- package/dist/cjs/utils/maticGasStation.js +38 -38
- package/dist/cjs/utils/poolInfo.d.ts +8 -8
- package/dist/cjs/utils/poolInfo.js +12 -12
- package/dist/cjs/utils/web3.d.ts +5 -4
- package/dist/cjs/utils/web3.js +33 -28
- package/dist/cjs/utils/web3.js.map +1 -1
- package/dist/graphql/generatedTypes.d.ts +40 -40
- package/dist/graphql/generatedTypes.js +4 -4
- package/dist/graphql/index.d.ts +1 -1
- package/dist/graphql/index.js +1 -1
- package/dist/helpers/BaseCreditPoolReceivableContractHelper.d.ts +10 -0
- package/dist/helpers/BaseCreditPoolReceivableContractHelper.js +18 -0
- package/dist/helpers/BaseCreditPoolReceivableContractHelper.js.map +1 -0
- package/dist/helpers/ERC20TransferableReceivableContractHelper.d.ts +10 -10
- package/dist/helpers/ERC20TransferableReceivableContractHelper.js +17 -17
- package/dist/helpers/PoolContractHelper.d.ts +119 -104
- package/dist/helpers/PoolContractHelper.js +133 -96
- package/dist/helpers/PoolContractHelper.js.map +1 -1
- package/dist/helpers/RealWorldReceivableContractHelper.d.ts +10 -10
- package/dist/helpers/RealWorldReceivableContractHelper.js +17 -17
- package/dist/helpers/index.d.ts +3 -3
- package/dist/helpers/index.js +3 -3
- package/dist/hooks/index.d.ts +4 -4
- package/dist/hooks/index.js +4 -4
- package/dist/hooks/useBaseCreditPoolReceivableContract.d.ts +10 -0
- package/dist/hooks/useBaseCreditPoolReceivableContract.js +16 -0
- package/dist/hooks/useBaseCreditPoolReceivableContract.js.map +1 -0
- package/dist/hooks/useContract.d.ts +13 -13
- package/dist/hooks/useContract.js +26 -26
- package/dist/hooks/useERC20TransferableReceivableContract.d.ts +12 -12
- package/dist/hooks/useERC20TransferableReceivableContract.js +16 -16
- package/dist/hooks/usePool.d.ts +0 -0
- package/dist/hooks/usePool.js +2 -0
- package/dist/hooks/usePool.js.map +1 -0
- package/dist/hooks/usePoolContract.d.ts +60 -60
- package/dist/hooks/usePoolContract.js +48 -48
- package/dist/hooks/useRealWorldReceivableContract.d.ts +10 -10
- package/dist/hooks/useRealWorldReceivableContract.js +15 -15
- package/dist/hooks/useReceivableFactoringPoolContract.d.ts +10 -0
- package/dist/hooks/useReceivableFactoringPoolContract.js +13 -0
- package/dist/hooks/useReceivableFactoringPoolContract.js.map +1 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.js +4 -4
- package/dist/services/ARWeaveService.d.ts +95 -81
- package/dist/services/ARWeaveService.js +164 -140
- package/dist/services/ARWeaveService.js.map +1 -1
- package/dist/services/EAService.d.ts +20 -20
- package/dist/services/EAService.js +30 -30
- package/dist/services/ReceivableService.d.ts +89 -89
- package/dist/services/ReceivableService.js +189 -189
- package/dist/services/SubgraphService.d.ts +53 -53
- package/dist/services/SubgraphService.js +90 -90
- package/dist/services/index.d.ts +4 -4
- package/dist/services/index.js +4 -4
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/utils/chain.d.ts +15 -15
- package/dist/utils/chain.js +31 -31
- package/dist/utils/index.d.ts +4 -4
- package/dist/utils/index.js +4 -4
- package/dist/utils/maticGasStation.d.ts +3 -3
- package/dist/utils/maticGasStation.js +33 -33
- package/dist/utils/poolInfo.d.ts +8 -8
- package/dist/utils/poolInfo.js +8 -8
- package/dist/utils/web3.d.ts +5 -4
- package/dist/utils/web3.js +27 -23
- package/dist/utils/web3.js.map +1 -1
- package/getting-started.md +190 -190
- package/package.json +6 -4
package/dist/utils/chain.d.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { JsonRpcProvider, JsonRpcSigner } from '@ethersproject/providers';
|
|
2
|
-
import { ethers } from 'ethers';
|
|
3
|
-
export declare function isPolygonNetwork(network: number): boolean;
|
|
4
|
-
/**
|
|
5
|
-
* Get the chain ID from a signer or provider object.
|
|
6
|
-
* @param {JsonRpcProvider | JsonRpcSigner} signerOrProvider - The signer or provider object to get the chain ID from.
|
|
7
|
-
* @returns {number} - The chain ID.
|
|
8
|
-
*/
|
|
9
|
-
export declare function getChainIdFromJsonSignerOrProvider(signerOrProvider: JsonRpcProvider | JsonRpcSigner): number;
|
|
10
|
-
/**
|
|
11
|
-
* Get the chain ID from a signer or provider object.
|
|
12
|
-
* @param {ethers.provider.Provider | ethers.Signer} signerOrProvider - The signer or provider object to get the chain ID from.
|
|
13
|
-
* @returns {number} - The chain ID.
|
|
14
|
-
*/
|
|
15
|
-
export declare function getChainIdFromSignerOrProvider(signerOrProvider: ethers.providers.Provider | ethers.Signer): Promise<number | undefined>;
|
|
1
|
+
import { JsonRpcProvider, JsonRpcSigner } from '@ethersproject/providers';
|
|
2
|
+
import { ethers } from 'ethers';
|
|
3
|
+
export declare function isPolygonNetwork(network: number): boolean;
|
|
4
|
+
/**
|
|
5
|
+
* Get the chain ID from a signer or provider object.
|
|
6
|
+
* @param {JsonRpcProvider | JsonRpcSigner} signerOrProvider - The signer or provider object to get the chain ID from.
|
|
7
|
+
* @returns {number} - The chain ID.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getChainIdFromJsonSignerOrProvider(signerOrProvider: JsonRpcProvider | JsonRpcSigner): number;
|
|
10
|
+
/**
|
|
11
|
+
* Get the chain ID from a signer or provider object.
|
|
12
|
+
* @param {ethers.provider.Provider | ethers.Signer} signerOrProvider - The signer or provider object to get the chain ID from.
|
|
13
|
+
* @returns {number} - The chain ID.
|
|
14
|
+
*/
|
|
15
|
+
export declare function getChainIdFromSignerOrProvider(signerOrProvider: ethers.providers.Provider | ethers.Signer): Promise<number | undefined>;
|
package/dist/utils/chain.js
CHANGED
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { JsonRpcProvider } from '@ethersproject/providers';
|
|
2
|
-
import { ethers } from 'ethers';
|
|
3
|
-
export function isPolygonNetwork(network) {
|
|
4
|
-
return network === 137 || network === 80001;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Get the chain ID from a signer or provider object.
|
|
8
|
-
* @param {JsonRpcProvider | JsonRpcSigner} signerOrProvider - The signer or provider object to get the chain ID from.
|
|
9
|
-
* @returns {number} - The chain ID.
|
|
10
|
-
*/
|
|
11
|
-
export function getChainIdFromJsonSignerOrProvider(signerOrProvider) {
|
|
12
|
-
return signerOrProvider instanceof JsonRpcProvider
|
|
13
|
-
? signerOrProvider.network.chainId
|
|
14
|
-
: signerOrProvider.provider.network.chainId;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Get the chain ID from a signer or provider object.
|
|
18
|
-
* @param {ethers.provider.Provider | ethers.Signer} signerOrProvider - The signer or provider object to get the chain ID from.
|
|
19
|
-
* @returns {number} - The chain ID.
|
|
20
|
-
*/
|
|
21
|
-
export async function getChainIdFromSignerOrProvider(signerOrProvider) {
|
|
22
|
-
var _a;
|
|
23
|
-
let network;
|
|
24
|
-
if (signerOrProvider instanceof ethers.providers.Provider) {
|
|
25
|
-
network = await signerOrProvider.getNetwork();
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
network = await ((_a = signerOrProvider === null || signerOrProvider === void 0 ? void 0 : signerOrProvider.provider) === null || _a === void 0 ? void 0 : _a.getNetwork());
|
|
29
|
-
}
|
|
30
|
-
return network === null || network === void 0 ? void 0 : network.chainId;
|
|
31
|
-
}
|
|
1
|
+
import { JsonRpcProvider } from '@ethersproject/providers';
|
|
2
|
+
import { ethers } from 'ethers';
|
|
3
|
+
export function isPolygonNetwork(network) {
|
|
4
|
+
return network === 137 || network === 80001;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Get the chain ID from a signer or provider object.
|
|
8
|
+
* @param {JsonRpcProvider | JsonRpcSigner} signerOrProvider - The signer or provider object to get the chain ID from.
|
|
9
|
+
* @returns {number} - The chain ID.
|
|
10
|
+
*/
|
|
11
|
+
export function getChainIdFromJsonSignerOrProvider(signerOrProvider) {
|
|
12
|
+
return signerOrProvider instanceof JsonRpcProvider
|
|
13
|
+
? signerOrProvider.network.chainId
|
|
14
|
+
: signerOrProvider.provider.network.chainId;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Get the chain ID from a signer or provider object.
|
|
18
|
+
* @param {ethers.provider.Provider | ethers.Signer} signerOrProvider - The signer or provider object to get the chain ID from.
|
|
19
|
+
* @returns {number} - The chain ID.
|
|
20
|
+
*/
|
|
21
|
+
export async function getChainIdFromSignerOrProvider(signerOrProvider) {
|
|
22
|
+
var _a;
|
|
23
|
+
let network;
|
|
24
|
+
if (signerOrProvider instanceof ethers.providers.Provider) {
|
|
25
|
+
network = await signerOrProvider.getNetwork();
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
network = await ((_a = signerOrProvider === null || signerOrProvider === void 0 ? void 0 : signerOrProvider.provider) === null || _a === void 0 ? void 0 : _a.getNetwork());
|
|
29
|
+
}
|
|
30
|
+
return network === null || network === void 0 ? void 0 : network.chainId;
|
|
31
|
+
}
|
|
32
32
|
//# sourceMappingURL=chain.js.map
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './chain';
|
|
2
|
-
export * from './web3';
|
|
3
|
-
export * from './poolInfo';
|
|
4
|
-
export * from './maticGasStation';
|
|
1
|
+
export * from './chain';
|
|
2
|
+
export * from './web3';
|
|
3
|
+
export * from './poolInfo';
|
|
4
|
+
export * from './maticGasStation';
|
package/dist/utils/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export * from './chain';
|
|
2
|
-
export * from './web3';
|
|
3
|
-
export * from './poolInfo';
|
|
4
|
-
export * from './maticGasStation';
|
|
1
|
+
export * from './chain';
|
|
2
|
+
export * from './web3';
|
|
3
|
+
export * from './poolInfo';
|
|
4
|
+
export * from './maticGasStation';
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { Overrides } from 'ethers';
|
|
2
|
-
export declare function getPolygonGasOptions(network: number): Promise<Overrides>;
|
|
3
|
-
export declare function getDefaultGasOptions(gasOpts: Overrides, network: number): Promise<Overrides>;
|
|
1
|
+
import { Overrides } from 'ethers';
|
|
2
|
+
export declare function getPolygonGasOptions(network: number): Promise<Overrides>;
|
|
3
|
+
export declare function getDefaultGasOptions(gasOpts: Overrides, network: number): Promise<Overrides>;
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
import { ethers } from 'ethers';
|
|
2
|
-
import { ChainEnum, requestGet } from '@huma-finance/shared';
|
|
3
|
-
import { isPolygonNetwork } from './chain';
|
|
4
|
-
export async function getPolygonGasOptions(network) {
|
|
5
|
-
let maxFeePerGas = ethers.BigNumber.from(40000000000); // fallback to 40 gwei
|
|
6
|
-
let maxPriorityFeePerGas = ethers.BigNumber.from(40000000000); // fallback to 40 gwei
|
|
7
|
-
try {
|
|
8
|
-
const url = network === ChainEnum.Polygon
|
|
9
|
-
? 'https://gasstation.polygon.technology/v2'
|
|
10
|
-
: 'https://gasstation-testnet.polygon.technology/v2';
|
|
11
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
12
|
-
const data = await requestGet(url);
|
|
13
|
-
maxFeePerGas = ethers.utils.parseUnits(`${Math.ceil(data.fast.maxFee)}`, 'gwei');
|
|
14
|
-
maxPriorityFeePerGas = ethers.utils.parseUnits(`${Math.ceil(data.fast.maxPriorityFee)}`, 'gwei');
|
|
15
|
-
}
|
|
16
|
-
catch (_a) {
|
|
17
|
-
// ignore
|
|
18
|
-
}
|
|
19
|
-
return {
|
|
20
|
-
maxFeePerGas,
|
|
21
|
-
maxPriorityFeePerGas,
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
export async function getDefaultGasOptions(gasOpts, network) {
|
|
25
|
-
// Return gasOpts if there are values already set
|
|
26
|
-
if (Object.keys(gasOpts).length > 0) {
|
|
27
|
-
return gasOpts;
|
|
28
|
-
}
|
|
29
|
-
if (isPolygonNetwork(network)) {
|
|
30
|
-
gasOpts = await getPolygonGasOptions(network);
|
|
31
|
-
}
|
|
32
|
-
return gasOpts;
|
|
33
|
-
}
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
import { ChainEnum, requestGet } from '@huma-finance/shared';
|
|
3
|
+
import { isPolygonNetwork } from './chain';
|
|
4
|
+
export async function getPolygonGasOptions(network) {
|
|
5
|
+
let maxFeePerGas = ethers.BigNumber.from(40000000000); // fallback to 40 gwei
|
|
6
|
+
let maxPriorityFeePerGas = ethers.BigNumber.from(40000000000); // fallback to 40 gwei
|
|
7
|
+
try {
|
|
8
|
+
const url = network === ChainEnum.Polygon
|
|
9
|
+
? 'https://gasstation.polygon.technology/v2'
|
|
10
|
+
: 'https://gasstation-testnet.polygon.technology/v2';
|
|
11
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
12
|
+
const data = await requestGet(url);
|
|
13
|
+
maxFeePerGas = ethers.utils.parseUnits(`${Math.ceil(data.fast.maxFee)}`, 'gwei');
|
|
14
|
+
maxPriorityFeePerGas = ethers.utils.parseUnits(`${Math.ceil(data.fast.maxPriorityFee)}`, 'gwei');
|
|
15
|
+
}
|
|
16
|
+
catch (_a) {
|
|
17
|
+
// ignore
|
|
18
|
+
}
|
|
19
|
+
return {
|
|
20
|
+
maxFeePerGas,
|
|
21
|
+
maxPriorityFeePerGas,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export async function getDefaultGasOptions(gasOpts, network) {
|
|
25
|
+
// Return gasOpts if there are values already set
|
|
26
|
+
if (Object.keys(gasOpts).length > 0) {
|
|
27
|
+
return gasOpts;
|
|
28
|
+
}
|
|
29
|
+
if (isPolygonNetwork(network)) {
|
|
30
|
+
gasOpts = await getPolygonGasOptions(network);
|
|
31
|
+
}
|
|
32
|
+
return gasOpts;
|
|
33
|
+
}
|
|
34
34
|
//# sourceMappingURL=maticGasStation.js.map
|
package/dist/utils/poolInfo.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { POOL_NAME, POOL_TYPE, PoolInfoType } from '@huma-finance/shared';
|
|
2
|
-
/**
|
|
3
|
-
* Returns the pool info based on the provided pool name and type, using the same chain ID as the provider/signer given
|
|
4
|
-
* @param {POOL_NAME} poolName - The name of the pool.
|
|
5
|
-
* @param {POOL_TYPE} poolType - The type of the pool.
|
|
6
|
-
* @returns {PoolInfoType|undefined} - The pool info or undefined if the chain ID is not supported.
|
|
7
|
-
*/
|
|
8
|
-
export declare const getPoolInfo: (chainId: number, poolName: POOL_NAME, poolType: POOL_TYPE) => PoolInfoType | undefined;
|
|
1
|
+
import { POOL_NAME, POOL_TYPE, PoolInfoType } from '@huma-finance/shared';
|
|
2
|
+
/**
|
|
3
|
+
* Returns the pool info based on the provided pool name and type, using the same chain ID as the provider/signer given
|
|
4
|
+
* @param {POOL_NAME} poolName - The name of the pool.
|
|
5
|
+
* @param {POOL_TYPE} poolType - The type of the pool.
|
|
6
|
+
* @returns {PoolInfoType|undefined} - The pool info or undefined if the chain ID is not supported.
|
|
7
|
+
*/
|
|
8
|
+
export declare const getPoolInfo: (chainId: number, poolName: POOL_NAME, poolType: POOL_TYPE) => PoolInfoType | undefined;
|
package/dist/utils/poolInfo.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { PoolContractMap, } from '@huma-finance/shared';
|
|
2
|
-
/**
|
|
3
|
-
* Returns the pool info based on the provided pool name and type, using the same chain ID as the provider/signer given
|
|
4
|
-
* @param {POOL_NAME} poolName - The name of the pool.
|
|
5
|
-
* @param {POOL_TYPE} poolType - The type of the pool.
|
|
6
|
-
* @returns {PoolInfoType|undefined} - The pool info or undefined if the chain ID is not supported.
|
|
7
|
-
*/
|
|
8
|
-
export const getPoolInfo = (chainId, poolName, poolType) => { var _a, _b; return (_b = (_a = PoolContractMap[chainId]) === null || _a === void 0 ? void 0 : _a[poolType]) === null || _b === void 0 ? void 0 : _b[poolName]; };
|
|
1
|
+
import { PoolContractMap, } from '@huma-finance/shared';
|
|
2
|
+
/**
|
|
3
|
+
* Returns the pool info based on the provided pool name and type, using the same chain ID as the provider/signer given
|
|
4
|
+
* @param {POOL_NAME} poolName - The name of the pool.
|
|
5
|
+
* @param {POOL_TYPE} poolType - The type of the pool.
|
|
6
|
+
* @returns {PoolInfoType|undefined} - The pool info or undefined if the chain ID is not supported.
|
|
7
|
+
*/
|
|
8
|
+
export const getPoolInfo = (chainId, poolName, poolType) => { var _a, _b; return (_b = (_a = PoolContractMap[chainId]) === null || _a === void 0 ? void 0 : _a[poolType]) === null || _b === void 0 ? void 0 : _b[poolName]; };
|
|
9
9
|
//# sourceMappingURL=poolInfo.js.map
|
package/dist/utils/web3.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Contract } from '@ethersproject/contracts';
|
|
2
|
-
import { ethers } from 'ethers';
|
|
3
|
-
export declare function isAddress(value: any): string | false;
|
|
4
|
-
export declare function getContract(address: string, ABI: any, signerOrProvider: ethers.providers.Provider | ethers.Signer): Contract;
|
|
1
|
+
import { Contract } from '@ethersproject/contracts';
|
|
2
|
+
import { ethers } from 'ethers';
|
|
3
|
+
export declare function isAddress(value: any): string | false;
|
|
4
|
+
export declare function getContract(address: string, ABI: any, signerOrProvider: ethers.providers.Provider | ethers.Signer): Contract;
|
|
5
|
+
export declare function getERC20Contract(address: string, signerOrProvider: ethers.providers.Provider | ethers.Signer): Contract;
|
package/dist/utils/web3.js
CHANGED
|
@@ -1,24 +1,28 @@
|
|
|
1
|
-
import { Contract } from '@ethersproject/contracts';
|
|
2
|
-
import { AddressZero } from '@ethersproject/constants';
|
|
3
|
-
import { getAddress } from '@ethersproject/address';
|
|
4
|
-
|
|
5
|
-
//
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
//
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
1
|
+
import { Contract } from '@ethersproject/contracts';
|
|
2
|
+
import { AddressZero } from '@ethersproject/constants';
|
|
3
|
+
import { getAddress } from '@ethersproject/address';
|
|
4
|
+
import { ERC20_ABI } from '@huma-finance/shared';
|
|
5
|
+
// returns the checksummed address if the address is valid, otherwise returns false
|
|
6
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
7
|
+
export function isAddress(value) {
|
|
8
|
+
try {
|
|
9
|
+
// Alphabetical letters must be made lowercase for getAddress to work.
|
|
10
|
+
// See documentation here: https://docs.ethers.io/v5/api/utils/address/
|
|
11
|
+
return getAddress(value.toLowerCase());
|
|
12
|
+
}
|
|
13
|
+
catch (_a) {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
export function getContract(address,
|
|
18
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
19
|
+
ABI, signerOrProvider) {
|
|
20
|
+
if (!isAddress(address) || address === AddressZero) {
|
|
21
|
+
throw Error(`Invalid 'address' parameter '${address}'.`);
|
|
22
|
+
}
|
|
23
|
+
return new Contract(address, ABI, signerOrProvider);
|
|
24
|
+
}
|
|
25
|
+
export function getERC20Contract(address, signerOrProvider) {
|
|
26
|
+
return getContract(address, ERC20_ABI, signerOrProvider);
|
|
27
|
+
}
|
|
24
28
|
//# sourceMappingURL=web3.js.map
|
package/dist/utils/web3.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web3.js","sourceRoot":"","sources":["../../src/utils/web3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"web3.js","sourceRoot":"","sources":["../../src/utils/web3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAEnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAEhD,mFAAmF;AACnF,8DAA8D;AAC9D,MAAM,UAAU,SAAS,CAAC,KAAU;IAClC,IAAI;QACF,sEAAsE;QACtE,uEAAuE;QACvE,OAAO,UAAU,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAA;KACvC;IAAC,WAAM;QACN,OAAO,KAAK,CAAA;KACb;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,OAAe;AACf,8DAA8D;AAC9D,GAAQ,EACR,gBAA2D;IAE3D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,WAAW,EAAE;QAClD,MAAM,KAAK,CAAC,gCAAgC,OAAO,IAAI,CAAC,CAAA;KACzD;IAED,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAA;AACrD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,OAAe,EACf,gBAA2D;IAE3D,OAAO,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAA;AAC1D,CAAC"}
|