impermax-sdk 1.2.112 → 2.0.0
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/lib/abis/ImpermaxABI.d.ts +2 -2
- package/lib/abis/ImpermaxABI.js +3 -3
- package/lib/abis/contracts/ClaimAggregator.json +2015 -2015
- package/lib/abis/contracts/IAllowanceTransfer.json +3772 -0
- package/lib/abis/contracts/IBorrowable.json +13207 -13207
- package/lib/abis/contracts/IClaimable.json +406 -406
- package/lib/abis/contracts/ICollateral.json +9052 -9052
- package/lib/abis/contracts/IERC20.json +2376 -2376
- package/lib/abis/contracts/IERC721.json +3515 -0
- package/lib/abis/contracts/IFactory.json +3660 -3660
- package/lib/abis/contracts/IFarmingPool.json +3584 -3584
- package/lib/abis/contracts/ILendingVaultV1.json +8358 -8358
- package/lib/abis/contracts/IMerkleDistributor.json +1134 -1134
- package/lib/abis/contracts/IRouter02.json +7283 -7283
- package/lib/abis/contracts/ISimpleUniswapOracle.json +1469 -1469
- package/lib/abis/contracts/IStakedLPToken.json +7309 -7309
- package/lib/abis/contracts/IStakingRewards.json +1036 -1036
- package/lib/abis/contracts/ITokenizedUniswapV2Position.json +4167 -0
- package/lib/abis/contracts/ITokenizedUniswapV3Position.json +5539 -0
- package/lib/abis/contracts/IUniswapV2Factory.json +1690 -1690
- package/lib/abis/contracts/IUniswapV2Pair.json +6761 -6761
- package/lib/abis/contracts/IUniswapV3Pool.json +6606 -0
- package/lib/abis/contracts/ImpermaxChef.json +20945 -20945
- package/lib/abis/contracts/ImpermaxConfigManager.json +31595 -31595
- package/lib/abis/contracts/ImpermaxV3Borrowable.json +22131 -0
- package/lib/abis/contracts/ImpermaxV3Collateral.json +22988 -0
- package/lib/abis/contracts/ImpermaxV3Factory.json +17645 -0
- package/lib/abis/contracts/ImpermaxV3UniV2Router01.json +32488 -0
- package/lib/abis/contracts/ImpermaxV3UniV3Router01.json +37742 -0
- package/lib/abis/contracts/LendingVaultWatcher01.json +4076 -4076
- package/lib/abis/contracts/PoolTokenRouter01.json +9058 -0
- package/lib/config/amms.d.ts +102 -104
- package/lib/config/amms.js +433 -436
- package/lib/config/chainId.d.ts +2 -0
- package/lib/config/chainId.js +26 -0
- package/lib/config/contracts/claim-aggregators.d.ts +2 -2
- package/lib/config/contracts/claim-aggregators.js +26 -26
- package/lib/config/contracts/impermax-chef.d.ts +2 -2
- package/lib/config/contracts/impermax-chef.js +27 -27
- package/lib/config/contracts/impermax-config-manager.d.ts +2 -2
- package/lib/config/contracts/impermax-config-manager.js +26 -26
- package/lib/config/contracts/impermax-factories.d.ts +4 -4
- package/lib/config/contracts/impermax-factories.js +87 -87
- package/lib/config/contracts/imxes.d.ts +2 -2
- package/lib/config/contracts/imxes.js +26 -26
- package/lib/config/contracts/lending-vault-watcher.d.ts +2 -2
- package/lib/config/contracts/lending-vault-watcher.js +26 -26
- package/lib/config/contracts/merkle-distributors.d.ts +4 -4
- package/lib/config/contracts/merkle-distributors.js +70 -70
- package/lib/config/contracts/routers.d.ts +4 -3
- package/lib/config/contracts/routers.js +118 -94
- package/lib/config/contracts/simple-uniswap-oracles.d.ts +2 -2
- package/lib/config/contracts/simple-uniswap-oracles.js +49 -49
- package/lib/config/contracts/weths.d.ts +2 -2
- package/lib/config/contracts/weths.js +27 -27
- package/lib/config/debank-ids.d.ts +2 -2
- package/lib/config/debank-ids.js +26 -26
- package/lib/config/endpoints/merkle-distributors.d.ts +4 -4
- package/lib/config/endpoints/merkle-distributors.js +70 -70
- package/lib/config/eth.d.ts +3 -3
- package/lib/config/eth.js +48 -48
- package/lib/config/factories.d.ts +7 -7
- package/lib/config/factories.js +31 -30
- package/lib/config/farms.d.ts +109 -111
- package/lib/config/farms.js +207 -210
- package/lib/config/general.d.ts +5 -5
- package/lib/config/general.js +8 -8
- package/lib/config/subgraphs.d.ts +45 -45
- package/lib/config/subgraphs.js +187 -187
- package/lib/config/types.d.ts +85 -72
- package/lib/config/types.js +72 -58
- package/lib/index.d.ts +36 -35
- package/lib/index.js +159 -152
- package/lib/offchain/account/index.d.ts +9 -7
- package/lib/offchain/account/index.js +43 -39
- package/lib/offchain/account/lendingPool/borrowable.d.ts +14 -0
- package/lib/offchain/account/lendingPool/borrowable.js +73 -0
- package/lib/offchain/account/lendingPool/collateral.d.ts +12 -0
- package/lib/offchain/account/lendingPool/collateral.js +42 -0
- package/lib/offchain/account/lendingPool/index.d.ts +6 -5
- package/lib/offchain/account/lendingPool/index.js +14 -12
- package/lib/offchain/account/lendingPool/offchainAccountBorrowable.d.ts +14 -17
- package/lib/offchain/account/lendingPool/offchainAccountBorrowable.js +45 -71
- package/lib/offchain/account/lendingPool/offchainAccountCollateral.d.ts +11 -13
- package/lib/offchain/account/lendingPool/offchainAccountCollateral.js +31 -43
- package/lib/offchain/account/lendingPool/offchainAccountLendingPool.d.ts +28 -21
- package/lib/offchain/account/lendingPool/offchainAccountLendingPool.js +69 -68
- package/lib/offchain/account/lendingPool/offchainLeveragedPosition.d.ts +25 -0
- package/lib/offchain/account/lendingPool/offchainLeveragedPosition.js +116 -0
- package/lib/offchain/account/lendingVault.d.ts +11 -0
- package/lib/offchain/account/lendingVault.js +38 -0
- package/lib/offchain/account/offchainAccount.d.ts +25 -25
- package/lib/offchain/account/offchainAccount.js +129 -129
- package/lib/offchain/account/offchainAccountLendingVault.d.ts +16 -16
- package/lib/offchain/account/offchainAccountLendingVault.js +64 -64
- package/lib/offchain/account/offchainAccountPoolToken.d.ts +7 -7
- package/lib/offchain/account/offchainAccountPoolToken.js +24 -24
- package/lib/offchain/account/offchainMultichainAccount.d.ts +34 -0
- package/lib/offchain/account/offchainMultichainAccount.js +66 -0
- package/lib/offchain/account/poolToken.d.ts +6 -0
- package/lib/offchain/account/poolToken.js +21 -0
- package/lib/offchain/account/vault/index.d.ts +3 -0
- package/lib/offchain/account/vault/index.js +7 -0
- package/lib/offchain/account/vault/offchainAccountVault.d.ts +16 -0
- package/lib/offchain/account/vault/offchainAccountVault.js +64 -0
- package/lib/offchain/configManager/index.d.ts +5 -5
- package/lib/offchain/configManager/index.js +12 -12
- package/lib/offchain/configManager/offchainConfigManager.d.ts +25 -25
- package/lib/offchain/configManager/offchainConfigManager.js +76 -76
- package/lib/offchain/configManager/offchainConfigManagerInitializer.d.ts +6 -6
- package/lib/offchain/configManager/offchainConfigManagerInitializer.js +53 -53
- package/lib/offchain/configManager/offchainPairConfig.d.ts +40 -40
- package/lib/offchain/configManager/offchainPairConfig.js +86 -86
- package/lib/offchain/configManager/offchainProposal.d.ts +17 -17
- package/lib/offchain/configManager/offchainProposal.js +53 -53
- package/lib/offchain/index.d.ts +15 -14
- package/lib/offchain/index.js +55 -53
- package/lib/offchain/initializer.d.ts +32 -0
- package/lib/offchain/initializer.js +627 -0
- package/lib/offchain/lendingPool/borrowable.d.ts +55 -0
- package/lib/offchain/lendingPool/borrowable.js +351 -0
- package/lib/offchain/lendingPool/collateral.d.ts +17 -0
- package/lib/offchain/lendingPool/collateral.js +72 -0
- package/lib/offchain/lendingPool/index.d.ts +5 -5
- package/lib/offchain/lendingPool/index.js +12 -12
- package/lib/offchain/lendingPool/offchainBorrowable.d.ts +59 -59
- package/lib/offchain/lendingPool/offchainBorrowable.js +366 -366
- package/lib/offchain/lendingPool/offchainCollateral.d.ts +20 -19
- package/lib/offchain/lendingPool/offchainCollateral.js +81 -75
- package/lib/offchain/lendingPool/offchainLendingPool.d.ts +60 -47
- package/lib/offchain/lendingPool/offchainLendingPool.js +277 -230
- package/lib/offchain/lendingVault.d.ts +22 -0
- package/lib/offchain/lendingVault.js +115 -0
- package/lib/offchain/offchain.d.ts +106 -113
- package/lib/offchain/offchain.js +248 -251
- package/lib/offchain/offchainAPRHelper.d.ts +45 -45
- package/lib/offchain/offchainAPRHelper.js +239 -239
- package/lib/offchain/offchainEndpointManager.d.ts +25 -25
- package/lib/offchain/offchainEndpointManager.js +126 -126
- package/lib/offchain/offchainInitializer.d.ts +52 -52
- package/lib/offchain/offchainInitializer.js +792 -792
- package/lib/offchain/offchainLendingVault.d.ts +25 -25
- package/lib/offchain/offchainLendingVault.js +114 -114
- package/lib/offchain/offchainMultichain.d.ts +50 -0
- package/lib/offchain/offchainMultichain.js +75 -0
- package/lib/offchain/offchainPoolToken.d.ts +21 -21
- package/lib/offchain/offchainPoolToken.js +128 -128
- package/lib/offchain/offchainPriceHelper.d.ts +22 -22
- package/lib/offchain/offchainPriceHelper.js +364 -364
- package/lib/offchain/offchainSolidexHelper.d.ts +16 -16
- package/lib/offchain/offchainSolidexHelper.js +58 -58
- package/lib/offchain/offchainTypes.d.ts +212 -212
- package/lib/offchain/offchainTypes.js +3 -3
- package/lib/offchain/poolToken.d.ts +20 -0
- package/lib/offchain/poolToken.js +120 -0
- package/lib/offchain/priceHelper.d.ts +21 -0
- package/lib/offchain/priceHelper.js +195 -0
- package/lib/offchain/queries/apis/ponder/index.d.ts +14 -14
- package/lib/offchain/queries/apis/ponder/index.js +281 -281
- package/lib/offchain/queries/apis/thegraph/index.d.ts +19 -19
- package/lib/offchain/queries/apis/thegraph/index.js +355 -355
- package/lib/offchain/queries/index.d.ts +20 -20
- package/lib/offchain/queries/index.js +51 -51
- package/lib/offchain/queries/interfaces/query-builder.d.ts +19 -19
- package/lib/offchain/queries/interfaces/query-builder.js +2 -2
- package/lib/offchain/queries/interfaces/transformers.js +9 -9
- package/lib/offchain/query.d.ts +15 -0
- package/lib/offchain/query.js +323 -0
- package/lib/offchain/solidexHelper.d.ts +16 -0
- package/lib/offchain/solidexHelper.js +58 -0
- package/lib/offchain/types.d.ts +150 -0
- package/lib/offchain/types.js +3 -0
- package/lib/offchain/vault/index.d.ts +6 -0
- package/lib/offchain/vault/index.js +14 -0
- package/lib/offchain/vault/offchainHedgedVault.d.ts +9 -0
- package/lib/offchain/vault/offchainHedgedVault.js +57 -0
- package/lib/offchain/vault/offchainLendingVault.d.ts +16 -0
- package/lib/offchain/vault/offchainLendingVault.js +73 -0
- package/lib/offchain/vault/offchainLeveragedVault.d.ts +9 -0
- package/lib/offchain/vault/offchainLeveragedVault.js +57 -0
- package/lib/offchain/vault/offchainVault.d.ts +34 -0
- package/lib/offchain/vault/offchainVault.js +130 -0
- package/lib/onchain/account/index.d.ts +6 -6
- package/lib/onchain/account/index.js +38 -38
- package/lib/onchain/account/interactions/index.d.ts +28 -0
- package/lib/onchain/account/interactions/index.js +158 -0
- package/lib/onchain/account/interactions/lendingPool/borrowable.d.ts +16 -0
- package/lib/onchain/account/interactions/lendingPool/borrowable.js +49 -0
- package/lib/onchain/account/interactions/lendingPool/collateral.d.ts +15 -0
- package/lib/onchain/account/interactions/lendingPool/collateral.js +33 -0
- package/lib/onchain/account/interactions/lendingPool/index.d.ts +41 -0
- package/lib/onchain/account/interactions/lendingPool/index.js +120 -0
- package/lib/onchain/account/interactions/lendingVault.d.ts +10 -0
- package/lib/onchain/account/interactions/lendingVault.js +12 -0
- package/lib/onchain/account/interactions/poolToken.d.ts +33 -0
- package/lib/onchain/account/interactions/poolToken.js +180 -0
- package/lib/onchain/account/lendingPool/borrowable.d.ts +29 -0
- package/lib/onchain/account/lendingPool/borrowable.js +135 -0
- package/lib/onchain/account/lendingPool/collateral.d.ts +15 -0
- package/lib/onchain/account/lendingPool/collateral.js +66 -0
- package/lib/onchain/account/lendingPool/index.d.ts +12 -5
- package/lib/onchain/account/lendingPool/index.js +49 -12
- package/lib/onchain/account/lendingPool/nftlp/index.d.ts +4 -0
- package/lib/onchain/account/lendingPool/nftlp/index.js +11 -0
- package/lib/onchain/account/lendingPool/nftlp/onchainAccountNftlp.d.ts +7 -0
- package/lib/onchain/account/lendingPool/nftlp/onchainAccountNftlp.js +12 -0
- package/lib/onchain/account/lendingPool/nftlp/onchainAccountNftlpUniswapV3.d.ts +4 -0
- package/lib/onchain/account/lendingPool/nftlp/onchainAccountNftlpUniswapV3.js +13 -0
- package/lib/onchain/account/lendingPool/onchainAccountBorrowable.d.ts +39 -34
- package/lib/onchain/account/lendingPool/onchainAccountBorrowable.js +131 -176
- package/lib/onchain/account/lendingPool/onchainAccountBorrowableV2.d.ts +10 -0
- package/lib/onchain/account/lendingPool/onchainAccountBorrowableV2.js +55 -0
- package/lib/onchain/account/lendingPool/onchainAccountBorrowableV3.d.ts +10 -0
- package/lib/onchain/account/lendingPool/onchainAccountBorrowableV3.js +28 -0
- package/lib/onchain/account/lendingPool/onchainAccountCollateral.d.ts +10 -23
- package/lib/onchain/account/lendingPool/onchainAccountCollateral.js +26 -109
- package/lib/onchain/account/lendingPool/onchainAccountCollateralV2.d.ts +25 -0
- package/lib/onchain/account/lendingPool/onchainAccountCollateralV2.js +99 -0
- package/lib/onchain/account/lendingPool/onchainAccountCollateralV3.d.ts +18 -0
- package/lib/onchain/account/lendingPool/onchainAccountCollateralV3.js +44 -0
- package/lib/onchain/account/lendingPool/onchainAccountLendingPool.d.ts +42 -57
- package/lib/onchain/account/lendingPool/onchainAccountLendingPool.js +142 -352
- package/lib/onchain/account/lendingPool/onchainAccountLendingPoolV2.d.ts +44 -0
- package/lib/onchain/account/lendingPool/onchainAccountLendingPoolV2.js +285 -0
- package/lib/onchain/account/lendingPool/onchainAccountLendingPoolV3.d.ts +27 -0
- package/lib/onchain/account/lendingPool/onchainAccountLendingPoolV3.js +32 -0
- package/lib/onchain/account/lendingVault.d.ts +10 -0
- package/lib/onchain/account/lendingVault.js +35 -0
- package/lib/onchain/account/onchainAccount.d.ts +32 -32
- package/lib/onchain/account/onchainAccount.js +166 -167
- package/lib/onchain/account/onchainAccountLendingVault.d.ts +19 -19
- package/lib/onchain/account/onchainAccountLendingVault.js +48 -48
- package/lib/onchain/account/onchainAccountPoolToken.d.ts +30 -30
- package/lib/onchain/account/onchainAccountPoolToken.js +86 -86
- package/lib/onchain/account/poolToken.d.ts +24 -0
- package/lib/onchain/account/poolToken.js +84 -0
- package/lib/onchain/configManager/index.d.ts +5 -5
- package/lib/onchain/configManager/index.js +12 -12
- package/lib/onchain/configManager/onchainConfigManager.d.ts +12 -12
- package/lib/onchain/configManager/onchainConfigManager.js +38 -38
- package/lib/onchain/configManager/onchainPairConfig.d.ts +38 -38
- package/lib/onchain/configManager/onchainPairConfig.js +85 -85
- package/lib/onchain/configManager/onchainProposal.d.ts +17 -17
- package/lib/onchain/configManager/onchainProposal.js +55 -55
- package/lib/onchain/contractsHelper.d.ts +29 -0
- package/lib/onchain/contractsHelper.js +52 -0
- package/lib/onchain/impermaxFactory/index.d.ts +7 -5
- package/lib/onchain/impermaxFactory/index.js +39 -35
- package/lib/onchain/impermaxFactory/lendingPool/borrowable.d.ts +36 -0
- package/lib/onchain/impermaxFactory/lendingPool/borrowable.js +153 -0
- package/lib/onchain/impermaxFactory/lendingPool/collateral.d.ts +17 -0
- package/lib/onchain/impermaxFactory/lendingPool/collateral.js +59 -0
- package/lib/onchain/impermaxFactory/lendingPool/index.d.ts +12 -5
- package/lib/onchain/impermaxFactory/lendingPool/index.js +50 -12
- package/lib/onchain/impermaxFactory/lendingPool/nftlp/index.d.ts +4 -0
- package/lib/onchain/impermaxFactory/lendingPool/nftlp/index.js +11 -0
- package/lib/onchain/impermaxFactory/lendingPool/nftlp/onchainNftlp.d.ts +22 -0
- package/lib/onchain/impermaxFactory/lendingPool/nftlp/onchainNftlp.js +19 -0
- package/lib/onchain/impermaxFactory/lendingPool/nftlp/onchainNftlpUniswapV3.d.ts +24 -0
- package/lib/onchain/impermaxFactory/lendingPool/nftlp/onchainNftlpUniswapV3.js +90 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowable.d.ts +38 -34
- package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowable.js +137 -156
- package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowableV2.d.ts +9 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowableV2.js +36 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowableV3.d.ts +7 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainBorrowableV3.js +23 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainCollateral.d.ts +8 -19
- package/lib/onchain/impermaxFactory/lendingPool/onchainCollateral.js +24 -61
- package/lib/onchain/impermaxFactory/lendingPool/onchainCollateralV2.d.ts +20 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainCollateralV2.js +58 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainCollateralV3.d.ts +13 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainCollateralV3.js +36 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPool.d.ts +43 -58
- package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPool.js +81 -367
- package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPoolV2.d.ts +76 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPoolV2.js +338 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPoolV3.d.ts +42 -0
- package/lib/onchain/impermaxFactory/lendingPool/onchainLendingPoolV3.js +39 -0
- package/lib/onchain/impermaxFactory/onchainImpermaxFactory.d.ts +26 -16
- package/lib/onchain/impermaxFactory/onchainImpermaxFactory.js +42 -52
- package/lib/onchain/impermaxFactory/onchainImpermaxFactoryV2.d.ts +16 -0
- package/lib/onchain/impermaxFactory/onchainImpermaxFactoryV2.js +81 -0
- package/lib/onchain/impermaxFactory/onchainImpermaxFactoryV3.d.ts +16 -0
- package/lib/onchain/impermaxFactory/onchainImpermaxFactoryV3.js +88 -0
- package/lib/onchain/index.d.ts +10 -10
- package/lib/onchain/index.js +49 -49
- package/lib/onchain/interactions/index.d.ts +8 -8
- package/lib/onchain/interactions/index.js +41 -41
- package/lib/onchain/interactions/lendingPool/borrowable.d.ts +14 -0
- package/lib/onchain/interactions/lendingPool/borrowable.js +47 -0
- package/lib/onchain/interactions/lendingPool/collateral.d.ts +13 -0
- package/lib/onchain/interactions/lendingPool/collateral.js +31 -0
- package/lib/onchain/interactions/lendingPool/index.d.ts +12 -5
- package/lib/onchain/interactions/lendingPool/index.js +49 -12
- package/lib/onchain/interactions/lendingPool/nftlp/index.d.ts +4 -0
- package/lib/onchain/interactions/lendingPool/nftlp/index.js +11 -0
- package/lib/onchain/interactions/lendingPool/nftlp/onchainInteractionsNftlp.d.ts +7 -0
- package/lib/onchain/interactions/lendingPool/nftlp/onchainInteractionsNftlp.js +12 -0
- package/lib/onchain/interactions/lendingPool/nftlp/onchainInteractionsNftlpUniswapV3.d.ts +4 -0
- package/lib/onchain/interactions/lendingPool/nftlp/onchainInteractionsNftlpUniswapV3.js +13 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowable.d.ts +17 -21
- package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowable.js +24 -56
- package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowableV2.d.ts +15 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowableV2.js +63 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowableV3.d.ts +9 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsBorrowableV3.js +14 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateral.d.ts +7 -19
- package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateral.js +11 -43
- package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateralV2.d.ts +20 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateralV2.js +48 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateralV3.d.ts +13 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsCollateralV3.js +20 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPool.d.ts +31 -46
- package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPool.js +53 -135
- package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPoolV2.d.ts +42 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPoolV2.js +114 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPoolV3.d.ts +27 -0
- package/lib/onchain/interactions/lendingPool/onchainInteractionsLendingPoolV3.js +32 -0
- package/lib/onchain/interactions/lendingVault.d.ts +8 -0
- package/lib/onchain/interactions/lendingVault.js +15 -0
- package/lib/onchain/interactions/onchainInteractions.d.ts +31 -31
- package/lib/onchain/interactions/onchainInteractions.js +136 -137
- package/lib/onchain/interactions/onchainInteractionsConfigManager.d.ts +17 -17
- package/lib/onchain/interactions/onchainInteractionsConfigManager.js +44 -44
- package/lib/onchain/interactions/onchainInteractionsLendingVault.d.ts +14 -14
- package/lib/onchain/interactions/onchainInteractionsLendingVault.js +21 -21
- package/lib/onchain/interactions/onchainInteractionsPoolToken.d.ts +35 -35
- package/lib/onchain/interactions/onchainInteractionsPoolToken.js +134 -186
- package/lib/onchain/interactions/poolToken.d.ts +31 -0
- package/lib/onchain/interactions/poolToken.js +181 -0
- package/lib/onchain/lendingVault.d.ts +17 -0
- package/lib/onchain/lendingVault.js +56 -0
- package/lib/onchain/onchain.d.ts +38 -35
- package/lib/onchain/onchain.js +78 -70
- package/lib/onchain/onchainContractsHelper.d.ts +42 -31
- package/lib/onchain/onchainContractsHelper.js +90 -56
- package/lib/onchain/onchainLendingVault.d.ts +22 -22
- package/lib/onchain/onchainLendingVault.js +69 -69
- package/lib/onchain/onchainPermitHelper.d.ts +21 -0
- package/lib/onchain/onchainPermitHelper.js +198 -0
- package/lib/onchain/onchainPoolToken.d.ts +35 -35
- package/lib/onchain/onchainPoolToken.js +129 -129
- package/lib/onchain/onchainTypes.d.ts +70 -64
- package/lib/onchain/onchainTypes.js +14 -14
- package/lib/onchain/poolToken.d.ts +32 -0
- package/lib/onchain/poolToken.js +121 -0
- package/lib/onchain/types.d.ts +45 -0
- package/lib/onchain/types.js +14 -0
- package/lib/utils/ether-utils.d.ts +5 -5
- package/lib/utils/ether-utils.js +26 -26
- package/lib/utils/index.d.ts +3 -3
- package/lib/utils/index.js +16 -16
- package/lib/utils/lliquidity-math.d.ts +30 -30
- package/lib/utils/lliquidity-math.js +139 -139
- package/lib/utils/price-from-reserves.d.ts +2 -0
- package/lib/utils/price-from-reserves.js +19 -0
- package/package.json +36 -36
|
@@ -1,68 +1,69 @@
|
|
|
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
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const types_1 = require("../../../config/types");
|
|
16
|
-
const offchainAccountCollateral_1 = __importDefault(require("./offchainAccountCollateral"));
|
|
17
|
-
const offchainAccountBorrowable_1 = __importDefault(require("./offchainAccountBorrowable"));
|
|
18
|
-
class OffchainAccountLendingPool {
|
|
19
|
-
constructor(account, lendingPool) {
|
|
20
|
-
this.getAccount = () => this.account;
|
|
21
|
-
this.getLendingPool = () => this.lendingPool;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
this.
|
|
25
|
-
this.
|
|
26
|
-
this.
|
|
27
|
-
this.
|
|
28
|
-
this.
|
|
29
|
-
|
|
30
|
-
[types_1.PoolTokenType.
|
|
31
|
-
[types_1.PoolTokenType.
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
const
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
supplyPositions:
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
}
|
|
68
|
-
|
|
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
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const types_1 = require("../../../config/types");
|
|
16
|
+
const offchainAccountCollateral_1 = __importDefault(require("./offchainAccountCollateral"));
|
|
17
|
+
const offchainAccountBorrowable_1 = __importDefault(require("./offchainAccountBorrowable"));
|
|
18
|
+
class OffchainAccountLendingPool {
|
|
19
|
+
constructor(account, lendingPool) {
|
|
20
|
+
this.getAccount = () => this.account;
|
|
21
|
+
this.getLendingPool = () => this.lendingPool;
|
|
22
|
+
this.getBorrowable = (borrowable) => borrowable == types_1.Borrowable.A ? this.getBorrowableA() : this.getBorrowableB();
|
|
23
|
+
// Shortcuts
|
|
24
|
+
this.getBorrowableA = () => this.poolTokens[types_1.PoolTokenType.BorrowableA];
|
|
25
|
+
this.getBorrowableB = () => this.poolTokens[types_1.PoolTokenType.BorrowableB];
|
|
26
|
+
this.getCollateral = () => this.poolTokens[types_1.PoolTokenType.Collateral];
|
|
27
|
+
this.account = account;
|
|
28
|
+
this.lendingPool = lendingPool;
|
|
29
|
+
this.poolTokens = {
|
|
30
|
+
[types_1.PoolTokenType.Collateral]: new offchainAccountCollateral_1.default(this),
|
|
31
|
+
[types_1.PoolTokenType.BorrowableA]: new offchainAccountBorrowable_1.default(this, types_1.PoolTokenType.BorrowableA),
|
|
32
|
+
[types_1.PoolTokenType.BorrowableB]: new offchainAccountBorrowable_1.default(this, types_1.PoolTokenType.BorrowableB),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
getPoolToken(poolTokenType) {
|
|
36
|
+
return this.poolTokens[poolTokenType];
|
|
37
|
+
}
|
|
38
|
+
getLendingPoolPosition() {
|
|
39
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
+
// TODO rename and refactor
|
|
41
|
+
const userData = yield this.account.getUserData();
|
|
42
|
+
if (!userData)
|
|
43
|
+
return undefined;
|
|
44
|
+
const userDataOfFactory = userData[this.lendingPool.getFactory()];
|
|
45
|
+
const pairAddress = this.lendingPool.getPairAddress();
|
|
46
|
+
const supplyPositions = userDataOfFactory.supplyPositions[pairAddress];
|
|
47
|
+
return {
|
|
48
|
+
[types_1.PoolTokenType.BorrowableA]: supplyPositions ? supplyPositions[types_1.PoolTokenType.BorrowableA] : undefined,
|
|
49
|
+
[types_1.PoolTokenType.BorrowableB]: supplyPositions ? supplyPositions[types_1.PoolTokenType.BorrowableB] : undefined,
|
|
50
|
+
};
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
getLeveragedPositions() {
|
|
54
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
+
return [];
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
getLeveragedPositionsTotalBalanceUSD() {
|
|
59
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
return 1;
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
getLeveragedPositionsNetAPR() {
|
|
64
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
+
return 1;
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
exports.default = OffchainAccountLendingPool;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import OffchainAccountLendingPool from "./index";
|
|
2
|
+
export default class OffchainLeveragedPosition {
|
|
3
|
+
private readonly lendingPool;
|
|
4
|
+
private readonly TOKEN_ID;
|
|
5
|
+
constructor(lendingPool: OffchainAccountLendingPool, TOKEN_ID: number);
|
|
6
|
+
isLiquidated(): Promise<boolean>;
|
|
7
|
+
getLeverage(): Promise<number>;
|
|
8
|
+
getAPR(): Promise<number>;
|
|
9
|
+
getDepositedA(): Promise<number>;
|
|
10
|
+
getDepositedB(): Promise<number>;
|
|
11
|
+
getDepositedAUSD(): Promise<number>;
|
|
12
|
+
getDepositedBUSD(): Promise<number>;
|
|
13
|
+
getBorrowedA(): Promise<number>;
|
|
14
|
+
getBorrowedB(): Promise<number>;
|
|
15
|
+
getBorrowedAUSD(): Promise<number>;
|
|
16
|
+
getBorrowedBUSD(): Promise<number>;
|
|
17
|
+
getExposureA(): Promise<number>;
|
|
18
|
+
getExposureB(): Promise<number>;
|
|
19
|
+
getExposureAUSD(): Promise<number>;
|
|
20
|
+
getExposureBUSD(): Promise<number>;
|
|
21
|
+
getValueUSD(): Promise<number>;
|
|
22
|
+
getLiquidationRange(): Promise<[number, number]>;
|
|
23
|
+
getFee(): Promise<number>;
|
|
24
|
+
getPriceRange(): Promise<[number, number]>;
|
|
25
|
+
}
|
|
@@ -0,0 +1,116 @@
|
|
|
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
|
+
class OffchainLeveragedPosition {
|
|
13
|
+
constructor(lendingPool, TOKEN_ID) {
|
|
14
|
+
this.lendingPool = lendingPool;
|
|
15
|
+
this.TOKEN_ID = TOKEN_ID;
|
|
16
|
+
}
|
|
17
|
+
// TODO
|
|
18
|
+
// Common properties
|
|
19
|
+
isLiquidated() {
|
|
20
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
21
|
+
return false;
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
getLeverage() {
|
|
25
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
return 1;
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
getAPR() {
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
return 1;
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
getDepositedA() {
|
|
35
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
36
|
+
return 1;
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
getDepositedB() {
|
|
40
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
41
|
+
return 1;
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
getDepositedAUSD() {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
return 1;
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
getDepositedBUSD() {
|
|
50
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
51
|
+
return 1;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
getBorrowedA() {
|
|
55
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
56
|
+
return 1;
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
getBorrowedB() {
|
|
60
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
61
|
+
return 1;
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
getBorrowedAUSD() {
|
|
65
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
66
|
+
return 1;
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
getBorrowedBUSD() {
|
|
70
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
71
|
+
return 1;
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
getExposureA() {
|
|
75
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
+
return (yield this.getDepositedA()) - (yield this.getBorrowedA());
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
getExposureB() {
|
|
80
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
81
|
+
return (yield this.getDepositedB()) - (yield this.getBorrowedB());
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
getExposureAUSD() {
|
|
85
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
86
|
+
return (yield this.getDepositedAUSD()) - (yield this.getBorrowedAUSD());
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
getExposureBUSD() {
|
|
90
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
+
return (yield this.getDepositedBUSD()) - (yield this.getBorrowedBUSD());
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
getValueUSD() {
|
|
95
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
96
|
+
return (yield this.getExposureAUSD()) + (yield this.getExposureBUSD());
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
getLiquidationRange() {
|
|
100
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
101
|
+
return [1, 10];
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
// V3 properties
|
|
105
|
+
getFee() {
|
|
106
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
107
|
+
return 0.001;
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
getPriceRange() {
|
|
111
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
112
|
+
return [1, 10];
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
exports.default = OffchainLeveragedPosition;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as offchain from '../index';
|
|
2
|
+
import Account from './index';
|
|
3
|
+
import PoolToken from './poolToken';
|
|
4
|
+
export default class LendingVault extends PoolToken {
|
|
5
|
+
account: Account;
|
|
6
|
+
poolToken: offchain.LendingVault;
|
|
7
|
+
constructor(account: Account, lendingVault: offchain.LendingVault);
|
|
8
|
+
getAmount(): Promise<number>;
|
|
9
|
+
getEarnings(): Promise<number>;
|
|
10
|
+
getEarningsUSD(): Promise<number>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
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
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const poolToken_1 = __importDefault(require("./poolToken"));
|
|
16
|
+
class LendingVault extends poolToken_1.default {
|
|
17
|
+
constructor(account, lendingVault) {
|
|
18
|
+
super();
|
|
19
|
+
this.account = account;
|
|
20
|
+
this.poolToken = lendingVault;
|
|
21
|
+
}
|
|
22
|
+
getAmount() {
|
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
return 0;
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
getEarnings() {
|
|
28
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
return 0;
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
getEarningsUSD() {
|
|
33
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
return 0;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.default = LendingVault;
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import Offchain from '../index';
|
|
2
|
-
import { Address, AddressIndex, Factory, FactoryIndex } from '../../config/types';
|
|
3
|
-
import OffchainAccountLendingPool from './lendingPool';
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
export default class OffchainAccount {
|
|
7
|
-
private readonly offchain;
|
|
8
|
-
private readonly accountAddress;
|
|
9
|
-
private lendingPools;
|
|
10
|
-
private
|
|
11
|
-
constructor(offchain: Offchain, account: Address);
|
|
12
|
-
|
|
13
|
-
getAccountAddress: () => string;
|
|
14
|
-
private initializeLendingPool;
|
|
15
|
-
getLendingPool(factory: Factory, pair: Address): Promise<OffchainAccountLendingPool>;
|
|
16
|
-
private initializeLendingVault;
|
|
17
|
-
getLendingVault(vaultAddress: Address): Promise<
|
|
18
|
-
getUserData(): Promise<FactoryIndex<UserData> | null>;
|
|
19
|
-
getLendingVaultsUserData(): Promise<AddressIndex<
|
|
20
|
-
getBorrowPositions(): Promise<FactoryIndex<Address[]>>;
|
|
21
|
-
getSupplyPositions(): Promise<FactoryIndex<Address[]>>;
|
|
22
|
-
getLendingVaultsSuppliedUSD(): Promise<number>;
|
|
23
|
-
getLendingVaultsEarningsUSD(): Promise<number>;
|
|
24
|
-
getLendingVaultsYearlyYieldUSD(): Promise<number>;
|
|
25
|
-
}
|
|
1
|
+
import Offchain from '../index';
|
|
2
|
+
import { Address, AddressIndex, Factory, FactoryIndex } from '../../config/types';
|
|
3
|
+
import OffchainAccountLendingPool from './lendingPool';
|
|
4
|
+
import OffchainAccountVault from './vault/offchainAccountVault';
|
|
5
|
+
import { VaultPosition, UserData } from '../offchainTypes';
|
|
6
|
+
export default class OffchainAccount {
|
|
7
|
+
private readonly offchain;
|
|
8
|
+
private readonly accountAddress;
|
|
9
|
+
private lendingPools;
|
|
10
|
+
private vaults;
|
|
11
|
+
constructor(offchain: Offchain, account: Address);
|
|
12
|
+
getOffchain: () => Offchain;
|
|
13
|
+
getAccountAddress: () => string;
|
|
14
|
+
private initializeLendingPool;
|
|
15
|
+
getLendingPool(factory: Factory, pair: Address): Promise<OffchainAccountLendingPool>;
|
|
16
|
+
private initializeLendingVault;
|
|
17
|
+
getLendingVault(vaultAddress: Address): Promise<OffchainAccountVault>;
|
|
18
|
+
getUserData(): Promise<FactoryIndex<UserData> | null>;
|
|
19
|
+
getLendingVaultsUserData(): Promise<AddressIndex<VaultPosition> | null>;
|
|
20
|
+
getBorrowPositions(): Promise<FactoryIndex<Address[]>>;
|
|
21
|
+
getSupplyPositions(): Promise<FactoryIndex<Address[]>>;
|
|
22
|
+
getLendingVaultsSuppliedUSD(): Promise<number>;
|
|
23
|
+
getLendingVaultsEarningsUSD(): Promise<number>;
|
|
24
|
+
getLendingVaultsYearlyYieldUSD(): Promise<number>;
|
|
25
|
+
}
|
|
@@ -1,129 +1,129 @@
|
|
|
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
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const lendingPool_1 = __importDefault(require("./lendingPool"));
|
|
16
|
-
const
|
|
17
|
-
class OffchainAccount {
|
|
18
|
-
constructor(offchain, account) {
|
|
19
|
-
this.
|
|
20
|
-
this.getAccountAddress = () => this.accountAddress;
|
|
21
|
-
this.offchain = offchain;
|
|
22
|
-
this.accountAddress = account;
|
|
23
|
-
this.lendingPools = {};
|
|
24
|
-
this.
|
|
25
|
-
}
|
|
26
|
-
initializeLendingPool(factory, pair) {
|
|
27
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
28
|
-
const lendingPool = yield this.offchain.getLendingPool(factory, pair);
|
|
29
|
-
return new lendingPool_1.default(this, lendingPool);
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
getLendingPool(factory, pair) {
|
|
33
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
-
if (!this.lendingPools[factory])
|
|
35
|
-
this.lendingPools[factory] = {};
|
|
36
|
-
const lendingPoolsOfFactory = this.lendingPools[factory];
|
|
37
|
-
if (!lendingPoolsOfFactory[pair])
|
|
38
|
-
lendingPoolsOfFactory[pair] = this.initializeLendingPool(factory, pair);
|
|
39
|
-
return lendingPoolsOfFactory[pair];
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
initializeLendingVault(vaultAddress) {
|
|
43
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
44
|
-
const lendingVault = yield this.offchain.getLendingVault(vaultAddress);
|
|
45
|
-
return new
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
getLendingVault(vaultAddress) {
|
|
49
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
-
if (!this.
|
|
51
|
-
this.
|
|
52
|
-
return this.
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
getUserData() {
|
|
56
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
-
return this.offchain.getUserData(this.accountAddress);
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
getLendingVaultsUserData() {
|
|
61
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
-
return this.offchain.getLendingVaultsUserData(this.accountAddress);
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
getBorrowPositions() {
|
|
66
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
-
const result = {};
|
|
68
|
-
const userData = yield this.getUserData();
|
|
69
|
-
if (userData === null)
|
|
70
|
-
return result;
|
|
71
|
-
for (const factory in userData) {
|
|
72
|
-
result[factory] = Object.keys(userData[factory].collateralPositions);
|
|
73
|
-
}
|
|
74
|
-
return result;
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
getSupplyPositions() {
|
|
78
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
-
const result = {};
|
|
80
|
-
const userData = yield this.getUserData();
|
|
81
|
-
if (userData === null)
|
|
82
|
-
return result;
|
|
83
|
-
for (const factory in userData) {
|
|
84
|
-
result[factory] = Object.keys(userData[factory].supplyPositions);
|
|
85
|
-
}
|
|
86
|
-
return result;
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
getLendingVaultsSuppliedUSD() {
|
|
90
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
-
let suppliedUSD = 0;
|
|
92
|
-
const lendingVaultUserData = yield this.getLendingVaultsUserData();
|
|
93
|
-
if (lendingVaultUserData === null)
|
|
94
|
-
return 0;
|
|
95
|
-
for (const address in lendingVaultUserData) {
|
|
96
|
-
const lendingVault = yield this.getLendingVault(address);
|
|
97
|
-
suppliedUSD += yield lendingVault.getValue();
|
|
98
|
-
}
|
|
99
|
-
return suppliedUSD;
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
getLendingVaultsEarningsUSD() {
|
|
103
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
104
|
-
let earningsUSD = 0;
|
|
105
|
-
const lendingVaultUserData = yield this.getLendingVaultsUserData();
|
|
106
|
-
if (lendingVaultUserData === null)
|
|
107
|
-
return 0;
|
|
108
|
-
for (const address in lendingVaultUserData) {
|
|
109
|
-
const lendingVault = yield this.getLendingVault(address);
|
|
110
|
-
earningsUSD += yield lendingVault.getEarningsUSD();
|
|
111
|
-
}
|
|
112
|
-
return earningsUSD;
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
getLendingVaultsYearlyYieldUSD() {
|
|
116
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
117
|
-
let yieldUSD = 0;
|
|
118
|
-
const lendingVaultUserData = yield this.getLendingVaultsUserData();
|
|
119
|
-
if (lendingVaultUserData === null)
|
|
120
|
-
return 0;
|
|
121
|
-
for (const address in lendingVaultUserData) {
|
|
122
|
-
const lendingVault = yield this.getLendingVault(address);
|
|
123
|
-
yieldUSD += (yield lendingVault.getValue()) * (yield lendingVault.getPoolToken().getSupplyAPR());
|
|
124
|
-
}
|
|
125
|
-
return yieldUSD;
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
exports.default = OffchainAccount;
|
|
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
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const lendingPool_1 = __importDefault(require("./lendingPool"));
|
|
16
|
+
const offchainAccountVault_1 = __importDefault(require("./vault/offchainAccountVault"));
|
|
17
|
+
class OffchainAccount {
|
|
18
|
+
constructor(offchain, account) {
|
|
19
|
+
this.getOffchain = () => this.offchain;
|
|
20
|
+
this.getAccountAddress = () => this.accountAddress;
|
|
21
|
+
this.offchain = offchain;
|
|
22
|
+
this.accountAddress = account;
|
|
23
|
+
this.lendingPools = {};
|
|
24
|
+
this.vaults = {};
|
|
25
|
+
}
|
|
26
|
+
initializeLendingPool(factory, pair) {
|
|
27
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
28
|
+
const lendingPool = yield this.offchain.getLendingPool(factory, pair);
|
|
29
|
+
return new lendingPool_1.default(this, lendingPool);
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
getLendingPool(factory, pair) {
|
|
33
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
if (!this.lendingPools[factory])
|
|
35
|
+
this.lendingPools[factory] = {};
|
|
36
|
+
const lendingPoolsOfFactory = this.lendingPools[factory];
|
|
37
|
+
if (!lendingPoolsOfFactory[pair])
|
|
38
|
+
lendingPoolsOfFactory[pair] = this.initializeLendingPool(factory, pair);
|
|
39
|
+
return lendingPoolsOfFactory[pair];
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
initializeLendingVault(vaultAddress) {
|
|
43
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
const lendingVault = yield this.offchain.getLendingVault(vaultAddress);
|
|
45
|
+
return new offchainAccountVault_1.default(this, lendingVault);
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
getLendingVault(vaultAddress) {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
if (!this.vaults[vaultAddress])
|
|
51
|
+
this.vaults[vaultAddress] = this.initializeLendingVault(vaultAddress);
|
|
52
|
+
return this.vaults[vaultAddress];
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
getUserData() {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
return this.offchain.getUserData(this.accountAddress);
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
getLendingVaultsUserData() {
|
|
61
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
return this.offchain.getLendingVaultsUserData(this.accountAddress);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
getBorrowPositions() {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
const result = {};
|
|
68
|
+
const userData = yield this.getUserData();
|
|
69
|
+
if (userData === null)
|
|
70
|
+
return result;
|
|
71
|
+
for (const factory in userData) {
|
|
72
|
+
result[factory] = Object.keys(userData[factory].collateralPositions);
|
|
73
|
+
}
|
|
74
|
+
return result;
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
getSupplyPositions() {
|
|
78
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
+
const result = {};
|
|
80
|
+
const userData = yield this.getUserData();
|
|
81
|
+
if (userData === null)
|
|
82
|
+
return result;
|
|
83
|
+
for (const factory in userData) {
|
|
84
|
+
result[factory] = Object.keys(userData[factory].supplyPositions);
|
|
85
|
+
}
|
|
86
|
+
return result;
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
getLendingVaultsSuppliedUSD() {
|
|
90
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
+
let suppliedUSD = 0;
|
|
92
|
+
const lendingVaultUserData = yield this.getLendingVaultsUserData();
|
|
93
|
+
if (lendingVaultUserData === null)
|
|
94
|
+
return 0;
|
|
95
|
+
for (const address in lendingVaultUserData) {
|
|
96
|
+
const lendingVault = yield this.getLendingVault(address);
|
|
97
|
+
suppliedUSD += yield lendingVault.getValue();
|
|
98
|
+
}
|
|
99
|
+
return suppliedUSD;
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
getLendingVaultsEarningsUSD() {
|
|
103
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
104
|
+
let earningsUSD = 0;
|
|
105
|
+
const lendingVaultUserData = yield this.getLendingVaultsUserData();
|
|
106
|
+
if (lendingVaultUserData === null)
|
|
107
|
+
return 0;
|
|
108
|
+
for (const address in lendingVaultUserData) {
|
|
109
|
+
const lendingVault = yield this.getLendingVault(address);
|
|
110
|
+
earningsUSD += yield lendingVault.getEarningsUSD();
|
|
111
|
+
}
|
|
112
|
+
return earningsUSD;
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
getLendingVaultsYearlyYieldUSD() {
|
|
116
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
117
|
+
let yieldUSD = 0;
|
|
118
|
+
const lendingVaultUserData = yield this.getLendingVaultsUserData();
|
|
119
|
+
if (lendingVaultUserData === null)
|
|
120
|
+
return 0;
|
|
121
|
+
for (const address in lendingVaultUserData) {
|
|
122
|
+
const lendingVault = yield this.getLendingVault(address);
|
|
123
|
+
yieldUSD += (yield lendingVault.getValue()) * (yield lendingVault.getPoolToken().getSupplyAPR());
|
|
124
|
+
}
|
|
125
|
+
return yieldUSD;
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
exports.default = OffchainAccount;
|