@kamino-finance/klend-sdk 3.2.25 → 4.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/dist/classes/action.d.ts +1 -0
- package/dist/classes/action.d.ts.map +1 -0
- package/dist/classes/action.js +1130 -1186
- package/dist/classes/action.js.map +1 -1
- package/dist/classes/curve.d.ts +1 -0
- package/dist/classes/curve.d.ts.map +1 -0
- package/dist/classes/curve.js +1 -1
- package/dist/classes/curve.js.map +1 -1
- package/dist/classes/fraction.d.ts +1 -0
- package/dist/classes/fraction.d.ts.map +1 -0
- package/dist/classes/fraction.js +7 -6
- package/dist/classes/fraction.js.map +1 -1
- package/dist/classes/index.d.ts +1 -0
- package/dist/classes/index.d.ts.map +1 -0
- package/dist/classes/index.js.map +1 -1
- package/dist/classes/jupiterPerps.d.ts +1 -0
- package/dist/classes/jupiterPerps.d.ts.map +1 -0
- package/dist/classes/jupiterPerps.js +7 -18
- package/dist/classes/jupiterPerps.js.map +1 -1
- package/dist/classes/manager.d.ts +1 -0
- package/dist/classes/manager.d.ts.map +1 -0
- package/dist/classes/manager.js +131 -158
- package/dist/classes/manager.js.map +1 -1
- package/dist/classes/market.d.ts +1 -0
- package/dist/classes/market.d.ts.map +1 -0
- package/dist/classes/market.js +620 -714
- package/dist/classes/market.js.map +1 -1
- package/dist/classes/obligation.d.ts +1 -0
- package/dist/classes/obligation.d.ts.map +1 -0
- package/dist/classes/obligation.js +60 -62
- package/dist/classes/obligation.js.map +1 -1
- package/dist/classes/reserve.d.ts +1 -0
- package/dist/classes/reserve.d.ts.map +1 -0
- package/dist/classes/reserve.js +135 -138
- package/dist/classes/reserve.js.map +1 -1
- package/dist/classes/shared.d.ts +1 -0
- package/dist/classes/shared.d.ts.map +1 -0
- package/dist/classes/shared.js.map +1 -1
- package/dist/classes/utils.d.ts +1 -0
- package/dist/classes/utils.d.ts.map +1 -0
- package/dist/classes/utils.js +3 -3
- package/dist/classes/utils.js.map +1 -1
- package/dist/classes/vault.d.ts +1 -0
- package/dist/classes/vault.d.ts.map +1 -0
- package/dist/classes/vault.js +334 -354
- package/dist/classes/vault.js.map +1 -1
- package/dist/client_kamino_manager.d.ts +1 -0
- package/dist/client_kamino_manager.d.ts.map +1 -0
- package/dist/client_kamino_manager.js +323 -326
- package/dist/client_kamino_manager.js.map +1 -1
- package/dist/idl_codegen/accounts/LendingMarket.d.ts +1 -0
- package/dist/idl_codegen/accounts/LendingMarket.d.ts.map +1 -0
- package/dist/idl_codegen/accounts/LendingMarket.js +89 -55
- package/dist/idl_codegen/accounts/LendingMarket.js.map +1 -1
- package/dist/idl_codegen/accounts/Obligation.d.ts +1 -0
- package/dist/idl_codegen/accounts/Obligation.d.ts.map +1 -0
- package/dist/idl_codegen/accounts/Obligation.js +87 -56
- package/dist/idl_codegen/accounts/Obligation.js.map +1 -1
- package/dist/idl_codegen/accounts/ReferrerState.d.ts +1 -0
- package/dist/idl_codegen/accounts/ReferrerState.d.ts.map +1 -0
- package/dist/idl_codegen/accounts/ReferrerState.js +22 -33
- package/dist/idl_codegen/accounts/ReferrerState.js.map +1 -1
- package/dist/idl_codegen/accounts/ReferrerTokenState.d.ts +1 -0
- package/dist/idl_codegen/accounts/ReferrerTokenState.d.ts.map +1 -0
- package/dist/idl_codegen/accounts/ReferrerTokenState.js +35 -37
- package/dist/idl_codegen/accounts/ReferrerTokenState.js.map +1 -1
- package/dist/idl_codegen/accounts/Reserve.d.ts +1 -0
- package/dist/idl_codegen/accounts/Reserve.d.ts.map +1 -0
- package/dist/idl_codegen/accounts/Reserve.js +60 -49
- package/dist/idl_codegen/accounts/Reserve.js.map +1 -1
- package/dist/idl_codegen/accounts/ShortUrl.d.ts +1 -0
- package/dist/idl_codegen/accounts/ShortUrl.d.ts.map +1 -0
- package/dist/idl_codegen/accounts/ShortUrl.js +22 -33
- package/dist/idl_codegen/accounts/ShortUrl.js.map +1 -1
- package/dist/idl_codegen/accounts/UserMetadata.d.ts +1 -0
- package/dist/idl_codegen/accounts/UserMetadata.d.ts.map +1 -0
- package/dist/idl_codegen/accounts/UserMetadata.js +34 -37
- package/dist/idl_codegen/accounts/UserMetadata.js.map +1 -1
- package/dist/idl_codegen/accounts/UserState.d.ts +1 -0
- package/dist/idl_codegen/accounts/UserState.d.ts.map +1 -0
- package/dist/idl_codegen/accounts/UserState.js +77 -48
- package/dist/idl_codegen/accounts/UserState.js.map +1 -1
- package/dist/idl_codegen/accounts/index.d.ts +1 -0
- package/dist/idl_codegen/accounts/index.d.ts.map +1 -0
- package/dist/idl_codegen/accounts/index.js.map +1 -1
- package/dist/idl_codegen/errors/anchor.d.ts +1 -0
- package/dist/idl_codegen/errors/anchor.d.ts.map +1 -0
- package/dist/idl_codegen/errors/anchor.js +270 -216
- package/dist/idl_codegen/errors/anchor.js.map +1 -1
- package/dist/idl_codegen/errors/custom.d.ts +1 -0
- package/dist/idl_codegen/errors/custom.d.ts.map +1 -0
- package/dist/idl_codegen/errors/custom.js +560 -448
- package/dist/idl_codegen/errors/custom.js.map +1 -1
- package/dist/idl_codegen/errors/index.d.ts +1 -0
- package/dist/idl_codegen/errors/index.d.ts.map +1 -0
- package/dist/idl_codegen/errors/index.js.map +1 -1
- package/dist/idl_codegen/instructions/borrowObligationLiquidity.d.ts +1 -0
- package/dist/idl_codegen/instructions/borrowObligationLiquidity.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/borrowObligationLiquidity.js.map +1 -1
- package/dist/idl_codegen/instructions/deleteReferrerStateAndShortUrl.d.ts +1 -0
- package/dist/idl_codegen/instructions/deleteReferrerStateAndShortUrl.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/deleteReferrerStateAndShortUrl.js.map +1 -1
- package/dist/idl_codegen/instructions/depositObligationCollateral.d.ts +1 -0
- package/dist/idl_codegen/instructions/depositObligationCollateral.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/depositObligationCollateral.js.map +1 -1
- package/dist/idl_codegen/instructions/depositReserveLiquidity.d.ts +1 -0
- package/dist/idl_codegen/instructions/depositReserveLiquidity.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/depositReserveLiquidity.js.map +1 -1
- package/dist/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateral.d.ts +1 -0
- package/dist/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateral.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateral.js.map +1 -1
- package/dist/idl_codegen/instructions/flashBorrowReserveLiquidity.d.ts +1 -0
- package/dist/idl_codegen/instructions/flashBorrowReserveLiquidity.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/flashBorrowReserveLiquidity.js.map +1 -1
- package/dist/idl_codegen/instructions/flashRepayReserveLiquidity.d.ts +1 -0
- package/dist/idl_codegen/instructions/flashRepayReserveLiquidity.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/flashRepayReserveLiquidity.js.map +1 -1
- package/dist/idl_codegen/instructions/idlMissingTypes.d.ts +1 -0
- package/dist/idl_codegen/instructions/idlMissingTypes.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/idlMissingTypes.js.map +1 -1
- package/dist/idl_codegen/instructions/index.d.ts +1 -0
- package/dist/idl_codegen/instructions/index.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/index.js.map +1 -1
- package/dist/idl_codegen/instructions/initFarmsForReserve.d.ts +1 -0
- package/dist/idl_codegen/instructions/initFarmsForReserve.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/initFarmsForReserve.js.map +1 -1
- package/dist/idl_codegen/instructions/initLendingMarket.d.ts +1 -0
- package/dist/idl_codegen/instructions/initLendingMarket.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/initLendingMarket.js.map +1 -1
- package/dist/idl_codegen/instructions/initObligation.d.ts +1 -0
- package/dist/idl_codegen/instructions/initObligation.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/initObligation.js.map +1 -1
- package/dist/idl_codegen/instructions/initObligationFarmsForReserve.d.ts +1 -0
- package/dist/idl_codegen/instructions/initObligationFarmsForReserve.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/initObligationFarmsForReserve.js.map +1 -1
- package/dist/idl_codegen/instructions/initReferrerStateAndShortUrl.d.ts +1 -0
- package/dist/idl_codegen/instructions/initReferrerStateAndShortUrl.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/initReferrerStateAndShortUrl.js.map +1 -1
- package/dist/idl_codegen/instructions/initReferrerTokenState.d.ts +1 -0
- package/dist/idl_codegen/instructions/initReferrerTokenState.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/initReferrerTokenState.js.map +1 -1
- package/dist/idl_codegen/instructions/initReserve.d.ts +1 -0
- package/dist/idl_codegen/instructions/initReserve.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/initReserve.js.map +1 -1
- package/dist/idl_codegen/instructions/initUserMetadata.d.ts +1 -0
- package/dist/idl_codegen/instructions/initUserMetadata.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/initUserMetadata.js.map +1 -1
- package/dist/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateral.d.ts +1 -0
- package/dist/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateral.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateral.js.map +1 -1
- package/dist/idl_codegen/instructions/redeemFees.d.ts +1 -0
- package/dist/idl_codegen/instructions/redeemFees.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/redeemFees.js.map +1 -1
- package/dist/idl_codegen/instructions/redeemReserveCollateral.d.ts +1 -0
- package/dist/idl_codegen/instructions/redeemReserveCollateral.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/redeemReserveCollateral.js.map +1 -1
- package/dist/idl_codegen/instructions/refreshObligation.d.ts +1 -0
- package/dist/idl_codegen/instructions/refreshObligation.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/refreshObligation.js.map +1 -1
- package/dist/idl_codegen/instructions/refreshObligationFarmsForReserve.d.ts +1 -0
- package/dist/idl_codegen/instructions/refreshObligationFarmsForReserve.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/refreshObligationFarmsForReserve.js.map +1 -1
- package/dist/idl_codegen/instructions/refreshReserve.d.ts +1 -0
- package/dist/idl_codegen/instructions/refreshReserve.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/refreshReserve.js.map +1 -1
- package/dist/idl_codegen/instructions/refreshReservesBatch.d.ts +1 -0
- package/dist/idl_codegen/instructions/refreshReservesBatch.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/refreshReservesBatch.js.map +1 -1
- package/dist/idl_codegen/instructions/repayObligationLiquidity.d.ts +1 -0
- package/dist/idl_codegen/instructions/repayObligationLiquidity.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/repayObligationLiquidity.js.map +1 -1
- package/dist/idl_codegen/instructions/requestElevationGroup.d.ts +1 -0
- package/dist/idl_codegen/instructions/requestElevationGroup.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/requestElevationGroup.js.map +1 -1
- package/dist/idl_codegen/instructions/socializeLoss.d.ts +1 -0
- package/dist/idl_codegen/instructions/socializeLoss.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/socializeLoss.js.map +1 -1
- package/dist/idl_codegen/instructions/updateEntireReserveConfig.d.ts +1 -0
- package/dist/idl_codegen/instructions/updateEntireReserveConfig.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/updateEntireReserveConfig.js.map +1 -1
- package/dist/idl_codegen/instructions/updateLendingMarket.d.ts +1 -0
- package/dist/idl_codegen/instructions/updateLendingMarket.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/updateLendingMarket.js.map +1 -1
- package/dist/idl_codegen/instructions/updateLendingMarketOwner.d.ts +1 -0
- package/dist/idl_codegen/instructions/updateLendingMarketOwner.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/updateLendingMarketOwner.js.map +1 -1
- package/dist/idl_codegen/instructions/updateReserveConfig.d.ts +1 -0
- package/dist/idl_codegen/instructions/updateReserveConfig.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/updateReserveConfig.js.map +1 -1
- package/dist/idl_codegen/instructions/updateSingleReserveConfig.d.ts +1 -0
- package/dist/idl_codegen/instructions/updateSingleReserveConfig.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/updateSingleReserveConfig.js.map +1 -1
- package/dist/idl_codegen/instructions/withdrawObligationCollateral.d.ts +1 -0
- package/dist/idl_codegen/instructions/withdrawObligationCollateral.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/withdrawObligationCollateral.js.map +1 -1
- package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.d.ts +1 -0
- package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js.map +1 -1
- package/dist/idl_codegen/instructions/withdrawProtocolFee.d.ts +1 -0
- package/dist/idl_codegen/instructions/withdrawProtocolFee.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/withdrawProtocolFee.js.map +1 -1
- package/dist/idl_codegen/instructions/withdrawReferrerFees.d.ts +1 -0
- package/dist/idl_codegen/instructions/withdrawReferrerFees.d.ts.map +1 -0
- package/dist/idl_codegen/instructions/withdrawReferrerFees.js.map +1 -1
- package/dist/idl_codegen/programId.d.ts +1 -0
- package/dist/idl_codegen/programId.d.ts.map +1 -0
- package/dist/idl_codegen/programId.js.map +1 -1
- package/dist/idl_codegen/types/AssetTier.d.ts +1 -0
- package/dist/idl_codegen/types/AssetTier.d.ts.map +1 -0
- package/dist/idl_codegen/types/AssetTier.js +12 -18
- package/dist/idl_codegen/types/AssetTier.js.map +1 -1
- package/dist/idl_codegen/types/BigFractionBytes.d.ts +1 -0
- package/dist/idl_codegen/types/BigFractionBytes.d.ts.map +1 -0
- package/dist/idl_codegen/types/BigFractionBytes.js +2 -0
- package/dist/idl_codegen/types/BigFractionBytes.js.map +1 -1
- package/dist/idl_codegen/types/BorrowRateCurve.d.ts +1 -0
- package/dist/idl_codegen/types/BorrowRateCurve.d.ts.map +1 -0
- package/dist/idl_codegen/types/BorrowRateCurve.js +2 -1
- package/dist/idl_codegen/types/BorrowRateCurve.js.map +1 -1
- package/dist/idl_codegen/types/CurvePoint.d.ts +1 -0
- package/dist/idl_codegen/types/CurvePoint.d.ts.map +1 -0
- package/dist/idl_codegen/types/CurvePoint.js +2 -0
- package/dist/idl_codegen/types/CurvePoint.js.map +1 -1
- package/dist/idl_codegen/types/ElevationGroup.d.ts +1 -0
- package/dist/idl_codegen/types/ElevationGroup.d.ts.map +1 -0
- package/dist/idl_codegen/types/ElevationGroup.js +10 -0
- package/dist/idl_codegen/types/ElevationGroup.js.map +1 -1
- package/dist/idl_codegen/types/FeeCalculation.d.ts +1 -0
- package/dist/idl_codegen/types/FeeCalculation.d.ts.map +1 -0
- package/dist/idl_codegen/types/FeeCalculation.js +8 -12
- package/dist/idl_codegen/types/FeeCalculation.js.map +1 -1
- package/dist/idl_codegen/types/InitObligationArgs.d.ts +1 -0
- package/dist/idl_codegen/types/InitObligationArgs.d.ts.map +1 -0
- package/dist/idl_codegen/types/InitObligationArgs.js +2 -0
- package/dist/idl_codegen/types/InitObligationArgs.js.map +1 -1
- package/dist/idl_codegen/types/LastUpdate.d.ts +1 -0
- package/dist/idl_codegen/types/LastUpdate.d.ts.map +1 -0
- package/dist/idl_codegen/types/LastUpdate.js +7 -0
- package/dist/idl_codegen/types/LastUpdate.js.map +1 -1
- package/dist/idl_codegen/types/ObligationCollateral.d.ts +1 -0
- package/dist/idl_codegen/types/ObligationCollateral.d.ts.map +1 -0
- package/dist/idl_codegen/types/ObligationCollateral.js +14 -0
- package/dist/idl_codegen/types/ObligationCollateral.js.map +1 -1
- package/dist/idl_codegen/types/ObligationLiquidity.d.ts +1 -0
- package/dist/idl_codegen/types/ObligationLiquidity.d.ts.map +1 -0
- package/dist/idl_codegen/types/ObligationLiquidity.js +17 -1
- package/dist/idl_codegen/types/ObligationLiquidity.js.map +1 -1
- package/dist/idl_codegen/types/PriceHeuristic.d.ts +1 -0
- package/dist/idl_codegen/types/PriceHeuristic.d.ts.map +1 -0
- package/dist/idl_codegen/types/PriceHeuristic.js +6 -0
- package/dist/idl_codegen/types/PriceHeuristic.js.map +1 -1
- package/dist/idl_codegen/types/PythConfiguration.d.ts +1 -0
- package/dist/idl_codegen/types/PythConfiguration.d.ts.map +1 -0
- package/dist/idl_codegen/types/PythConfiguration.js +2 -0
- package/dist/idl_codegen/types/PythConfiguration.js.map +1 -1
- package/dist/idl_codegen/types/ReserveCollateral.d.ts +1 -0
- package/dist/idl_codegen/types/ReserveCollateral.d.ts.map +1 -0
- package/dist/idl_codegen/types/ReserveCollateral.js +8 -0
- package/dist/idl_codegen/types/ReserveCollateral.js.map +1 -1
- package/dist/idl_codegen/types/ReserveConfig.d.ts +1 -0
- package/dist/idl_codegen/types/ReserveConfig.d.ts.map +1 -0
- package/dist/idl_codegen/types/ReserveConfig.js +78 -5
- package/dist/idl_codegen/types/ReserveConfig.js.map +1 -1
- package/dist/idl_codegen/types/ReserveFarmKind.d.ts +1 -0
- package/dist/idl_codegen/types/ReserveFarmKind.d.ts.map +1 -0
- package/dist/idl_codegen/types/ReserveFarmKind.js +8 -12
- package/dist/idl_codegen/types/ReserveFarmKind.js.map +1 -1
- package/dist/idl_codegen/types/ReserveFees.d.ts +1 -0
- package/dist/idl_codegen/types/ReserveFees.d.ts.map +1 -0
- package/dist/idl_codegen/types/ReserveFees.js +16 -0
- package/dist/idl_codegen/types/ReserveFees.js.map +1 -1
- package/dist/idl_codegen/types/ReserveLiquidity.d.ts +1 -0
- package/dist/idl_codegen/types/ReserveLiquidity.d.ts.map +1 -0
- package/dist/idl_codegen/types/ReserveLiquidity.js +43 -1
- package/dist/idl_codegen/types/ReserveLiquidity.js.map +1 -1
- package/dist/idl_codegen/types/ReserveStatus.d.ts +1 -0
- package/dist/idl_codegen/types/ReserveStatus.d.ts.map +1 -0
- package/dist/idl_codegen/types/ReserveStatus.js +12 -18
- package/dist/idl_codegen/types/ReserveStatus.js.map +1 -1
- package/dist/idl_codegen/types/ScopeConfiguration.d.ts +1 -0
- package/dist/idl_codegen/types/ScopeConfiguration.d.ts.map +1 -0
- package/dist/idl_codegen/types/ScopeConfiguration.js +6 -0
- package/dist/idl_codegen/types/ScopeConfiguration.js.map +1 -1
- package/dist/idl_codegen/types/SwitchboardConfiguration.d.ts +1 -0
- package/dist/idl_codegen/types/SwitchboardConfiguration.d.ts.map +1 -0
- package/dist/idl_codegen/types/SwitchboardConfiguration.js +3 -0
- package/dist/idl_codegen/types/SwitchboardConfiguration.js.map +1 -1
- package/dist/idl_codegen/types/TokenInfo.d.ts +1 -0
- package/dist/idl_codegen/types/TokenInfo.d.ts.map +1 -0
- package/dist/idl_codegen/types/TokenInfo.js +27 -4
- package/dist/idl_codegen/types/TokenInfo.js.map +1 -1
- package/dist/idl_codegen/types/UpdateConfigMode.d.ts +1 -0
- package/dist/idl_codegen/types/UpdateConfigMode.d.ts.map +1 -0
- package/dist/idl_codegen/types/UpdateConfigMode.js +188 -282
- package/dist/idl_codegen/types/UpdateConfigMode.js.map +1 -1
- package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.d.ts +1 -0
- package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.d.ts.map +1 -0
- package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.js +41 -33
- package/dist/idl_codegen/types/UpdateLendingMarketConfigValue.js.map +1 -1
- package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts +1 -0
- package/dist/idl_codegen/types/UpdateLendingMarketMode.d.ts.map +1 -0
- package/dist/idl_codegen/types/UpdateLendingMarketMode.js +72 -108
- package/dist/idl_codegen/types/UpdateLendingMarketMode.js.map +1 -1
- package/dist/idl_codegen/types/WithdrawalCaps.d.ts +1 -0
- package/dist/idl_codegen/types/WithdrawalCaps.d.ts.map +1 -0
- package/dist/idl_codegen/types/WithdrawalCaps.js +4 -0
- package/dist/idl_codegen/types/WithdrawalCaps.js.map +1 -1
- package/dist/idl_codegen/types/index.d.ts +1 -0
- package/dist/idl_codegen/types/index.d.ts.map +1 -0
- package/dist/idl_codegen/types/index.js.map +1 -1
- package/dist/idl_codegen/zero_padding/ObligationZP.d.ts +1 -0
- package/dist/idl_codegen/zero_padding/ObligationZP.d.ts.map +1 -0
- package/dist/idl_codegen/zero_padding/ObligationZP.js +83 -54
- package/dist/idl_codegen/zero_padding/ObligationZP.js.map +1 -1
- package/dist/idl_codegen/zero_padding/index.d.ts +1 -0
- package/dist/idl_codegen/zero_padding/index.d.ts.map +1 -0
- package/dist/idl_codegen/zero_padding/index.js.map +1 -1
- package/dist/idl_codegen_jupiter_perps/accounts/Pool.d.ts +1 -0
- package/dist/idl_codegen_jupiter_perps/accounts/Pool.d.ts.map +1 -0
- package/dist/idl_codegen_jupiter_perps/accounts/Pool.js +39 -42
- package/dist/idl_codegen_jupiter_perps/accounts/Pool.js.map +1 -1
- package/dist/idl_codegen_jupiter_perps/accounts/index.d.ts +1 -0
- package/dist/idl_codegen_jupiter_perps/accounts/index.d.ts.map +1 -0
- package/dist/idl_codegen_jupiter_perps/accounts/index.js.map +1 -1
- package/dist/idl_codegen_jupiter_perps/programId.d.ts +1 -0
- package/dist/idl_codegen_jupiter_perps/programId.d.ts.map +1 -0
- package/dist/idl_codegen_jupiter_perps/programId.js.map +1 -1
- package/dist/idl_codegen_jupiter_perps/types/Fees.d.ts +1 -0
- package/dist/idl_codegen_jupiter_perps/types/Fees.d.ts.map +1 -0
- package/dist/idl_codegen_jupiter_perps/types/Fees.js +9 -0
- package/dist/idl_codegen_jupiter_perps/types/Fees.js.map +1 -1
- package/dist/idl_codegen_jupiter_perps/types/Limit.d.ts +1 -0
- package/dist/idl_codegen_jupiter_perps/types/Limit.d.ts.map +1 -0
- package/dist/idl_codegen_jupiter_perps/types/Limit.js +3 -0
- package/dist/idl_codegen_jupiter_perps/types/Limit.js.map +1 -1
- package/dist/idl_codegen_jupiter_perps/types/PoolApr.d.ts +1 -0
- package/dist/idl_codegen_jupiter_perps/types/PoolApr.d.ts.map +1 -0
- package/dist/idl_codegen_jupiter_perps/types/PoolApr.js +3 -0
- package/dist/idl_codegen_jupiter_perps/types/PoolApr.js.map +1 -1
- package/dist/idl_codegen_jupiter_perps/types/index.d.ts +1 -0
- package/dist/idl_codegen_jupiter_perps/types/index.d.ts.map +1 -0
- package/dist/idl_codegen_jupiter_perps/types/index.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/accounts/Reserve.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/accounts/Reserve.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/accounts/Reserve.js +58 -47
- package/dist/idl_codegen_kamino_vault/accounts/Reserve.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/accounts/VaultState.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/accounts/VaultState.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/accounts/VaultState.js +51 -47
- package/dist/idl_codegen_kamino_vault/accounts/VaultState.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/accounts/index.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/accounts/index.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/accounts/index.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/errors/anchor.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/errors/anchor.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/errors/anchor.js +270 -216
- package/dist/idl_codegen_kamino_vault/errors/anchor.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/errors/custom.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/errors/custom.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/errors/custom.js +120 -96
- package/dist/idl_codegen_kamino_vault/errors/custom.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/errors/index.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/errors/index.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/errors/index.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/instructions/deposit.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/deposit.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/deposit.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/instructions/index.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/index.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/index.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/instructions/initVault.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/initVault.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/initVault.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/instructions/invest.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/invest.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/invest.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/instructions/updateReserveAllocation.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/updateReserveAllocation.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/updateReserveAllocation.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/instructions/withdraw.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/withdraw.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/instructions/withdraw.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/programId.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/programId.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/programId.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/BigFractionBytes.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/BigFractionBytes.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/BigFractionBytes.js +2 -0
- package/dist/idl_codegen_kamino_vault/types/BigFractionBytes.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/BorrowRateCurve.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/BorrowRateCurve.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/BorrowRateCurve.js +2 -1
- package/dist/idl_codegen_kamino_vault/types/BorrowRateCurve.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/CurvePoint.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/CurvePoint.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/CurvePoint.js +2 -0
- package/dist/idl_codegen_kamino_vault/types/CurvePoint.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/LastUpdate.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/LastUpdate.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/LastUpdate.js +7 -0
- package/dist/idl_codegen_kamino_vault/types/LastUpdate.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/PriceHeuristic.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/PriceHeuristic.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/PriceHeuristic.js +6 -0
- package/dist/idl_codegen_kamino_vault/types/PriceHeuristic.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/PythConfiguration.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/PythConfiguration.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/PythConfiguration.js +2 -0
- package/dist/idl_codegen_kamino_vault/types/PythConfiguration.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/ReserveCollateral.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/ReserveCollateral.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/ReserveCollateral.js +8 -0
- package/dist/idl_codegen_kamino_vault/types/ReserveCollateral.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/ReserveConfig.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/ReserveConfig.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/ReserveConfig.js +77 -5
- package/dist/idl_codegen_kamino_vault/types/ReserveConfig.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/ReserveFees.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/ReserveFees.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/ReserveFees.js +16 -0
- package/dist/idl_codegen_kamino_vault/types/ReserveFees.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/ReserveLiquidity.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/ReserveLiquidity.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/ReserveLiquidity.js +41 -1
- package/dist/idl_codegen_kamino_vault/types/ReserveLiquidity.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/ScopeConfiguration.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/ScopeConfiguration.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/ScopeConfiguration.js +6 -0
- package/dist/idl_codegen_kamino_vault/types/ScopeConfiguration.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/SwitchboardConfiguration.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/SwitchboardConfiguration.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/SwitchboardConfiguration.js +3 -0
- package/dist/idl_codegen_kamino_vault/types/SwitchboardConfiguration.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/TokenInfo.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/TokenInfo.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/TokenInfo.js +27 -4
- package/dist/idl_codegen_kamino_vault/types/TokenInfo.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/VaultAllocation.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/VaultAllocation.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/VaultAllocation.js +8 -0
- package/dist/idl_codegen_kamino_vault/types/VaultAllocation.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/WithdrawalCaps.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/WithdrawalCaps.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/WithdrawalCaps.js +4 -0
- package/dist/idl_codegen_kamino_vault/types/WithdrawalCaps.js.map +1 -1
- package/dist/idl_codegen_kamino_vault/types/index.d.ts +1 -0
- package/dist/idl_codegen_kamino_vault/types/index.d.ts.map +1 -0
- package/dist/idl_codegen_kamino_vault/types/index.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lending_operations/index.d.ts +1 -0
- package/dist/lending_operations/index.d.ts.map +1 -0
- package/dist/lending_operations/index.js.map +1 -1
- package/dist/lending_operations/repay_with_collateral_calcs.d.ts +1 -0
- package/dist/lending_operations/repay_with_collateral_calcs.d.ts.map +1 -0
- package/dist/lending_operations/repay_with_collateral_calcs.js +1 -1
- package/dist/lending_operations/repay_with_collateral_calcs.js.map +1 -1
- package/dist/lending_operations/repay_with_collateral_operations.d.ts +1 -0
- package/dist/lending_operations/repay_with_collateral_operations.d.ts.map +1 -0
- package/dist/lending_operations/repay_with_collateral_operations.js +15 -24
- package/dist/lending_operations/repay_with_collateral_operations.js.map +1 -1
- package/dist/leverage/calcs.d.ts +1 -0
- package/dist/leverage/calcs.d.ts.map +1 -0
- package/dist/leverage/calcs.js +119 -132
- package/dist/leverage/calcs.js.map +1 -1
- package/dist/leverage/index.d.ts +1 -0
- package/dist/leverage/index.d.ts.map +1 -0
- package/dist/leverage/index.js.map +1 -1
- package/dist/leverage/instructions.d.ts +1 -0
- package/dist/leverage/instructions.d.ts.map +1 -0
- package/dist/leverage/instructions.js.map +1 -1
- package/dist/leverage/operations.d.ts +1 -0
- package/dist/leverage/operations.d.ts.map +1 -0
- package/dist/leverage/operations.js +75 -84
- package/dist/leverage/operations.js.map +1 -1
- package/dist/leverage/utils.d.ts +1 -0
- package/dist/leverage/utils.d.ts.map +1 -0
- package/dist/leverage/utils.js +73 -88
- package/dist/leverage/utils.js.map +1 -1
- package/dist/lib.d.ts +1 -0
- package/dist/lib.d.ts.map +1 -0
- package/dist/lib.js.map +1 -1
- package/dist/referrals/index.d.ts +1 -0
- package/dist/referrals/index.d.ts.map +1 -0
- package/dist/referrals/index.js.map +1 -1
- package/dist/referrals/instructions.d.ts +1 -0
- package/dist/referrals/instructions.d.ts.map +1 -0
- package/dist/referrals/instructions.js +8 -17
- package/dist/referrals/instructions.js.map +1 -1
- package/dist/referrals/operations.d.ts +2 -1
- package/dist/referrals/operations.d.ts.map +1 -0
- package/dist/referrals/operations.js +119 -143
- package/dist/referrals/operations.js.map +1 -1
- package/dist/utils/ObligationType.d.ts +1 -0
- package/dist/utils/ObligationType.d.ts.map +1 -0
- package/dist/utils/ObligationType.js +16 -7
- package/dist/utils/ObligationType.js.map +1 -1
- package/dist/utils/api.d.ts +1 -0
- package/dist/utils/api.d.ts.map +1 -0
- package/dist/utils/api.js +10 -21
- package/dist/utils/api.js.map +1 -1
- package/dist/utils/ata.d.ts +1 -0
- package/dist/utils/ata.d.ts.map +1 -0
- package/dist/utils/ata.js +25 -38
- package/dist/utils/ata.js.map +1 -1
- package/dist/utils/constants.d.ts +1 -0
- package/dist/utils/constants.d.ts.map +1 -0
- package/dist/utils/constants.js +1 -1
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/idl.d.ts +1 -0
- package/dist/utils/idl.d.ts.map +1 -0
- package/dist/utils/idl.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/instruction.d.ts +1 -0
- package/dist/utils/instruction.d.ts.map +1 -0
- package/dist/utils/instruction.js +116 -143
- package/dist/utils/instruction.js.map +1 -1
- package/dist/utils/kamino.d.ts +1 -0
- package/dist/utils/kamino.d.ts.map +1 -0
- package/dist/utils/kamino.js +4 -15
- package/dist/utils/kamino.js.map +1 -1
- package/dist/utils/layout.d.ts +1 -0
- package/dist/utils/layout.d.ts.map +1 -0
- package/dist/utils/layout.js.map +1 -1
- package/dist/utils/lookupTable.d.ts +1 -0
- package/dist/utils/lookupTable.d.ts.map +1 -0
- package/dist/utils/lookupTable.js +14 -27
- package/dist/utils/lookupTable.js.map +1 -1
- package/dist/utils/managerTypes.d.ts +1 -0
- package/dist/utils/managerTypes.d.ts.map +1 -0
- package/dist/utils/managerTypes.js +31 -2
- package/dist/utils/managerTypes.js.map +1 -1
- package/dist/utils/oracle.d.ts +1 -0
- package/dist/utils/oracle.d.ts.map +1 -0
- package/dist/utils/oracle.js +70 -83
- package/dist/utils/oracle.js.map +1 -1
- package/dist/utils/pubkey.d.ts +1 -0
- package/dist/utils/pubkey.d.ts.map +1 -0
- package/dist/utils/pubkey.js +7 -9
- package/dist/utils/pubkey.js.map +1 -1
- package/dist/utils/rpc.d.ts +1 -0
- package/dist/utils/rpc.d.ts.map +1 -0
- package/dist/utils/rpc.js +48 -70
- package/dist/utils/rpc.js.map +1 -1
- package/dist/utils/seeds.d.ts +1 -0
- package/dist/utils/seeds.d.ts.map +1 -0
- package/dist/utils/seeds.js.map +1 -1
- package/dist/utils/sendTransactionsUtils.d.ts +1 -0
- package/dist/utils/sendTransactionsUtils.d.ts.map +1 -0
- package/dist/utils/sendTransactionsUtils.js +82 -82
- package/dist/utils/sendTransactionsUtils.js.map +1 -1
- package/dist/utils/slots.d.ts +1 -0
- package/dist/utils/slots.d.ts.map +1 -0
- package/dist/utils/slots.js.map +1 -1
- package/dist/utils/syncNative.d.ts +1 -0
- package/dist/utils/syncNative.d.ts.map +1 -0
- package/dist/utils/syncNative.js.map +1 -1
- package/dist/utils/userMetadata.d.ts +1 -0
- package/dist/utils/userMetadata.d.ts.map +1 -0
- package/dist/utils/userMetadata.js +40 -52
- package/dist/utils/userMetadata.js.map +1 -1
- package/package.json +9 -3
- package/src/classes/action.ts +2884 -0
- package/src/classes/curve.ts +29 -0
- package/src/classes/fraction.ts +65 -0
- package/src/classes/index.ts +10 -0
- package/src/classes/jupiterPerps.ts +14 -0
- package/src/classes/manager.ts +746 -0
- package/src/classes/market.ts +1459 -0
- package/src/classes/obligation.ts +1315 -0
- package/src/classes/reserve.ts +1980 -0
- package/src/classes/shared.ts +57 -0
- package/src/classes/utils.ts +192 -0
- package/src/classes/vault.ts +808 -0
- package/src/client.ts +446 -0
- package/src/client_kamino_manager.ts +791 -0
- package/src/global.d.ts +1 -0
- package/src/idl_codegen/accounts/LendingMarket.ts +364 -0
- package/src/idl_codegen/accounts/Obligation.ts +349 -0
- package/src/idl_codegen/accounts/ReferrerState.ts +97 -0
- package/src/idl_codegen/accounts/ReferrerTokenState.ts +145 -0
- package/src/idl_codegen/accounts/Reserve.ts +248 -0
- package/src/idl_codegen/accounts/ShortUrl.ts +97 -0
- package/src/idl_codegen/accounts/UserMetadata.ts +142 -0
- package/src/idl_codegen/accounts/UserState.ts +301 -0
- package/src/idl_codegen/accounts/index.ts +19 -0
- package/src/idl_codegen/errors/anchor.ts +773 -0
- package/src/idl_codegen/errors/custom.ts +1633 -0
- package/src/idl_codegen/errors/index.ts +62 -0
- package/src/idl_codegen/instructions/borrowObligationLiquidity.ts +82 -0
- package/src/idl_codegen/instructions/deleteReferrerStateAndShortUrl.ts +30 -0
- package/src/idl_codegen/instructions/depositObligationCollateral.ts +62 -0
- package/src/idl_codegen/instructions/depositReserveLiquidity.ts +90 -0
- package/src/idl_codegen/instructions/depositReserveLiquidityAndObligationCollateral.ts +98 -0
- package/src/idl_codegen/instructions/flashBorrowReserveLiquidity.ts +82 -0
- package/src/idl_codegen/instructions/flashRepayReserveLiquidity.ts +83 -0
- package/src/idl_codegen/instructions/idlMissingTypes.ts +62 -0
- package/src/idl_codegen/instructions/index.ts +138 -0
- package/src/idl_codegen/instructions/initFarmsForReserve.ts +62 -0
- package/src/idl_codegen/instructions/initLendingMarket.ts +50 -0
- package/src/idl_codegen/instructions/initObligation.ts +52 -0
- package/src/idl_codegen/instructions/initObligationFarmsForReserve.ts +60 -0
- package/src/idl_codegen/instructions/initReferrerStateAndShortUrl.ts +50 -0
- package/src/idl_codegen/instructions/initReferrerTokenState.ts +46 -0
- package/src/idl_codegen/instructions/initReserve.ts +74 -0
- package/src/idl_codegen/instructions/initUserMetadata.ts +50 -0
- package/src/idl_codegen/instructions/liquidateObligationAndRedeemReserveCollateral.ts +139 -0
- package/src/idl_codegen/instructions/redeemFees.ts +50 -0
- package/src/idl_codegen/instructions/redeemReserveCollateral.ts +94 -0
- package/src/idl_codegen/instructions/refreshObligation.ts +24 -0
- package/src/idl_codegen/instructions/refreshObligationFarmsForReserve.ts +62 -0
- package/src/idl_codegen/instructions/refreshReserve.ts +40 -0
- package/src/idl_codegen/instructions/refreshReservesBatch.ts +29 -0
- package/src/idl_codegen/instructions/repayObligationLiquidity.ts +64 -0
- package/src/idl_codegen/instructions/requestElevationGroup.ts +40 -0
- package/src/idl_codegen/instructions/socializeLoss.ts +48 -0
- package/src/idl_codegen/instructions/updateEntireReserveConfig.ts +45 -0
- package/src/idl_codegen/instructions/updateLendingMarket.ts +43 -0
- package/src/idl_codegen/instructions/updateLendingMarketOwner.ts +28 -0
- package/src/idl_codegen/instructions/updateReserveConfig.ts +52 -0
- package/src/idl_codegen/instructions/updateSingleReserveConfig.ts +48 -0
- package/src/idl_codegen/instructions/withdrawObligationCollateral.ts +68 -0
- package/src/idl_codegen/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.ts +102 -0
- package/src/idl_codegen/instructions/withdrawProtocolFee.ts +62 -0
- package/src/idl_codegen/instructions/withdrawReferrerFees.ts +54 -0
- package/src/idl_codegen/programId.ts +13 -0
- package/src/idl_codegen/types/AssetTier.ts +118 -0
- package/src/idl_codegen/types/BigFractionBytes.ts +67 -0
- package/src/idl_codegen/types/BorrowRateCurve.ts +60 -0
- package/src/idl_codegen/types/CurvePoint.ts +64 -0
- package/src/idl_codegen/types/ElevationGroup.ts +133 -0
- package/src/idl_codegen/types/FeeCalculation.ts +90 -0
- package/src/idl_codegen/types/InitObligationArgs.ts +61 -0
- package/src/idl_codegen/types/LastUpdate.ts +95 -0
- package/src/idl_codegen/types/ObligationCollateral.ts +128 -0
- package/src/idl_codegen/types/ObligationLiquidity.ts +159 -0
- package/src/idl_codegen/types/PriceHeuristic.ts +81 -0
- package/src/idl_codegen/types/PythConfiguration.ts +56 -0
- package/src/idl_codegen/types/ReserveCollateral.ts +104 -0
- package/src/idl_codegen/types/ReserveConfig.ts +467 -0
- package/src/idl_codegen/types/ReserveFarmKind.ts +90 -0
- package/src/idl_codegen/types/ReserveFees.ts +122 -0
- package/src/idl_codegen/types/ReserveLiquidity.ts +286 -0
- package/src/idl_codegen/types/ReserveStatus.ts +120 -0
- package/src/idl_codegen/types/ScopeConfiguration.ts +85 -0
- package/src/idl_codegen/types/SwitchboardConfiguration.ts +67 -0
- package/src/idl_codegen/types/TokenInfo.ts +190 -0
- package/src/idl_codegen/types/UpdateConfigMode.ts +1440 -0
- package/src/idl_codegen/types/UpdateLendingMarketConfigValue.ts +376 -0
- package/src/idl_codegen/types/UpdateLendingMarketMode.ts +570 -0
- package/src/idl_codegen/types/WithdrawalCaps.ts +86 -0
- package/src/idl_codegen/types/index.ts +276 -0
- package/src/idl_codegen/zero_padding/ObligationZP.ts +186 -0
- package/src/idl_codegen/zero_padding/index.ts +1 -0
- package/src/idl_codegen_jupiter_perps/accounts/Pool.ts +155 -0
- package/src/idl_codegen_jupiter_perps/accounts/index.ts +2 -0
- package/src/idl_codegen_jupiter_perps/programId.ts +7 -0
- package/src/idl_codegen_jupiter_perps/types/Fees.ts +130 -0
- package/src/idl_codegen_jupiter_perps/types/Limit.ts +72 -0
- package/src/idl_codegen_jupiter_perps/types/PoolApr.ts +69 -0
- package/src/idl_codegen_jupiter_perps/types/index.ts +6 -0
- package/src/idl_codegen_kamino_vault/accounts/Reserve.ts +221 -0
- package/src/idl_codegen_kamino_vault/accounts/VaultState.ts +214 -0
- package/src/idl_codegen_kamino_vault/accounts/index.ts +4 -0
- package/src/idl_codegen_kamino_vault/errors/anchor.ts +764 -0
- package/src/idl_codegen_kamino_vault/errors/custom.ts +344 -0
- package/src/idl_codegen_kamino_vault/errors/index.ts +49 -0
- package/src/idl_codegen_kamino_vault/instructions/deposit.ts +54 -0
- package/src/idl_codegen_kamino_vault/instructions/index.ts +10 -0
- package/src/idl_codegen_kamino_vault/instructions/initVault.ts +35 -0
- package/src/idl_codegen_kamino_vault/instructions/invest.ts +60 -0
- package/src/idl_codegen_kamino_vault/instructions/updateReserveAllocation.ts +58 -0
- package/src/idl_codegen_kamino_vault/instructions/withdraw.ts +81 -0
- package/src/idl_codegen_kamino_vault/programId.ts +7 -0
- package/src/idl_codegen_kamino_vault/types/BigFractionBytes.ts +61 -0
- package/src/idl_codegen_kamino_vault/types/BorrowRateCurve.ts +55 -0
- package/src/idl_codegen_kamino_vault/types/CurvePoint.ts +61 -0
- package/src/idl_codegen_kamino_vault/types/LastUpdate.ts +90 -0
- package/src/idl_codegen_kamino_vault/types/PriceHeuristic.ts +78 -0
- package/src/idl_codegen_kamino_vault/types/PythConfiguration.ts +56 -0
- package/src/idl_codegen_kamino_vault/types/ReserveCollateral.ts +104 -0
- package/src/idl_codegen_kamino_vault/types/ReserveConfig.ts +426 -0
- package/src/idl_codegen_kamino_vault/types/ReserveFees.ts +118 -0
- package/src/idl_codegen_kamino_vault/types/ReserveLiquidity.ts +268 -0
- package/src/idl_codegen_kamino_vault/types/ScopeConfiguration.ts +85 -0
- package/src/idl_codegen_kamino_vault/types/SwitchboardConfiguration.ts +64 -0
- package/src/idl_codegen_kamino_vault/types/TokenInfo.ts +172 -0
- package/src/idl_codegen_kamino_vault/types/VaultAllocation.ts +115 -0
- package/src/idl_codegen_kamino_vault/types/WithdrawalCaps.ts +86 -0
- package/src/idl_codegen_kamino_vault/types/index.ts +30 -0
- package/src/index.ts +1 -0
- package/src/lending_operations/index.ts +2 -0
- package/src/lending_operations/repay_with_collateral_calcs.ts +71 -0
- package/src/lending_operations/repay_with_collateral_operations.ts +318 -0
- package/src/leverage/calcs.ts +465 -0
- package/src/leverage/index.ts +4 -0
- package/src/leverage/instructions.ts +144 -0
- package/src/leverage/operations.ts +1814 -0
- package/src/leverage/utils.ts +273 -0
- package/src/lib.ts +9 -0
- package/src/referrals/index.ts +2 -0
- package/src/referrals/instructions.ts +114 -0
- package/src/referrals/operations.ts +325 -0
- package/src/utils/ObligationType.ts +171 -0
- package/src/utils/api.ts +59 -0
- package/src/utils/ata.ts +195 -0
- package/src/utils/constants.ts +81 -0
- package/src/utils/idl.ts +4 -0
- package/src/utils/index.ts +16 -0
- package/src/utils/instruction.ts +258 -0
- package/src/utils/kamino.ts +12 -0
- package/src/utils/layout.ts +118 -0
- package/src/utils/lookupTable.ts +55 -0
- package/src/utils/managerTypes.ts +456 -0
- package/src/utils/oracle.ts +338 -0
- package/src/utils/pubkey.ts +261 -0
- package/src/utils/rpc.ts +108 -0
- package/src/utils/seeds.ts +183 -0
- package/src/utils/sendTransactionsUtils.ts +207 -0
- package/src/utils/slots.ts +28 -0
- package/src/utils/syncNative.ts +22 -0
- package/src/utils/userMetadata.ts +401 -0
|
@@ -1,28 +1,19 @@
|
|
|
1
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
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.getUserLutAddressAndSetupIxns = void 0;
|
|
13
4
|
exports.getAllUserMetadatasWithFilter = getAllUserMetadatasWithFilter;
|
|
14
5
|
const web3_js_1 = require("@solana/web3.js");
|
|
15
6
|
const lib_1 = require("../lib");
|
|
16
7
|
const farms_sdk_1 = require("@hubbleprotocol/farms-sdk");
|
|
17
|
-
const getUserLutAddressAndSetupIxns =
|
|
18
|
-
const [userMetadataAddress, userMetadataState] =
|
|
8
|
+
const getUserLutAddressAndSetupIxns = async (kaminoMarket, user, referrer = web3_js_1.PublicKey.default, withExtendLut = true, multiplyMints = [], leverageMints = [], repayWithCollObligation = undefined, payer = web3_js_1.PublicKey.default) => {
|
|
9
|
+
const [userMetadataAddress, userMetadataState] = await kaminoMarket.getUserMetadata(user);
|
|
19
10
|
const initUserMetadataIxs = [];
|
|
20
11
|
let userLookupTableAddress;
|
|
21
12
|
const referrerUserMetadata = referrer.equals(web3_js_1.PublicKey.default)
|
|
22
13
|
? kaminoMarket.programId
|
|
23
|
-
: (
|
|
14
|
+
: (await kaminoMarket.getUserMetadata(referrer))[0];
|
|
24
15
|
if (!userMetadataState) {
|
|
25
|
-
const [createLutIx, lookupTableAddress] =
|
|
16
|
+
const [createLutIx, lookupTableAddress] = await (0, lib_1.createLookupTableIx)(kaminoMarket.getConnection(), user);
|
|
26
17
|
userLookupTableAddress = lookupTableAddress;
|
|
27
18
|
initUserMetadataIxs.push(createLutIx);
|
|
28
19
|
initUserMetadataIxs.push((0, lib_1.initUserMetadata)({
|
|
@@ -41,20 +32,19 @@ const getUserLutAddressAndSetupIxns = (kaminoMarket_1, user_1, ...args_1) => __a
|
|
|
41
32
|
}
|
|
42
33
|
const setupUserMetadataIxs = [initUserMetadataIxs];
|
|
43
34
|
if (withExtendLut) {
|
|
44
|
-
const dedupUserLutAddresses =
|
|
35
|
+
const dedupUserLutAddresses = await getDedupUserLookupTableAddresses(kaminoMarket, userLookupTableAddress, user, referrer, multiplyMints, leverageMints, userMetadataState !== null, repayWithCollObligation);
|
|
45
36
|
const extendLookupTableChunkIxs = (0, lib_1.extendLookupTableIxs)(user, userLookupTableAddress, dedupUserLutAddresses, payer);
|
|
46
37
|
for (const extendLutIx of extendLookupTableChunkIxs) {
|
|
47
38
|
setupUserMetadataIxs.push([extendLutIx]);
|
|
48
39
|
}
|
|
49
40
|
}
|
|
50
41
|
return [userLookupTableAddress, setupUserMetadataIxs];
|
|
51
|
-
}
|
|
42
|
+
};
|
|
52
43
|
exports.getUserLutAddressAndSetupIxns = getUserLutAddressAndSetupIxns;
|
|
53
|
-
const getDedupUserLookupTableAddresses =
|
|
54
|
-
|
|
55
|
-
const requiredAddresses = yield getUserLookupTableAddresses(kaminoMarket, user, referrer, multiplyMints, leverageMints, repayWithCollObligation);
|
|
44
|
+
const getDedupUserLookupTableAddresses = async (kaminoMarket, table_pk, user, referrer, multiplyMints = [], leverageMints = [], tableExists, repayWithCollObligation = undefined) => {
|
|
45
|
+
const requiredAddresses = await getUserLookupTableAddresses(kaminoMarket, user, referrer, multiplyMints, leverageMints, repayWithCollObligation);
|
|
56
46
|
if (tableExists) {
|
|
57
|
-
const userLookupTable = (
|
|
47
|
+
const userLookupTable = (await kaminoMarket.getConnection().getAddressLookupTable(table_pk)).value?.state;
|
|
58
48
|
const addressesAndLogsNotInLut = requiredAddresses.filter((addressAndLogs) => userLookupTable.addresses.filter((a) => a.equals(addressAndLogs.address)).length === 0);
|
|
59
49
|
console.log('Addresses to be added in LUT:');
|
|
60
50
|
const addressNotInLut = addressesAndLogsNotInLut.map((addressAndLogs) => {
|
|
@@ -70,8 +60,8 @@ const getDedupUserLookupTableAddresses = (kaminoMarket_1, table_pk_1, user_1, re
|
|
|
70
60
|
});
|
|
71
61
|
return new lib_1.PublicKeySet(addressNotInLut).toArray();
|
|
72
62
|
}
|
|
73
|
-
}
|
|
74
|
-
const getUserLookupTableAddresses =
|
|
63
|
+
};
|
|
64
|
+
const getUserLookupTableAddresses = async (kaminoMarket, user, referrer, multiplyMints = [], leverageMints = [], repayWithCollObligation = undefined) => {
|
|
75
65
|
const addresses = [];
|
|
76
66
|
addresses.push({ address: user, log: 'user address' });
|
|
77
67
|
const [userMetadataAddress] = (0, lib_1.userMetadataPda)(user, kaminoMarket.programId);
|
|
@@ -102,18 +92,18 @@ const getUserLookupTableAddresses = (kaminoMarket_1, user_1, referrer_1, ...args
|
|
|
102
92
|
}
|
|
103
93
|
});
|
|
104
94
|
// reserve mint ATAs
|
|
105
|
-
const mintsAtas =
|
|
106
|
-
return { address:
|
|
107
|
-
}))
|
|
95
|
+
const mintsAtas = await Promise.all(dedupMints.map(async (mint) => {
|
|
96
|
+
return { address: await (0, lib_1.getAssociatedTokenAddress)(mint, user), log: 'ata for mint ' + mint.toString() };
|
|
97
|
+
}));
|
|
108
98
|
addresses.push(...mintsAtas);
|
|
109
99
|
// ctoken ATAs
|
|
110
|
-
const ctokenMintsAtas =
|
|
100
|
+
const ctokenMintsAtas = await Promise.all(reserves.map(async (reserve) => {
|
|
111
101
|
const ctokenMint = reserve.getCTokenMint();
|
|
112
102
|
return {
|
|
113
|
-
address:
|
|
103
|
+
address: await (0, lib_1.getAssociatedTokenAddress)(ctokenMint, user),
|
|
114
104
|
log: 'ctoken ata for reserve ' + reserve.address.toString(),
|
|
115
105
|
};
|
|
116
|
-
}))
|
|
106
|
+
}));
|
|
117
107
|
addresses.push(...ctokenMintsAtas);
|
|
118
108
|
// farm states
|
|
119
109
|
const farmCollateralStates = reserves.map((reserve) => reserve.state.farmCollateral);
|
|
@@ -145,7 +135,7 @@ const getUserLookupTableAddresses = (kaminoMarket_1, user_1, referrer_1, ...args
|
|
|
145
135
|
addresses.push({ address: repayWithCollObligation.obligationAddress, log: 'repay with coll obligation' });
|
|
146
136
|
}
|
|
147
137
|
return addresses;
|
|
148
|
-
}
|
|
138
|
+
};
|
|
149
139
|
function getMultiplyObligationAndObligationFarmStateAddresses(kaminoMarket, user, mints) {
|
|
150
140
|
const obligationPdas = [];
|
|
151
141
|
const farmUserStates = [];
|
|
@@ -231,30 +221,28 @@ function getRepayWithCollObligationFarmStateAddresses(kaminoMarket, obligation)
|
|
|
231
221
|
}
|
|
232
222
|
const BASE_SEED_USER_STATE = Buffer.from('user');
|
|
233
223
|
const getPdaFarmsUserState = (farm, obligation) => web3_js_1.PublicKey.findProgramAddressSync([BASE_SEED_USER_STATE, farm.toBytes(), obligation.toBytes()], farms_sdk_1.farmsId)[0];
|
|
234
|
-
function getAllUserMetadatasWithFilter(connection, filter, programId) {
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
return { address: userMetadata.pubkey, state: userMetadataAccount };
|
|
257
|
-
});
|
|
224
|
+
async function getAllUserMetadatasWithFilter(connection, filter, programId) {
|
|
225
|
+
const filters = [
|
|
226
|
+
{
|
|
227
|
+
dataSize: lib_1.UserMetadata.layout.span + 8,
|
|
228
|
+
},
|
|
229
|
+
...filter,
|
|
230
|
+
];
|
|
231
|
+
const userMetadatas = await connection.getProgramAccounts(programId, {
|
|
232
|
+
filters,
|
|
233
|
+
});
|
|
234
|
+
return userMetadatas.map((userMetadata) => {
|
|
235
|
+
if (userMetadata.account === null) {
|
|
236
|
+
throw new Error('Invalid account');
|
|
237
|
+
}
|
|
238
|
+
if (!userMetadata.account.owner.equals(programId)) {
|
|
239
|
+
throw new Error("account doesn't belong to this program");
|
|
240
|
+
}
|
|
241
|
+
const userMetadataAccount = lib_1.UserMetadata.decode(userMetadata.account.data);
|
|
242
|
+
if (!userMetadataAccount) {
|
|
243
|
+
throw Error('Could not parse user metadata.');
|
|
244
|
+
}
|
|
245
|
+
return { address: userMetadata.pubkey, state: userMetadataAccount };
|
|
258
246
|
});
|
|
259
247
|
}
|
|
260
248
|
//# sourceMappingURL=userMetadata.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userMetadata.js","sourceRoot":"","sources":["../../src/utils/userMetadata.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n PublicKey,\n TransactionInstruction,\n SYSVAR_RENT_PUBKEY,\n SystemProgram,\n Connection,\n GetProgramAccountsFilter,\n} from '@solana/web3.js';\nimport { KaminoMarket, KaminoObligation } from '../classes';\nimport {\n LeverageObligation,\n MultiplyObligation,\n WRAPPED_SOL_MINT,\n createLookupTableIx,\n extendLookupTableIxs,\n getAssociatedTokenAddress,\n initUserMetadata,\n referrerTokenStatePda,\n userMetadataPda,\n isNotNullPubkey,\n UserMetadata,\n PublicKeySet,\n} from '../lib';\nimport { farmsId } from '@hubbleprotocol/farms-sdk';\nimport { KaminoReserve } from '../classes/reserve';\n\nexport type KaminoUserMetadata = {\n address: PublicKey;\n state: UserMetadata;\n};\n\nexport const getUserLutAddressAndSetupIxns = async (\n kaminoMarket: KaminoMarket,\n user: PublicKey,\n referrer: PublicKey = PublicKey.default,\n withExtendLut: boolean = true,\n multiplyMints: { coll: PublicKey; debt: PublicKey }[] = [],\n leverageMints: { coll: PublicKey; debt: PublicKey }[] = [],\n repayWithCollObligation: KaminoObligation | undefined = undefined,\n payer: PublicKey = PublicKey.default\n): Promise<[PublicKey, TransactionInstruction[][]]> => {\n const [userMetadataAddress, userMetadataState] = await kaminoMarket.getUserMetadata(user);\n const initUserMetadataIxs: TransactionInstruction[] = [];\n let userLookupTableAddress: PublicKey;\n\n const referrerUserMetadata = referrer.equals(PublicKey.default)\n ? kaminoMarket.programId\n : (await kaminoMarket.getUserMetadata(referrer))[0];\n\n if (!userMetadataState) {\n const [createLutIx, lookupTableAddress] = await createLookupTableIx(kaminoMarket.getConnection(), user);\n userLookupTableAddress = lookupTableAddress;\n initUserMetadataIxs.push(createLutIx);\n initUserMetadataIxs.push(\n initUserMetadata(\n {\n userLookupTable: lookupTableAddress,\n },\n {\n owner: user,\n feePayer: payer.equals(PublicKey.default) ? user : payer,\n userMetadata: userMetadataAddress,\n referrerUserMetadata: referrerUserMetadata,\n rent: SYSVAR_RENT_PUBKEY,\n systemProgram: SystemProgram.programId,\n },\n kaminoMarket.programId\n )\n );\n } else {\n userLookupTableAddress = userMetadataState.userLookupTable;\n }\n\n const setupUserMetadataIxs = [initUserMetadataIxs];\n\n if (withExtendLut) {\n const dedupUserLutAddresses = await getDedupUserLookupTableAddresses(\n kaminoMarket,\n userLookupTableAddress,\n user,\n referrer,\n multiplyMints,\n leverageMints,\n userMetadataState !== null,\n repayWithCollObligation\n );\n\n const extendLookupTableChunkIxs = extendLookupTableIxs(user, userLookupTableAddress, dedupUserLutAddresses, payer);\n\n for (const extendLutIx of extendLookupTableChunkIxs) {\n setupUserMetadataIxs.push([extendLutIx]);\n }\n }\n\n return [userLookupTableAddress, setupUserMetadataIxs];\n};\n\nconst getDedupUserLookupTableAddresses = async (\n kaminoMarket: KaminoMarket,\n table_pk: PublicKey,\n user: PublicKey,\n referrer: PublicKey,\n multiplyMints: { coll: PublicKey; debt: PublicKey }[] = [],\n leverageMints: { coll: PublicKey; debt: PublicKey }[] = [],\n tableExists: boolean,\n repayWithCollObligation: KaminoObligation | undefined = undefined\n): Promise<PublicKey[]> => {\n const requiredAddresses = await getUserLookupTableAddresses(\n kaminoMarket,\n user,\n referrer,\n multiplyMints,\n leverageMints,\n repayWithCollObligation\n );\n\n if (tableExists) {\n const userLookupTable = (await kaminoMarket.getConnection().getAddressLookupTable(table_pk)).value?.state!;\n const addressesAndLogsNotInLut = requiredAddresses.filter(\n (addressAndLogs) => userLookupTable.addresses.filter((a) => a.equals(addressAndLogs.address)).length === 0\n );\n console.log('Addresses to be added in LUT:');\n const addressNotInLut = addressesAndLogsNotInLut.map((addressAndLogs) => {\n console.log(addressAndLogs.log);\n return addressAndLogs.address;\n });\n return new PublicKeySet(addressNotInLut).toArray();\n } else {\n const addressNotInLut = requiredAddresses.map((addressAndLogs) => {\n console.log(addressAndLogs.log);\n return addressAndLogs.address;\n });\n return new PublicKeySet(addressNotInLut).toArray();\n }\n};\n\nconst getUserLookupTableAddresses = async (\n kaminoMarket: KaminoMarket,\n user: PublicKey,\n referrer: PublicKey,\n multiplyMints: { coll: PublicKey; debt: PublicKey }[] = [],\n leverageMints: { coll: PublicKey; debt: PublicKey }[] = [],\n repayWithCollObligation: KaminoObligation | undefined = undefined\n): Promise<{ address: PublicKey; log: string }[]> => {\n const addresses: { address: PublicKey; log: string }[] = [];\n addresses.push({ address: user, log: 'user address' });\n const [userMetadataAddress] = userMetadataPda(user, kaminoMarket.programId);\n addresses.push({ address: userMetadataAddress, log: 'userMetadata address' });\n\n const allMints: PublicKey[] = [];\n multiplyMints.forEach(({ coll: collMint, debt: debtMint }) => {\n allMints.push(collMint);\n allMints.push(debtMint);\n });\n leverageMints.forEach(({ coll: collMint, debt: debtMint }) => {\n allMints.push(collMint);\n allMints.push(debtMint);\n });\n\n if (repayWithCollObligation) {\n repayWithCollObligation.borrows.forEach((borrow) => {\n allMints.push(borrow.mintAddress);\n });\n\n repayWithCollObligation.deposits.forEach((deposit) => {\n allMints.push(deposit.mintAddress);\n });\n }\n\n const dedupMints = [...new PublicKeySet(allMints).toArray()];\n const reserves: KaminoReserve[] = [];\n dedupMints.forEach((mint) => {\n const kaminoReserve = kaminoMarket.getReserveByMint(mint);\n if (kaminoReserve) {\n reserves.push(kaminoReserve);\n }\n });\n\n // reserve mint ATAs\n const mintsAtas: { address: PublicKey; log: string }[] = await Promise.all(\n dedupMints.map(async (mint) => {\n return { address: await getAssociatedTokenAddress(mint, user), log: 'ata for mint ' + mint.toString() };\n })\n );\n addresses.push(...mintsAtas);\n // ctoken ATAs\n const ctokenMintsAtas: { address: PublicKey; log: string }[] = await Promise.all(\n reserves.map(async (reserve) => {\n const ctokenMint = reserve.getCTokenMint();\n return {\n address: await getAssociatedTokenAddress(ctokenMint, user),\n log: 'ctoken ata for reserve ' + reserve.address.toString(),\n };\n })\n );\n addresses.push(...ctokenMintsAtas);\n // farm states\n const farmCollateralStates: PublicKey[] = reserves.map((reserve) => reserve.state.farmCollateral);\n const farmDebtStates: PublicKey[] = reserves.map((reserve) => reserve.state.farmDebt);\n const farmStates = new PublicKeySet(\n farmCollateralStates.concat(farmDebtStates).filter((address) => isNotNullPubkey(address))\n );\n const farmStatesAdressesAndLogs = farmStates.toArray().map((address) => {\n return { address: address, log: 'farm state' };\n });\n addresses.push(...farmStatesAdressesAndLogs);\n // referrer token states\n const referrerTokenStates: { address: PublicKey; log: string }[] = reserves.map((reserve) => {\n return {\n address: referrerTokenStatePda(referrer, reserve.address, kaminoMarket.programId)[0],\n log: 'referrer token state for reserve ' + reserve.address,\n };\n });\n if (!referrer.equals(PublicKey.default)) {\n addresses.push(...referrerTokenStates);\n }\n\n const [multiplyObligations, multiplyObligationsFarmUserStates] = getMultiplyObligationAndObligationFarmStateAddresses(\n kaminoMarket,\n user,\n multiplyMints\n );\n\n addresses.push(...multiplyObligations);\n addresses.push(...multiplyObligationsFarmUserStates);\n\n const [leverageObligations, leverageObligationsFarmUserStates] = getLeverageObligationAndObligationFarmStateAddresses(\n kaminoMarket,\n user,\n leverageMints\n );\n\n addresses.push(...leverageObligations);\n addresses.push(...leverageObligationsFarmUserStates);\n\n if (repayWithCollObligation) {\n const repayWithCollFarmUserStates = getRepayWithCollObligationFarmStateAddresses(\n kaminoMarket,\n repayWithCollObligation\n );\n addresses.push(...repayWithCollFarmUserStates);\n addresses.push({ address: repayWithCollObligation.obligationAddress, log: 'repay with coll obligation' });\n }\n\n return addresses;\n};\n\nfunction getMultiplyObligationAndObligationFarmStateAddresses(\n kaminoMarket: KaminoMarket,\n user: PublicKey,\n mints: { coll: PublicKey; debt: PublicKey }[]\n): [{ address: PublicKey; log: string }[], { address: PublicKey; log: string }[]] {\n const obligationPdas: { address: PublicKey; log: string }[] = [];\n const farmUserStates: { address: PublicKey; log: string }[] = [];\n\n for (const { coll: collMint, debt: debtMint } of mints) {\n const collReserve = kaminoMarket.getReserveByMint(collMint);\n const debtReserve = kaminoMarket.getReserveByMint(debtMint);\n const collMintString = collMint.toString();\n const debtMintString = debtMint.toString();\n if (collReserve && debtReserve) {\n const multiplyObligation = new MultiplyObligation(collMint, WRAPPED_SOL_MINT, kaminoMarket.programId);\n obligationPdas.push({\n address: multiplyObligation.toPda(kaminoMarket.getAddress(), user),\n log: 'multiply obligation coll: ' + collMintString + ' debt: ' + debtMintString,\n });\n if (!collReserve.state.farmCollateral.equals(PublicKey.default)) {\n farmUserStates.push({\n address: getPdaFarmsUserState(\n collReserve.state.farmCollateral!,\n multiplyObligation.toPda(kaminoMarket.getAddress(), user)\n ),\n log: 'collReserve farmState for multiply obligation coll: ' + collMintString + ' debt: ' + debtMintString,\n });\n }\n if (!debtReserve.state.farmDebt.equals(PublicKey.default)) {\n farmUserStates.push({\n address: getPdaFarmsUserState(\n debtReserve.state.farmDebt!,\n multiplyObligation.toPda(kaminoMarket.getAddress(), user)\n ),\n log: 'debtReserve farmState for multiply obligation coll: ' + collMintString + ' debt: ' + debtMintString,\n });\n }\n }\n }\n\n return [obligationPdas, farmUserStates];\n}\n\nfunction getLeverageObligationAndObligationFarmStateAddresses(\n kaminoMarket: KaminoMarket,\n user: PublicKey,\n mints: { coll: PublicKey; debt: PublicKey }[]\n): [{ address: PublicKey; log: string }[], { address: PublicKey; log: string }[]] {\n const obligationPdas: { address: PublicKey; log: string }[] = [];\n const farmUserStates: { address: PublicKey; log: string }[] = [];\n\n for (const { coll: collMint, debt: debtMint } of mints) {\n const collReserve = kaminoMarket.getReserveByMint(collMint);\n const debtReserve = kaminoMarket.getReserveByMint(debtMint);\n const collMintString = collMint.toString();\n const debtMintString = debtMint.toString();\n if (collReserve && debtReserve) {\n const leverageObligation = new LeverageObligation(collMint, debtMint, kaminoMarket.programId);\n obligationPdas.push({\n address: leverageObligation.toPda(kaminoMarket.getAddress(), user),\n log: 'leverage obligation coll: ' + collMintString + ' debt: ' + debtMintString,\n });\n if (!collReserve.state.farmCollateral.equals(PublicKey.default)) {\n farmUserStates.push({\n address: getPdaFarmsUserState(\n collReserve.state.farmCollateral!,\n leverageObligation.toPda(kaminoMarket.getAddress(), user)\n ),\n log: 'collReserve farmState for leverage obligation coll: ' + collMintString + ' debt: ' + debtMintString,\n });\n }\n if (!debtReserve.state.farmDebt.equals(PublicKey.default)) {\n farmUserStates.push({\n address: getPdaFarmsUserState(\n debtReserve.state.farmDebt!,\n leverageObligation.toPda(kaminoMarket.getAddress(), user)\n ),\n log: 'debtReserve farmState for leverage obligation coll: ' + collMintString + ' debt: ' + debtMintString,\n });\n }\n }\n }\n\n return [obligationPdas, farmUserStates];\n}\n\nfunction getRepayWithCollObligationFarmStateAddresses(\n kaminoMarket: KaminoMarket,\n obligation: KaminoObligation\n): { address: PublicKey; log: string }[] {\n const farmUserStates: { address: PublicKey; log: string }[] = [];\n const obligationString = obligation.obligationAddress.toString();\n\n obligation.borrows.forEach((borrow) => {\n const borrowReserve = kaminoMarket.getReserveByMint(borrow.mintAddress)!;\n if (!borrowReserve.state.farmDebt.equals(PublicKey.default)) {\n farmUserStates.push({\n address: getPdaFarmsUserState(borrowReserve.state.farmDebt!, obligation.obligationAddress),\n log: 'debtReserve farmState for vanilla obligation: ' + obligationString,\n });\n }\n });\n\n obligation.deposits.forEach((deposit) => {\n const depositReserve = kaminoMarket.getReserveByMint(deposit.mintAddress)!;\n if (!depositReserve.state.farmCollateral.equals(PublicKey.default)) {\n farmUserStates.push({\n address: getPdaFarmsUserState(depositReserve.state.farmCollateral!, obligation.obligationAddress),\n log: 'collReserve farmState for vanilla obligation' + obligationString,\n });\n }\n });\n\n return farmUserStates;\n}\n\nconst BASE_SEED_USER_STATE = Buffer.from('user');\n\nconst getPdaFarmsUserState = (farm: PublicKey, obligation: PublicKey) =>\n PublicKey.findProgramAddressSync([BASE_SEED_USER_STATE, farm.toBytes(), obligation.toBytes()], farmsId)[0];\n\nexport async function getAllUserMetadatasWithFilter(\n connection: Connection,\n filter: GetProgramAccountsFilter[],\n programId: PublicKey\n): Promise<KaminoUserMetadata[]> {\n const filters = [\n {\n dataSize: UserMetadata.layout.span + 8,\n },\n ...filter,\n ];\n\n const userMetadatas = await connection.getProgramAccounts(programId, {\n filters,\n });\n\n return userMetadatas.map((userMetadata) => {\n if (userMetadata.account === null) {\n throw new Error('Invalid account');\n }\n if (!userMetadata.account.owner.equals(programId)) {\n throw new Error(\"account doesn't belong to this program\");\n }\n\n const userMetadataAccount = UserMetadata.decode(userMetadata.account.data);\n\n if (!userMetadataAccount) {\n throw Error('Could not parse user metadata.');\n }\n\n return { address: userMetadata.pubkey, state: userMetadataAccount };\n });\n}\n"]}
|
|
1
|
+
{"version":3,"file":"userMetadata.js","sourceRoot":"","sources":["../../src/utils/userMetadata.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kamino-finance/klend-sdk",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"description": "Typescript SDK for interacting with the Kamino Lending (klend) protocol",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -21,16 +21,21 @@
|
|
|
21
21
|
"module": "dist/index.js",
|
|
22
22
|
"types": "dist/index.d.ts",
|
|
23
23
|
"files": [
|
|
24
|
-
"dist"
|
|
24
|
+
"dist",
|
|
25
|
+
"src/**/*.ts"
|
|
25
26
|
],
|
|
26
27
|
"license": "MIT",
|
|
27
28
|
"scripts": {
|
|
28
29
|
"docs": "typedoc",
|
|
29
30
|
"prepublish": "yarn build",
|
|
30
31
|
"build": "rm -rf dist/; tsc",
|
|
32
|
+
"build:test": "yarn tsc --project ./tests/tsconfig.json",
|
|
31
33
|
"test": "npx ts-mocha tests/**/*.test.ts --exit",
|
|
32
34
|
"watch": "tsc --watch",
|
|
33
35
|
"coverage": "jest --coverage",
|
|
36
|
+
"clean": "rm -rf dist/",
|
|
37
|
+
"clean:deps": "rm -rf node_modules",
|
|
38
|
+
"clean:all": "yarn clean && yarn clean:deps",
|
|
34
39
|
"lint": "yarn prettier --check .; yarn eslint .",
|
|
35
40
|
"lint:fix": "yarn prettier --write .; yarn eslint . --fix",
|
|
36
41
|
"codegen": "yarn anchor-client-gen src/idl.json ./src/idl_codegen/ --program-id KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD",
|
|
@@ -50,10 +55,11 @@
|
|
|
50
55
|
"@kamino-finance/kliquidity-sdk": "^6.1.0",
|
|
51
56
|
"@pythnetwork/client": "^2.5.1",
|
|
52
57
|
"@solana/buffer-layout": "^4.0.0",
|
|
53
|
-
"@solana/spl-token": "^0.
|
|
58
|
+
"@solana/spl-token": "^0.4.8",
|
|
54
59
|
"@solana/web3.js": "^1.87.6",
|
|
55
60
|
"@switchboard-xyz/sbv2-lite": "^0.1.0",
|
|
56
61
|
"axios": "^1.6.8",
|
|
62
|
+
"base58-js": "^2.0.0",
|
|
57
63
|
"bn.js": "^5.2.1",
|
|
58
64
|
"buffer": "^6.0.3",
|
|
59
65
|
"buffer-layout": "^1.2.2",
|