@chorus-one/ethereum
Version:
All-in-one toolkit for building staking dApps on Ethereum network
33 lines (32 loc) • 1.08 kB
JavaScript
import { MintTokenControllerAbi } from '../contracts/mintCotrollerAbi';
import { VaultABI } from '../contracts/vaultAbi';
export const getMint = async (params) => {
const { connector, vaultAddress, userAccount } = params;
const mintedShares = await connector.eth.readContract({
abi: VaultABI,
functionName: 'osTokenPositions',
address: vaultAddress,
args: [userAccount]
});
const [mintedAssets, feePercent] = await Promise.all([
connector.eth.readContract({
abi: MintTokenControllerAbi,
address: connector.mintTokenController,
functionName: 'convertToAssets',
args: [mintedShares]
}),
connector.eth.readContract({
abi: MintTokenControllerAbi,
functionName: 'feePercent',
address: connector.mintTokenController
})
]);
const protocolFeePercent = feePercent / 100n;
return {
minted: {
assets: mintedAssets,
shares: mintedShares
},
protocolFeePercent
};
};