@mento-protocol/mento-sdk 1.10.2 → 2.0.0-beta.10
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/README.md +114 -48
- package/dist/abis/bipoolmanager.d.ts +15 -0
- package/dist/abis/bipoolmanager.d.ts.map +1 -0
- package/dist/abis/bipoolmanager.js +26 -0
- package/dist/abis/bipoolmanager.js.map +1 -0
- package/dist/abis/broker.d.ts +2 -0
- package/dist/abis/broker.d.ts.map +1 -0
- package/dist/abis/broker.js +8 -0
- package/dist/abis/broker.js.map +1 -0
- package/dist/abis/erc20.d.ts +2 -0
- package/dist/abis/erc20.d.ts.map +1 -0
- package/dist/abis/erc20.js +11 -0
- package/dist/abis/erc20.js.map +1 -0
- package/dist/abis/index.d.ts +5 -0
- package/dist/abis/index.d.ts.map +1 -0
- package/dist/{cjs/constants → abis}/index.js +5 -2
- package/dist/abis/index.js.map +1 -0
- package/dist/abis/pricingmodule.d.ts +2 -0
- package/dist/abis/pricingmodule.d.ts.map +1 -0
- package/dist/abis/pricingmodule.js +5 -0
- package/dist/abis/pricingmodule.js.map +1 -0
- package/dist/abis/reserve.d.ts +2 -0
- package/dist/abis/reserve.d.ts.map +1 -0
- package/dist/abis/reserve.js +9 -0
- package/dist/abis/reserve.js.map +1 -0
- package/dist/abis/uniswapV3.d.ts +4 -0
- package/dist/abis/uniswapV3.d.ts.map +1 -0
- package/dist/abis/uniswapV3.js +15 -0
- package/dist/abis/uniswapV3.js.map +1 -0
- package/dist/adapters/implementations/ethersAdapter.d.ts +9 -0
- package/dist/adapters/implementations/ethersAdapter.d.ts.map +1 -0
- package/dist/adapters/implementations/ethersAdapter.js +19 -0
- package/dist/adapters/implementations/ethersAdapter.js.map +1 -0
- package/dist/adapters/implementations/ethersV5Adapter.d.ts +9 -0
- package/dist/adapters/implementations/ethersV5Adapter.d.ts.map +1 -0
- package/dist/adapters/implementations/ethersV5Adapter.js +19 -0
- package/dist/adapters/implementations/ethersV5Adapter.js.map +1 -0
- package/dist/adapters/implementations/viemAdapter.d.ts +9 -0
- package/dist/adapters/implementations/viemAdapter.d.ts.map +1 -0
- package/dist/adapters/implementations/viemAdapter.js +26 -0
- package/dist/adapters/implementations/viemAdapter.js.map +1 -0
- package/dist/adapters/index.d.ts +5 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +10 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/proxies/ethersAdapterProxy.d.ts +25 -0
- package/dist/adapters/proxies/ethersAdapterProxy.d.ts.map +1 -0
- package/dist/adapters/proxies/ethersAdapterProxy.js +71 -0
- package/dist/adapters/proxies/ethersAdapterProxy.js.map +1 -0
- package/dist/adapters/proxies/ethersV5AdapterProxy.d.ts +25 -0
- package/dist/adapters/proxies/ethersV5AdapterProxy.d.ts.map +1 -0
- package/dist/adapters/proxies/ethersV5AdapterProxy.js +71 -0
- package/dist/adapters/proxies/ethersV5AdapterProxy.js.map +1 -0
- package/dist/adapters/proxies/viemAdapterProxy.d.ts +25 -0
- package/dist/adapters/proxies/viemAdapterProxy.d.ts.map +1 -0
- package/dist/adapters/proxies/viemAdapterProxy.js +71 -0
- package/dist/adapters/proxies/viemAdapterProxy.js.map +1 -0
- package/dist/constants/aaveConfig.d.ts +7 -0
- package/dist/constants/aaveConfig.d.ts.map +1 -0
- package/dist/constants/aaveConfig.js +22 -0
- package/dist/constants/aaveConfig.js.map +1 -0
- package/dist/constants/addresses.d.ts +14 -0
- package/dist/constants/addresses.d.ts.map +1 -0
- package/dist/{esm/constants → constants}/addresses.js +17 -16
- package/dist/constants/addresses.js.map +1 -0
- package/dist/{cjs/enums → constants}/chainId.d.ts +1 -0
- package/dist/constants/chainId.d.ts.map +1 -0
- package/dist/{cjs/enums → constants}/chainId.js +2 -1
- package/dist/constants/chainId.js.map +1 -0
- package/dist/constants/contractNames.d.ts +21 -0
- package/dist/constants/contractNames.d.ts.map +1 -0
- package/dist/constants/contractNames.js +24 -0
- package/dist/constants/contractNames.js.map +1 -0
- package/dist/constants/index.d.ts +9 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/constants/index.js +25 -0
- package/dist/constants/index.js.map +1 -0
- package/dist/constants/mentoAddresses.d.ts +6 -0
- package/dist/constants/mentoAddresses.d.ts.map +1 -0
- package/dist/constants/mentoAddresses.js +9 -0
- package/dist/constants/mentoAddresses.js.map +1 -0
- package/dist/{cjs/enums → constants}/proposalState.d.ts +1 -0
- package/dist/constants/proposalState.d.ts.map +1 -0
- package/dist/{cjs/enums → constants}/proposalState.js +2 -1
- package/dist/constants/proposalState.js.map +1 -0
- package/dist/constants/protocolAddresses.d.ts +5 -0
- package/dist/constants/protocolAddresses.d.ts.map +1 -0
- package/dist/constants/protocolAddresses.js +8 -0
- package/dist/constants/protocolAddresses.js.map +1 -0
- package/dist/constants/stableTokenMetadata.d.ts +12 -0
- package/dist/constants/stableTokenMetadata.d.ts.map +1 -0
- package/dist/constants/stableTokenMetadata.js +14 -0
- package/dist/constants/stableTokenMetadata.js.map +1 -0
- package/dist/index.d.ts +67 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +122 -0
- package/dist/index.js.map +1 -0
- package/dist/services/collateralAssetService.d.ts +8 -0
- package/dist/services/collateralAssetService.d.ts.map +1 -0
- package/dist/services/collateralAssetService.js +47 -0
- package/dist/services/collateralAssetService.js.map +1 -0
- package/dist/services/index.d.ts +6 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/{cjs/interfaces → services}/index.js +6 -4
- package/dist/services/index.js.map +1 -0
- package/dist/services/stableTokenService.d.ts +9 -0
- package/dist/services/stableTokenService.d.ts.map +1 -0
- package/dist/services/stableTokenService.js +40 -0
- package/dist/services/stableTokenService.js.map +1 -0
- package/dist/services/supply/ISupplyCalculator.d.ts +14 -0
- package/dist/services/supply/ISupplyCalculator.d.ts.map +1 -0
- package/dist/{cjs/interfaces/tradingLimitsState.js → services/supply/ISupplyCalculator.js} +1 -0
- package/dist/services/supply/ISupplyCalculator.js.map +1 -0
- package/dist/services/supply/aaveSupplyCalculator.d.ts +21 -0
- package/dist/services/supply/aaveSupplyCalculator.d.ts.map +1 -0
- package/dist/services/supply/aaveSupplyCalculator.js +46 -0
- package/dist/services/supply/aaveSupplyCalculator.js.map +1 -0
- package/dist/services/supply/calculatorFactory.d.ts +8 -0
- package/dist/services/supply/calculatorFactory.d.ts.map +1 -0
- package/dist/services/supply/calculatorFactory.js +3 -0
- package/dist/services/supply/calculatorFactory.js.map +1 -0
- package/dist/services/supply/defaultCalculatorFactory.d.ts +9 -0
- package/dist/services/supply/defaultCalculatorFactory.d.ts.map +1 -0
- package/dist/services/supply/defaultCalculatorFactory.js +27 -0
- package/dist/services/supply/defaultCalculatorFactory.js.map +1 -0
- package/dist/services/supply/index.d.ts +7 -0
- package/dist/services/supply/index.d.ts.map +1 -0
- package/dist/{cjs → services/supply}/index.js +7 -6
- package/dist/services/supply/index.js.map +1 -0
- package/dist/services/supply/multisigSupplyCalculator.d.ts +9 -0
- package/dist/services/supply/multisigSupplyCalculator.d.ts.map +1 -0
- package/dist/services/supply/multisigSupplyCalculator.js +33 -0
- package/dist/services/supply/multisigSupplyCalculator.js.map +1 -0
- package/dist/services/supply/uniV3SupplyCalculator.d.ts +21 -0
- package/dist/services/supply/uniV3SupplyCalculator.d.ts.map +1 -0
- package/dist/services/supply/uniV3SupplyCalculator.js +233 -0
- package/dist/services/supply/uniV3SupplyCalculator.js.map +1 -0
- package/dist/services/supplyAdjustmentService.d.ts +14 -0
- package/dist/services/supplyAdjustmentService.d.ts.map +1 -0
- package/dist/services/supplyAdjustmentService.js +46 -0
- package/dist/services/supplyAdjustmentService.js.map +1 -0
- package/dist/services/tokenMetadataService.d.ts +8 -0
- package/dist/services/tokenMetadataService.d.ts.map +1 -0
- package/dist/services/tokenMetadataService.js +44 -0
- package/dist/services/tokenMetadataService.js.map +1 -0
- package/dist/{cjs/types → types}/contractAddresses.d.ts +1 -1
- package/dist/types/contractAddresses.d.ts.map +1 -0
- package/dist/{cjs/types → types}/contractAddresses.js +1 -0
- package/dist/types/contractAddresses.js.map +1 -0
- package/dist/types/exchange.d.ts +6 -0
- package/dist/types/exchange.d.ts.map +1 -0
- package/dist/{cjs/interfaces/tradingLimit.js → types/exchange.js} +1 -0
- package/dist/types/exchange.js.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/{cjs/types → types}/index.js +4 -1
- package/dist/types/index.js.map +1 -0
- package/dist/types/provider.d.ts +11 -0
- package/dist/types/provider.d.ts.map +1 -0
- package/dist/{cjs/interfaces/tradingLimitsConfig.js → types/provider.js} +1 -0
- package/dist/types/provider.js.map +1 -0
- package/dist/types/token.d.ts +25 -0
- package/dist/types/token.d.ts.map +1 -0
- package/dist/{cjs/interfaces/IChainClient.js → types/token.js} +1 -0
- package/dist/types/token.js.map +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/{cjs/enums → utils}/index.js +2 -2
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/retry.d.ts +12 -0
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/retry.js +28 -0
- package/dist/utils/retry.js.map +1 -0
- package/package.json +33 -61
- package/dist/cjs/ChainClient.d.ts +0 -9
- package/dist/cjs/ChainClient.js +0 -58
- package/dist/cjs/TestChainClient.d.ts +0 -7
- package/dist/cjs/TestChainClient.js +0 -41
- package/dist/cjs/constants/addresses.d.ts +0 -4
- package/dist/cjs/constants/addresses.js +0 -64
- package/dist/cjs/constants/index.d.ts +0 -2
- package/dist/cjs/constants/tradablePairs.42220.d.ts +0 -2
- package/dist/cjs/constants/tradablePairs.42220.js +0 -6407
- package/dist/cjs/constants/tradablePairs.44787.d.ts +0 -2
- package/dist/cjs/constants/tradablePairs.44787.js +0 -7391
- package/dist/cjs/constants/tradablePairs.d.ts +0 -16
- package/dist/cjs/constants/tradablePairs.js +0 -53
- package/dist/cjs/enums/index.d.ts +0 -2
- package/dist/cjs/governance.d.ts +0 -62
- package/dist/cjs/governance.js +0 -151
- package/dist/cjs/index.d.ts +0 -6
- package/dist/cjs/interfaces/IChainClient.d.ts +0 -6
- package/dist/cjs/interfaces/index.d.ts +0 -4
- package/dist/cjs/interfaces/tradingLimit.d.ts +0 -7
- package/dist/cjs/interfaces/tradingLimitsConfig.d.ts +0 -10
- package/dist/cjs/interfaces/tradingLimitsState.d.ts +0 -9
- package/dist/cjs/limits.d.ts +0 -33
- package/dist/cjs/limits.js +0 -130
- package/dist/cjs/mento.d.ts +0 -238
- package/dist/cjs/mento.js +0 -559
- package/dist/cjs/routeUtils.d.ts +0 -304
- package/dist/cjs/routeUtils.js +0 -372
- package/dist/cjs/types/contractAddressMap.d.ts +0 -4
- package/dist/cjs/types/contractAddressMap.js +0 -2
- package/dist/cjs/types/index.d.ts +0 -2
- package/dist/cjs/utils.d.ts +0 -50
- package/dist/cjs/utils.js +0 -129
- package/dist/esm/ChainClient.d.ts +0 -9
- package/dist/esm/ChainClient.js +0 -54
- package/dist/esm/TestChainClient.d.ts +0 -7
- package/dist/esm/TestChainClient.js +0 -37
- package/dist/esm/constants/addresses.d.ts +0 -4
- package/dist/esm/constants/index.d.ts +0 -2
- package/dist/esm/constants/index.js +0 -2
- package/dist/esm/constants/tradablePairs.42220.d.ts +0 -2
- package/dist/esm/constants/tradablePairs.42220.js +0 -6404
- package/dist/esm/constants/tradablePairs.44787.d.ts +0 -2
- package/dist/esm/constants/tradablePairs.44787.js +0 -7388
- package/dist/esm/constants/tradablePairs.d.ts +0 -16
- package/dist/esm/constants/tradablePairs.js +0 -26
- package/dist/esm/enums/chainId.d.ts +0 -4
- package/dist/esm/enums/chainId.js +0 -5
- package/dist/esm/enums/index.d.ts +0 -2
- package/dist/esm/enums/index.js +0 -2
- package/dist/esm/enums/proposalState.d.ts +0 -10
- package/dist/esm/enums/proposalState.js +0 -11
- package/dist/esm/governance.d.ts +0 -62
- package/dist/esm/governance.js +0 -147
- package/dist/esm/index.d.ts +0 -6
- package/dist/esm/index.js +0 -6
- package/dist/esm/interfaces/IChainClient.d.ts +0 -6
- package/dist/esm/interfaces/IChainClient.js +0 -1
- package/dist/esm/interfaces/index.d.ts +0 -4
- package/dist/esm/interfaces/index.js +0 -4
- package/dist/esm/interfaces/tradingLimit.d.ts +0 -7
- package/dist/esm/interfaces/tradingLimit.js +0 -1
- package/dist/esm/interfaces/tradingLimitsConfig.d.ts +0 -10
- package/dist/esm/interfaces/tradingLimitsConfig.js +0 -1
- package/dist/esm/interfaces/tradingLimitsState.d.ts +0 -9
- package/dist/esm/interfaces/tradingLimitsState.js +0 -1
- package/dist/esm/limits.d.ts +0 -33
- package/dist/esm/limits.js +0 -123
- package/dist/esm/mento.d.ts +0 -238
- package/dist/esm/mento.js +0 -555
- package/dist/esm/routeUtils.d.ts +0 -304
- package/dist/esm/routeUtils.js +0 -362
- package/dist/esm/types/contractAddressMap.d.ts +0 -4
- package/dist/esm/types/contractAddressMap.js +0 -1
- package/dist/esm/types/contractAddresses.d.ts +0 -23
- package/dist/esm/types/contractAddresses.js +0 -1
- package/dist/esm/types/index.d.ts +0 -2
- package/dist/esm/types/index.js +0 -2
- package/dist/esm/utils.d.ts +0 -50
- package/dist/esm/utils.js +0 -119
package/dist/cjs/utils.d.ts
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { BigNumberish, providers, Signer } from 'ethers';
|
|
2
|
-
import { Address } from './interfaces';
|
|
3
|
-
import { TradablePair } from './mento';
|
|
4
|
-
/**
|
|
5
|
-
* Gets the chain ID from a signer or provider
|
|
6
|
-
* @param signerOrProvider an ethers provider or signer
|
|
7
|
-
* @returns the chain ID
|
|
8
|
-
*/
|
|
9
|
-
export declare function getChainId(signerOrProvider: Signer | providers.Provider): Promise<number>;
|
|
10
|
-
/**
|
|
11
|
-
* Ensures that given signer is truly a a connected signer
|
|
12
|
-
* @param signer an ethers signer
|
|
13
|
-
* @throws if signer is invalid or not connected
|
|
14
|
-
*/
|
|
15
|
-
export declare function validateSigner(signer: Signer): void;
|
|
16
|
-
/**
|
|
17
|
-
* Ensures that given signerOrProvider is truly a provider or a connected signer
|
|
18
|
-
* @param signerOrProvider an ethers provider or signer
|
|
19
|
-
* @throws if signerOrProvider is invalid or not connected
|
|
20
|
-
*/
|
|
21
|
-
export declare function validateSignerOrProvider(signerOrProvider: Signer | providers.Provider): void;
|
|
22
|
-
/**
|
|
23
|
-
* Returns the broker address from the Celo registry
|
|
24
|
-
* @param signerOrProvider an ethers provider or signer
|
|
25
|
-
* @returns the broker address
|
|
26
|
-
*/
|
|
27
|
-
export declare function getBrokerAddressFromRegistry(signerOrProvider: Signer | providers.Provider): Promise<Address>;
|
|
28
|
-
/**
|
|
29
|
-
* Returns the symbol of an erc20 token
|
|
30
|
-
* @param tokenAddr the address of the erc20 token
|
|
31
|
-
* @param signerOrProvider an ethers provider or signer
|
|
32
|
-
* @returns the symbol of the erc20 token
|
|
33
|
-
*/
|
|
34
|
-
export declare function getSymbolFromTokenAddress(tokenAddr: Address, signerOrProvider: Signer | providers.Provider): Promise<string>;
|
|
35
|
-
/**
|
|
36
|
-
* Returns a populated tx obj for increasing the allowance of a spender for a given erc20 token by a given amount
|
|
37
|
-
* @param tokenAddr the address of the erc20 token
|
|
38
|
-
* @param spender the address of the spender
|
|
39
|
-
* @param amount the amount to increase the allowance by
|
|
40
|
-
* @param signerOrProvider an ethers signer or provider
|
|
41
|
-
* @returns the populated TransactionRequest object
|
|
42
|
-
*/
|
|
43
|
-
export declare function increaseAllowance(tokenAddr: string, spender: string, amount: BigNumberish, signerOrProvider: Signer | providers.Provider): Promise<providers.TransactionRequest>;
|
|
44
|
-
/**
|
|
45
|
-
* Find a token address by its symbol from tradable pairs
|
|
46
|
-
* @param pairs array of tradable pairs to search through
|
|
47
|
-
* @param symbol the token symbol to find (case-insensitive)
|
|
48
|
-
* @returns the token address if found, null otherwise
|
|
49
|
-
*/
|
|
50
|
-
export declare function findTokenBySymbol(pairs: readonly TradablePair[], symbol: string): string | null;
|
package/dist/cjs/utils.js
DELETED
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.findTokenBySymbol = exports.increaseAllowance = exports.getSymbolFromTokenAddress = exports.getBrokerAddressFromRegistry = exports.validateSignerOrProvider = exports.validateSigner = exports.getChainId = void 0;
|
|
13
|
-
const ethers_1 = require("ethers");
|
|
14
|
-
/**
|
|
15
|
-
* Gets the chain ID from a signer or provider
|
|
16
|
-
* @param signerOrProvider an ethers provider or signer
|
|
17
|
-
* @returns the chain ID
|
|
18
|
-
*/
|
|
19
|
-
function getChainId(signerOrProvider) {
|
|
20
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
21
|
-
const provider = ethers_1.Signer.isSigner(signerOrProvider)
|
|
22
|
-
? signerOrProvider.provider
|
|
23
|
-
: signerOrProvider;
|
|
24
|
-
return (yield provider.getNetwork()).chainId;
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
exports.getChainId = getChainId;
|
|
28
|
-
/**
|
|
29
|
-
* Ensures that given signer is truly a a connected signer
|
|
30
|
-
* @param signer an ethers signer
|
|
31
|
-
* @throws if signer is invalid or not connected
|
|
32
|
-
*/
|
|
33
|
-
function validateSigner(signer) {
|
|
34
|
-
if (!ethers_1.Signer.isSigner(signer)) {
|
|
35
|
-
throw new Error('A valid signer must be provided');
|
|
36
|
-
}
|
|
37
|
-
if (!ethers_1.providers.Provider.isProvider(signer.provider)) {
|
|
38
|
-
throw new Error('Signer must be connected to a provider');
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
exports.validateSigner = validateSigner;
|
|
42
|
-
/**
|
|
43
|
-
* Ensures that given signerOrProvider is truly a provider or a connected signer
|
|
44
|
-
* @param signerOrProvider an ethers provider or signer
|
|
45
|
-
* @throws if signerOrProvider is invalid or not connected
|
|
46
|
-
*/
|
|
47
|
-
function validateSignerOrProvider(signerOrProvider) {
|
|
48
|
-
const isSigner = ethers_1.Signer.isSigner(signerOrProvider);
|
|
49
|
-
const isProvider = ethers_1.providers.Provider.isProvider(signerOrProvider);
|
|
50
|
-
if (!isSigner && !isProvider) {
|
|
51
|
-
throw new Error('A valid signer or provider must be provided');
|
|
52
|
-
}
|
|
53
|
-
if (isSigner && !ethers_1.providers.Provider.isProvider(signerOrProvider.provider)) {
|
|
54
|
-
throw new Error('Signer must be connected to a provider');
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
exports.validateSignerOrProvider = validateSignerOrProvider;
|
|
58
|
-
/**
|
|
59
|
-
* Returns the broker address from the Celo registry
|
|
60
|
-
* @param signerOrProvider an ethers provider or signer
|
|
61
|
-
* @returns the broker address
|
|
62
|
-
*/
|
|
63
|
-
function getBrokerAddressFromRegistry(signerOrProvider) {
|
|
64
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
-
const celoRegistryAddress = '0x000000000000000000000000000000000000ce10';
|
|
66
|
-
const brokerIdentifier = 'Broker';
|
|
67
|
-
const registryAbi = [
|
|
68
|
-
'function getAddressForString(string calldata identifier) external view returns (address)',
|
|
69
|
-
];
|
|
70
|
-
const contract = new ethers_1.Contract(celoRegistryAddress, registryAbi, signerOrProvider);
|
|
71
|
-
const brokerAddress = yield contract.getAddressForString(brokerIdentifier);
|
|
72
|
-
if (brokerAddress === ethers_1.constants.AddressZero) {
|
|
73
|
-
throw Error('Broker address not found in the registry');
|
|
74
|
-
}
|
|
75
|
-
return brokerAddress;
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
exports.getBrokerAddressFromRegistry = getBrokerAddressFromRegistry;
|
|
79
|
-
/**
|
|
80
|
-
* Returns the symbol of an erc20 token
|
|
81
|
-
* @param tokenAddr the address of the erc20 token
|
|
82
|
-
* @param signerOrProvider an ethers provider or signer
|
|
83
|
-
* @returns the symbol of the erc20 token
|
|
84
|
-
*/
|
|
85
|
-
function getSymbolFromTokenAddress(tokenAddr, signerOrProvider) {
|
|
86
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
-
const erc20Abi = ['function symbol() external view returns (string memory)'];
|
|
88
|
-
const contract = new ethers_1.Contract(tokenAddr, erc20Abi, signerOrProvider);
|
|
89
|
-
return contract.symbol();
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
exports.getSymbolFromTokenAddress = getSymbolFromTokenAddress;
|
|
93
|
-
/**
|
|
94
|
-
* Returns a populated tx obj for increasing the allowance of a spender for a given erc20 token by a given amount
|
|
95
|
-
* @param tokenAddr the address of the erc20 token
|
|
96
|
-
* @param spender the address of the spender
|
|
97
|
-
* @param amount the amount to increase the allowance by
|
|
98
|
-
* @param signerOrProvider an ethers signer or provider
|
|
99
|
-
* @returns the populated TransactionRequest object
|
|
100
|
-
*/
|
|
101
|
-
function increaseAllowance(tokenAddr, spender, amount, signerOrProvider) {
|
|
102
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
103
|
-
const abi = [
|
|
104
|
-
'function increaseAllowance(address spender, uint256 value) external returns (bool)',
|
|
105
|
-
];
|
|
106
|
-
// TODO, not all ERC-20 contracts support increaseAllowance
|
|
107
|
-
// Add a check for that here
|
|
108
|
-
const contract = new ethers_1.Contract(tokenAddr, abi, signerOrProvider);
|
|
109
|
-
return yield contract.populateTransaction.increaseAllowance(spender, amount);
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
exports.increaseAllowance = increaseAllowance;
|
|
113
|
-
/**
|
|
114
|
-
* Find a token address by its symbol from tradable pairs
|
|
115
|
-
* @param pairs array of tradable pairs to search through
|
|
116
|
-
* @param symbol the token symbol to find (case-insensitive)
|
|
117
|
-
* @returns the token address if found, null otherwise
|
|
118
|
-
*/
|
|
119
|
-
function findTokenBySymbol(pairs, symbol) {
|
|
120
|
-
for (const pair of pairs) {
|
|
121
|
-
for (const asset of pair.assets) {
|
|
122
|
-
if (asset.symbol.toLowerCase() === symbol.toLowerCase()) {
|
|
123
|
-
return asset.address;
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
return null;
|
|
128
|
-
}
|
|
129
|
-
exports.findTokenBySymbol = findTokenBySymbol;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { PopulatedTransaction, ethers, providers } from 'ethers';
|
|
2
|
-
import { IChainClient } from './interfaces';
|
|
3
|
-
export declare class ChainClient implements IChainClient {
|
|
4
|
-
private readonly signerOrProvider;
|
|
5
|
-
constructor(signerOrProvider: ethers.Signer | providers.Provider);
|
|
6
|
-
getSigner(): Promise<ethers.Signer | providers.Provider>;
|
|
7
|
-
getChainId(): Promise<number>;
|
|
8
|
-
populateTransaction(tx: PopulatedTransaction): Promise<providers.TransactionRequest>;
|
|
9
|
-
}
|
package/dist/esm/ChainClient.js
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
import { Signer, providers } from 'ethers';
|
|
11
|
-
import { validateSignerOrProvider } from './utils';
|
|
12
|
-
export class ChainClient {
|
|
13
|
-
constructor(signerOrProvider) {
|
|
14
|
-
validateSignerOrProvider(signerOrProvider);
|
|
15
|
-
this.signerOrProvider = signerOrProvider;
|
|
16
|
-
}
|
|
17
|
-
getSigner() {
|
|
18
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
-
return this.signerOrProvider;
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
getChainId() {
|
|
23
|
-
var _a;
|
|
24
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
-
let chainId = 0;
|
|
26
|
-
if (Signer.isSigner(this.signerOrProvider)) {
|
|
27
|
-
const network = yield ((_a = this.signerOrProvider.provider) === null || _a === void 0 ? void 0 : _a.getNetwork());
|
|
28
|
-
if (network) {
|
|
29
|
-
chainId = network.chainId;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
else if (providers.Provider.isProvider(this.signerOrProvider)) {
|
|
33
|
-
const network = yield this.signerOrProvider.getNetwork();
|
|
34
|
-
if (network) {
|
|
35
|
-
chainId = network.chainId;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
if (chainId === 0) {
|
|
39
|
-
throw new Error('Could not get chainId from signer or provider');
|
|
40
|
-
}
|
|
41
|
-
return chainId;
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
populateTransaction(tx) {
|
|
45
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
-
if (Signer.isSigner(this.signerOrProvider)) {
|
|
47
|
-
return this.signerOrProvider.populateTransaction(tx);
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
return tx;
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { PopulatedTransaction, ethers, providers } from 'ethers';
|
|
2
|
-
import { IChainClient } from './interfaces';
|
|
3
|
-
export declare class TestChainClient implements IChainClient {
|
|
4
|
-
getSigner(): Promise<ethers.Signer | providers.Provider>;
|
|
5
|
-
getChainId(): Promise<number>;
|
|
6
|
-
populateTransaction(tx: PopulatedTransaction): Promise<providers.TransactionRequest>;
|
|
7
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
export class TestChainClient {
|
|
11
|
-
getSigner() {
|
|
12
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
13
|
-
const fakeProvider = {};
|
|
14
|
-
return fakeProvider;
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
getChainId() {
|
|
18
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
-
return 44787;
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
populateTransaction(tx) {
|
|
23
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
-
const fakeTx = {
|
|
25
|
-
to: tx.to,
|
|
26
|
-
from: tx.from,
|
|
27
|
-
data: tx.data,
|
|
28
|
-
value: tx.value,
|
|
29
|
-
nonce: 0,
|
|
30
|
-
gasLimit: 0,
|
|
31
|
-
gasPrice: 0,
|
|
32
|
-
chainId: 1,
|
|
33
|
-
};
|
|
34
|
-
return fakeTx;
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
}
|