@ape.swap/bonds-sdk 6.3.0-test.69 → 7.0.0-test.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/README.md +223 -131
- package/dist/adapters/all/index.d.ts +13 -0
- package/dist/adapters/all/index.js +15 -0
- package/dist/adapters/all/index.js.map +1 -0
- package/dist/adapters/aptos/ActionsAptos.d.ts +5 -0
- package/dist/{views/YourBondsModal/components/Actions → adapters/aptos}/ActionsAptos.js +14 -14
- package/dist/adapters/aptos/ActionsAptos.js.map +1 -0
- package/dist/adapters/aptos/AptosAccountBridge.d.ts +3 -0
- package/dist/adapters/aptos/AptosAccountBridge.js +12 -0
- package/dist/adapters/aptos/AptosAccountBridge.js.map +1 -0
- package/dist/{views/BuyBond → adapters/aptos}/BuyComponentAptos.js +11 -17
- package/dist/adapters/aptos/BuyComponentAptos.js.map +1 -0
- package/dist/adapters/aptos/ClaimAllActionAptos.d.ts +5 -0
- package/dist/adapters/aptos/ClaimAllActionAptos.js +73 -0
- package/dist/adapters/aptos/ClaimAllActionAptos.js.map +1 -0
- package/dist/{components/ConnectAptosWalletButton → adapters/aptos}/ConnectAptosWalletButton.d.ts +1 -1
- package/dist/{components/ConnectAptosWalletButton → adapters/aptos}/ConnectAptosWalletButton.js +4 -9
- package/dist/adapters/aptos/ConnectAptosWalletButton.js.map +1 -0
- package/dist/adapters/aptos/ConnectToAptosBanner.d.ts +1 -0
- package/dist/adapters/aptos/ConnectToAptosBanner.js +21 -0
- package/dist/adapters/aptos/ConnectToAptosBanner.js.map +1 -0
- package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/aptos}/TransferActionAptos.d.ts +2 -3
- package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/aptos}/TransferActionAptos.js +3 -3
- package/dist/adapters/aptos/TransferActionAptos.js.map +1 -0
- package/dist/adapters/aptos/UserBondRowAptos.d.ts +5 -0
- package/dist/adapters/aptos/UserBondRowAptos.js +108 -0
- package/dist/adapters/aptos/UserBondRowAptos.js.map +1 -0
- package/dist/{utils → adapters/aptos}/aptosHelpers.d.ts +3 -2
- package/dist/{utils → adapters/aptos}/aptosHelpers.js +4 -3
- package/dist/adapters/aptos/aptosHelpers.js.map +1 -0
- package/dist/{state/bonds/fetchBondsData → adapters/aptos}/fetchBondsDataAptos.d.ts +2 -2
- package/dist/{state/bonds/fetchBondsData → adapters/aptos}/fetchBondsDataAptos.js +4 -27
- package/dist/adapters/aptos/fetchBondsDataAptos.js.map +1 -0
- package/dist/{state/bonds/fetchUsersBonds → adapters/aptos}/fetchUsersBondsAptos.d.ts +2 -2
- package/dist/{state/bonds/fetchUsersBonds → adapters/aptos}/fetchUsersBondsAptos.js +8 -8
- package/dist/adapters/aptos/fetchUsersBondsAptos.js.map +1 -0
- package/dist/adapters/aptos/index.d.ts +6 -0
- package/dist/adapters/aptos/index.js +37 -0
- package/dist/adapters/aptos/index.js.map +1 -0
- package/dist/{hooks/accounts → adapters/aptos}/useAPTAccount.js +1 -1
- package/dist/{hooks/accounts → adapters/aptos}/useAPTAccount.js.map +1 -1
- package/dist/{state/zap → adapters/aptos}/useAptosZapQuote.js +2 -3
- package/dist/adapters/aptos/useAptosZapQuote.js.map +1 -0
- package/dist/{state/balance → adapters/aptos}/useCurrencyBalanceAptos.js +1 -1
- package/dist/adapters/aptos/useCurrencyBalanceAptos.js.map +1 -0
- package/dist/adapters/evm/Actions.d.ts +5 -0
- package/dist/{views/YourBondsModal/components/Actions → adapters/evm}/Actions.js +26 -21
- package/dist/adapters/evm/Actions.js.map +1 -0
- package/dist/adapters/evm/BuyComponent.d.ts +5 -0
- package/dist/{views/BuyBond → adapters/evm}/BuyComponent.js +57 -61
- package/dist/adapters/evm/BuyComponent.js.map +1 -0
- package/dist/adapters/evm/ClaimAllActionEVM.d.ts +5 -0
- package/dist/adapters/evm/ClaimAllActionEVM.js +60 -0
- package/dist/adapters/evm/ClaimAllActionEVM.js.map +1 -0
- package/dist/adapters/evm/ConnectToEvmBanner.d.ts +1 -0
- package/dist/adapters/evm/ConnectToEvmBanner.js +12 -0
- package/dist/adapters/evm/ConnectToEvmBanner.js.map +1 -0
- package/dist/adapters/evm/EvmAccountBridge.d.ts +6 -0
- package/dist/adapters/evm/EvmAccountBridge.js +15 -0
- package/dist/adapters/evm/EvmAccountBridge.js.map +1 -0
- package/dist/{views/TransactionModal → adapters/evm}/TransactionModal.d.ts +2 -3
- package/dist/adapters/evm/TransactionModal.js +167 -0
- package/dist/adapters/evm/TransactionModal.js.map +1 -0
- package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/evm}/TransferAction.d.ts +2 -3
- package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/evm}/TransferAction.js +14 -12
- package/dist/adapters/evm/TransferAction.js.map +1 -0
- package/dist/adapters/evm/UserBondRow.d.ts +5 -0
- package/dist/adapters/evm/UserBondRow.js +138 -0
- package/dist/adapters/evm/UserBondRow.js.map +1 -0
- package/dist/adapters/evm/balances.d.ts +6 -0
- package/dist/adapters/evm/balances.js +61 -0
- package/dist/adapters/evm/balances.js.map +1 -0
- package/dist/{state/bonds/fetchBondsData → adapters/evm}/fetchBondsDataEVM.d.ts +3 -2
- package/dist/adapters/evm/fetchBondsDataEVM.js +156 -0
- package/dist/adapters/evm/fetchBondsDataEVM.js.map +1 -0
- package/dist/{state/bonds/fetchUsersBonds → adapters/evm}/fetchUsersBondsEVM.d.ts +2 -2
- package/dist/{state/bonds/fetchUsersBonds → adapters/evm}/fetchUsersBondsEVM.js +10 -10
- package/dist/adapters/evm/fetchUsersBondsEVM.js.map +1 -0
- package/dist/adapters/evm/getTierPoints.d.ts +3 -0
- package/dist/adapters/evm/getTierPoints.js +48 -0
- package/dist/adapters/evm/getTierPoints.js.map +1 -0
- package/dist/adapters/evm/index.d.ts +6 -0
- package/dist/adapters/evm/index.js +53 -0
- package/dist/adapters/evm/index.js.map +1 -0
- package/dist/{utils → adapters/evm}/multicall.js +3 -3
- package/dist/adapters/evm/multicall.js.map +1 -0
- package/dist/{views/BuyBond → adapters/evm/preTGE}/BuyComponentPreTGE.d.ts +1 -2
- package/dist/adapters/evm/preTGE/BuyComponentPreTGE.js +128 -0
- package/dist/adapters/evm/preTGE/BuyComponentPreTGE.js.map +1 -0
- package/dist/{views/Bonds/components/BondRows → adapters/evm/preTGE}/ModalHandlerPreTGE.d.ts +1 -2
- package/dist/{views/Bonds/components/BondRows → adapters/evm/preTGE}/ModalHandlerPreTGE.js +5 -5
- package/dist/adapters/evm/preTGE/ModalHandlerPreTGE.js.map +1 -0
- package/dist/adapters/evm/preTGE/PreTGEActions.d.ts +5 -0
- package/dist/{views/YourBonds/components/UserBondRow → adapters/evm/preTGE}/PreTGEActions.js +11 -15
- package/dist/adapters/evm/preTGE/PreTGEActions.js.map +1 -0
- package/dist/adapters/evm/preTGE/UserBondRowPreTGE.d.ts +5 -0
- package/dist/adapters/evm/preTGE/UserBondRowPreTGE.js +41 -0
- package/dist/adapters/evm/preTGE/UserBondRowPreTGE.js.map +1 -0
- package/dist/adapters/evm/preTGE/UserBondRowYield.d.ts +5 -0
- package/dist/adapters/evm/preTGE/UserBondRowYield.js +43 -0
- package/dist/adapters/evm/preTGE/UserBondRowYield.js.map +1 -0
- package/dist/{views → adapters/evm/preTGE}/YourBondsModalYield/YourBondsModalYield.d.ts +2 -3
- package/dist/adapters/evm/preTGE/YourBondsModalYield/YourBondsModalYield.js +150 -0
- package/dist/adapters/evm/preTGE/YourBondsModalYield/YourBondsModalYield.js.map +1 -0
- package/dist/{views → adapters/evm/preTGE}/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.d.ts +2 -3
- package/dist/adapters/evm/preTGE/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js +66 -0
- package/dist/adapters/evm/preTGE/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js.map +1 -0
- package/dist/{views → adapters/evm/preTGE}/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.d.ts +2 -3
- package/dist/adapters/evm/preTGE/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js +15 -0
- package/dist/adapters/evm/preTGE/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js.map +1 -0
- package/dist/{state/bonds/fetchBondsData → adapters/evm/preTGE}/fetchBondsDataPreTGE.d.ts +1 -1
- package/dist/{state/bonds/fetchBondsData → adapters/evm/preTGE}/fetchBondsDataPreTGE.js +1 -1
- package/dist/adapters/evm/preTGE/fetchBondsDataPreTGE.js.map +1 -0
- package/dist/adapters/evm/preTGE/fetchUserBondsPreTGE.d.ts +5 -0
- package/dist/adapters/evm/preTGE/fetchUserBondsPreTGE.js +204 -0
- package/dist/adapters/evm/preTGE/fetchUserBondsPreTGE.js.map +1 -0
- package/dist/{state/allowance → adapters/evm}/useAllowance.js +4 -4
- package/dist/adapters/evm/useAllowance.js.map +1 -0
- package/dist/adapters/evm/useEVMAccount.js.map +1 -0
- package/dist/{hooks → adapters/evm}/useMonitorTx.js +1 -1
- package/dist/adapters/evm/useMonitorTx.js.map +1 -0
- package/dist/{state/zap → adapters/evm}/useSoulZapBondQuote.js +12 -24
- package/dist/adapters/evm/useSoulZapBondQuote.js.map +1 -0
- package/dist/{state/bonds → adapters/evm}/useTierProofSignature.js +5 -5
- package/dist/adapters/evm/useTierProofSignature.js.map +1 -0
- package/dist/adapters/lifi/LifiModal.d.ts +4 -0
- package/dist/{views/LifiModal → adapters/lifi}/LifiModal.js +10 -7
- package/dist/adapters/lifi/LifiModal.js.map +1 -0
- package/dist/adapters/lifi/index.d.ts +6 -0
- package/dist/adapters/lifi/index.js +34 -0
- package/dist/adapters/lifi/index.js.map +1 -0
- package/dist/adapters/registry.d.ts +8 -0
- package/dist/adapters/registry.js +24 -0
- package/dist/adapters/registry.js.map +1 -0
- package/dist/adapters/solana/ActionsSolana.d.ts +5 -0
- package/dist/{views/YourBondsModal/components/Actions → adapters/solana}/ActionsSolana.js +16 -16
- package/dist/adapters/solana/ActionsSolana.js.map +1 -0
- package/dist/{views/BuyBond → adapters/solana}/BuyComponentSolana.js +21 -24
- package/dist/adapters/solana/BuyComponentSolana.js.map +1 -0
- package/dist/{components/ConnectSolanaWalletButton → adapters/solana}/ConnectSolanaWalletButton.d.ts +1 -1
- package/dist/adapters/solana/ConnectSolanaWalletButton.js +14 -0
- package/dist/adapters/solana/ConnectSolanaWalletButton.js.map +1 -0
- package/dist/adapters/solana/ConnectToSolanaBanner.d.ts +1 -0
- package/dist/adapters/solana/ConnectToSolanaBanner.js +18 -0
- package/dist/adapters/solana/ConnectToSolanaBanner.js.map +1 -0
- package/dist/adapters/solana/SolanaAccountBridge.d.ts +3 -0
- package/dist/adapters/solana/SolanaAccountBridge.js +13 -0
- package/dist/adapters/solana/SolanaAccountBridge.js.map +1 -0
- package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/solana}/TransferActionSolana.d.ts +2 -2
- package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/solana}/TransferActionSolana.js +7 -7
- package/dist/adapters/solana/TransferActionSolana.js.map +1 -0
- package/dist/adapters/solana/UserBondRowSolana.d.ts +5 -0
- package/dist/{views/YourBonds/components/UserBondRow → adapters/solana}/UserBondRowSolana.js +27 -30
- package/dist/adapters/solana/UserBondRowSolana.js.map +1 -0
- package/dist/{utils → adapters/solana}/calculateSolanaTrueBillPrice.js +1 -1
- package/dist/adapters/solana/calculateSolanaTrueBillPrice.js.map +1 -0
- package/dist/{types → adapters/solana/codecs}/bondCodec.d.ts +2 -2
- package/dist/{types → adapters/solana/codecs}/bondCodec.js +2 -3
- package/dist/adapters/solana/codecs/bondCodec.js.map +1 -0
- package/dist/{types → adapters/solana/codecs}/bondIssuanceCodec.d.ts +2 -2
- package/dist/{types → adapters/solana/codecs}/bondIssuanceCodec.js +2 -3
- package/dist/adapters/solana/codecs/bondIssuanceCodec.js.map +1 -0
- package/dist/{types → adapters/solana/codecs}/bondPricingCodec.d.ts +1 -1
- package/dist/{types → adapters/solana/codecs}/bondPricingCodec.js +2 -2
- package/dist/adapters/solana/codecs/bondPricingCodec.js.map +1 -0
- package/dist/{types → adapters/solana/codecs}/bondTermCodec.d.ts +1 -1
- package/dist/{types → adapters/solana/codecs}/bondTermCodec.js +2 -2
- package/dist/adapters/solana/codecs/bondTermCodec.js.map +1 -0
- package/dist/adapters/solana/derivePda.js.map +1 -0
- package/dist/adapters/solana/fetchBondsDataSOL.d.ts +4 -0
- package/dist/adapters/solana/fetchBondsDataSOL.js +123 -0
- package/dist/adapters/solana/fetchBondsDataSOL.js.map +1 -0
- package/dist/{state/bonds/fetchUsersBonds → adapters/solana}/fetchUsersBondsSOL.d.ts +2 -2
- package/dist/{state/bonds/fetchUsersBonds → adapters/solana}/fetchUsersBondsSOL.js +11 -11
- package/dist/adapters/solana/fetchUsersBondsSOL.js.map +1 -0
- package/dist/{utils → adapters/solana}/getSolanaAccount.d.ts +1 -1
- package/dist/{utils → adapters/solana}/getSolanaAccount.js +4 -4
- package/dist/adapters/solana/getSolanaAccount.js.map +1 -0
- package/dist/adapters/solana/index.d.ts +8 -0
- package/dist/adapters/solana/index.js +40 -0
- package/dist/adapters/solana/index.js.map +1 -0
- package/dist/adapters/solana/polyfills.d.ts +1 -0
- package/dist/adapters/solana/polyfills.js +7 -0
- package/dist/adapters/solana/polyfills.js.map +1 -0
- package/dist/adapters/solana/solanaAtaHelper.js.map +1 -0
- package/dist/{constants → adapters/solana}/solanaConstants.js +1 -1
- package/dist/adapters/solana/solanaConstants.js.map +1 -0
- package/dist/adapters/solana/solanaMulticall.js.map +1 -0
- package/dist/adapters/solana/solanaRpc.d.ts +1 -0
- package/dist/{utils → adapters/solana}/solanaRpc.js +2 -2
- package/dist/adapters/solana/solanaRpc.js.map +1 -0
- package/dist/{state/balance → adapters/solana}/useCurrencyBalanceSolana.d.ts +4 -0
- package/dist/{state/balance → adapters/solana}/useCurrencyBalanceSolana.js +9 -2
- package/dist/adapters/solana/useCurrencyBalanceSolana.js.map +1 -0
- package/dist/adapters/solana/useJupiterSolanaQuote.js.map +1 -0
- package/dist/adapters/solana/useSOLAccount.js.map +1 -0
- package/dist/adapters/sui/ActionsSui.d.ts +5 -0
- package/dist/{views/YourBondsModal/components/Actions → adapters/sui}/ActionsSui.js +14 -14
- package/dist/adapters/sui/ActionsSui.js.map +1 -0
- package/dist/{views/BuyBond → adapters/sui}/BuyComponentSui.js +14 -21
- package/dist/adapters/sui/BuyComponentSui.js.map +1 -0
- package/dist/adapters/sui/ClaimAllActionSui.d.ts +5 -0
- package/dist/adapters/sui/ClaimAllActionSui.js +89 -0
- package/dist/adapters/sui/ClaimAllActionSui.js.map +1 -0
- package/dist/adapters/sui/ConnectToSuiBanner.d.ts +1 -0
- package/dist/adapters/sui/ConnectToSuiBanner.js +16 -0
- package/dist/adapters/sui/ConnectToSuiBanner.js.map +1 -0
- package/dist/adapters/sui/SuiAccountBridge.d.ts +3 -0
- package/dist/adapters/sui/SuiAccountBridge.js +12 -0
- package/dist/adapters/sui/SuiAccountBridge.js.map +1 -0
- package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/sui}/TransferActionSui.d.ts +2 -3
- package/dist/{views/YourBondsModal/components/TransferBondModal → adapters/sui}/TransferActionSui.js +8 -8
- package/dist/adapters/sui/TransferActionSui.js.map +1 -0
- package/dist/adapters/sui/UserBondRowSui.d.ts +5 -0
- package/dist/adapters/sui/UserBondRowSui.js +125 -0
- package/dist/adapters/sui/UserBondRowSui.js.map +1 -0
- package/dist/{state/bonds/fetchBondsData → adapters/sui}/fetchBondsDataSui.d.ts +2 -2
- package/dist/{state/bonds/fetchBondsData → adapters/sui}/fetchBondsDataSui.js +4 -30
- package/dist/adapters/sui/fetchBondsDataSui.js.map +1 -0
- package/dist/{state/bonds/fetchUsersBonds → adapters/sui}/fetchUsersBondsSUI.d.ts +2 -2
- package/dist/{state/bonds/fetchUsersBonds → adapters/sui}/fetchUsersBondsSUI.js +8 -8
- package/dist/adapters/sui/fetchUsersBondsSUI.js.map +1 -0
- package/dist/adapters/sui/index.d.ts +6 -0
- package/dist/adapters/sui/index.js +37 -0
- package/dist/adapters/sui/index.js.map +1 -0
- package/dist/adapters/sui/suiConstants.js.map +1 -0
- package/dist/{utils → adapters/sui}/suiHelpers.js +1 -1
- package/dist/adapters/sui/suiHelpers.js.map +1 -0
- package/dist/adapters/sui/suiZapTokens.js.map +1 -0
- package/dist/{state/balance → adapters/sui}/useCurrencyBalanceSui.js +1 -1
- package/dist/adapters/sui/useCurrencyBalanceSui.js.map +1 -0
- package/dist/adapters/sui/useSUIAccount.d.ts +14 -0
- package/dist/{hooks/accounts → adapters/sui}/useSUIAccount.js +3 -2
- package/dist/adapters/sui/useSUIAccount.js.map +1 -0
- package/dist/{state/zap → adapters/sui}/useSuiZapQuote.js +3 -4
- package/dist/adapters/sui/useSuiZapQuote.js.map +1 -0
- package/dist/adapters/types.d.ts +110 -0
- package/dist/components/BondFilters/BondFilters.js +3 -3
- package/dist/components/BondFilters/BondFilters.js.map +1 -1
- package/dist/components/Carousel/index.d.ts +8 -0
- package/dist/components/Carousel/index.js +148 -0
- package/dist/components/Carousel/index.js.map +1 -0
- package/dist/components/ChainOptionList/ChainOptionsButtons.d.ts +1 -1
- package/dist/components/ChainOptionList/ChainOptionsButtons.js +6 -9
- package/dist/components/ChainOptionList/ChainOptionsButtons.js.map +1 -1
- package/dist/components/ChainOptionList/ChainOptionsList.d.ts +1 -1
- package/dist/components/ChainOptionList/ChainOptionsList.js +3 -4
- package/dist/components/ChainOptionList/ChainOptionsList.js.map +1 -1
- package/dist/components/CircularProgress/index.js +3 -14
- package/dist/components/CircularProgress/index.js.map +1 -1
- package/dist/components/ConnectButton/index.d.ts +1 -2
- package/dist/components/ConnectButton/index.js +2 -5
- package/dist/components/ConnectButton/index.js.map +1 -1
- package/dist/components/ConnectSuiWalletButton/ConnectSuiWalletButton.d.ts +1 -2
- package/dist/components/CustomClaimModals/AbondModal.d.ts +1 -2
- package/dist/components/CustomClaimModals/AbondModal.js +2 -3
- package/dist/components/CustomClaimModals/AbondModal.js.map +1 -1
- package/dist/components/CustomClaimModals/OabondModal.d.ts +1 -2
- package/dist/components/CustomClaimModals/OabondModal.js +2 -3
- package/dist/components/CustomClaimModals/OabondModal.js.map +1 -1
- package/dist/components/CustomClaimModals/PmusdModal.d.ts +1 -2
- package/dist/components/CustomClaimModals/PmusdModal.js +2 -9
- package/dist/components/CustomClaimModals/PmusdModal.js.map +1 -1
- package/dist/components/CustomClaimModals/PostClaimModal.d.ts +7 -0
- package/dist/components/CustomClaimModals/PostClaimModal.js +14 -0
- package/dist/components/CustomClaimModals/PostClaimModal.js.map +1 -0
- package/dist/components/FavIcons/AddFavToken.d.ts +1 -2
- package/dist/components/FavIcons/AddFavToken.js +2 -2
- package/dist/components/FavIcons/AddFavToken.js.map +1 -1
- package/dist/components/FavIcons/FavFilter.d.ts +1 -2
- package/dist/components/FavIcons/FavFilter.js +3 -3
- package/dist/components/FavIcons/FavFilter.js.map +1 -1
- package/dist/components/LoadingSpinner/index.d.ts +1 -2
- package/dist/components/LoadingSpinner/index.js +8 -30
- package/dist/components/LoadingSpinner/index.js.map +1 -1
- package/dist/components/MenuSelect/MenuSelect.d.ts +1 -2
- package/dist/components/MenuSelect/MenuSelect.js +3 -9
- package/dist/components/MenuSelect/MenuSelect.js.map +1 -1
- package/dist/components/MenuSelect/RecommendationSelector.d.ts +1 -2
- package/dist/components/MenuSelect/RecommendationSelector.js +4 -24
- package/dist/components/MenuSelect/RecommendationSelector.js.map +1 -1
- package/dist/components/NetworkFilter/index.d.ts +1 -2
- package/dist/components/NetworkFilter/index.js +14 -53
- package/dist/components/NetworkFilter/index.js.map +1 -1
- package/dist/components/PlaceholderMonkey/index.d.ts +1 -2
- package/dist/components/PlaceholderMonkey/index.js +2 -7
- package/dist/components/PlaceholderMonkey/index.js.map +1 -1
- package/dist/components/ProgressBar/ProgressBar.js +3 -5
- package/dist/components/ProgressBar/ProgressBar.js.map +1 -1
- package/dist/components/ProgressBar/ProgressBarWrapper.d.ts +2 -2
- package/dist/components/ProgressBar/ProgressBarWrapper.js +4 -4
- package/dist/components/ProgressBar/ProgressBarWrapper.js.map +1 -1
- package/dist/components/ProgressiveImage/index.d.ts +1 -2
- package/dist/components/ProgressiveImage/index.js +3 -21
- package/dist/components/ProgressiveImage/index.js.map +1 -1
- package/dist/components/SafeHTMLComponent/index.d.ts +1 -2
- package/dist/components/SafeHTMLComponent/index.js +1 -1
- package/dist/components/SlippageModal/index.d.ts +1 -2
- package/dist/components/SlippageModal/index.js +7 -43
- package/dist/components/SlippageModal/index.js.map +1 -1
- package/dist/components/StepBubble/index.d.ts +1 -2
- package/dist/components/StepBubble/index.js +5 -33
- package/dist/components/StepBubble/index.js.map +1 -1
- package/dist/components/Toast/index.d.ts +1 -2
- package/dist/components/Toast/index.js +4 -15
- package/dist/components/Toast/index.js.map +1 -1
- package/dist/components/TokenInfoAndName/index.d.ts +3 -3
- package/dist/components/TokenInfoAndName/index.js +8 -19
- package/dist/components/TokenInfoAndName/index.js.map +1 -1
- package/dist/components/TokenSelectorModal/TokenRow.d.ts +1 -2
- package/dist/components/TokenSelectorModal/TokenRow.js +3 -3
- package/dist/components/TokenSelectorModal/TokenRow.js.map +1 -1
- package/dist/components/TokenSelectorModal/index.js +2 -14
- package/dist/components/TokenSelectorModal/index.js.map +1 -1
- package/dist/components/TokenSelectorPanel/index.d.ts +1 -1
- package/dist/components/TokenSelectorPanel/index.js +12 -25
- package/dist/components/TokenSelectorPanel/index.js.map +1 -1
- package/dist/components/Tooltip/ButtonsRow.js +3 -4
- package/dist/components/Tooltip/ButtonsRow.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.js +4 -4
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/YouTooltip/YouTooltip.d.ts +1 -2
- package/dist/components/YouTooltip/YouTooltip.js +2 -24
- package/dist/components/YouTooltip/YouTooltip.js.map +1 -1
- package/dist/components/uikit-sdk/Button/Button.d.ts +1 -2
- package/dist/components/uikit-sdk/Button/Button.js +34 -40
- package/dist/components/uikit-sdk/Button/Button.js.map +1 -1
- package/dist/components/uikit-sdk/Button/IconButton.js +16 -15
- package/dist/components/uikit-sdk/Button/IconButton.js.map +1 -1
- package/dist/components/uikit-sdk/Button/types.d.ts +1 -2
- package/dist/components/uikit-sdk/Button/types.js +6 -6
- package/dist/components/uikit-sdk/Button/types.js.map +1 -1
- package/dist/components/uikit-sdk/Checkbox/index.d.ts +1 -1
- package/dist/components/uikit-sdk/Checkbox/index.js +11 -8
- package/dist/components/uikit-sdk/Checkbox/index.js.map +1 -1
- package/dist/components/uikit-sdk/Checkbox/types.d.ts +2 -2
- package/dist/components/uikit-sdk/Checkbox/types.js.map +1 -1
- package/dist/components/uikit-sdk/Flex/index.d.ts +9 -3
- package/dist/components/uikit-sdk/Flex/index.js +8 -4
- package/dist/components/uikit-sdk/Flex/index.js.map +1 -1
- package/dist/components/uikit-sdk/Input/Input.d.ts +4 -7
- package/dist/components/uikit-sdk/Input/Input.js +4 -46
- package/dist/components/uikit-sdk/Input/Input.js.map +1 -1
- package/dist/components/uikit-sdk/LoadingDots/index.d.ts +1 -1
- package/dist/components/uikit-sdk/LoadingDots/index.js +2 -21
- package/dist/components/uikit-sdk/LoadingDots/index.js.map +1 -1
- package/dist/components/uikit-sdk/Modal/ModalHeader.js +5 -5
- package/dist/components/uikit-sdk/Modal/ModalHeader.js.map +1 -1
- package/dist/components/uikit-sdk/Modal/index.d.ts +1 -2
- package/dist/components/uikit-sdk/Modal/index.js +10 -14
- package/dist/components/uikit-sdk/Modal/index.js.map +1 -1
- package/dist/components/uikit-sdk/Modal/types.d.ts +3 -3
- package/dist/components/uikit-sdk/Select/Select.d.ts +1 -2
- package/dist/components/uikit-sdk/Select/Select.js +24 -17
- package/dist/components/uikit-sdk/Select/Select.js.map +1 -1
- package/dist/components/uikit-sdk/Select/SelectItem.d.ts +1 -1
- package/dist/components/uikit-sdk/Select/SelectItem.js +26 -15
- package/dist/components/uikit-sdk/Select/SelectItem.js.map +1 -1
- package/dist/components/uikit-sdk/Select/types.d.ts +1 -0
- package/dist/components/uikit-sdk/Select/types.js +9 -9
- package/dist/components/uikit-sdk/Select/types.js.map +1 -1
- package/dist/components/uikit-sdk/Skeleton/index.d.ts +1 -2
- package/dist/components/uikit-sdk/Skeleton/index.js +7 -8
- package/dist/components/uikit-sdk/Skeleton/index.js.map +1 -1
- package/dist/components/uikit-sdk/Skeleton/types.d.ts +2 -2
- package/dist/components/uikit-sdk/Skeleton/types.js.map +1 -1
- package/dist/components/uikit-sdk/Spinner/index.d.ts +11 -0
- package/dist/components/uikit-sdk/Spinner/index.js +9 -0
- package/dist/components/uikit-sdk/Spinner/index.js.map +1 -0
- package/dist/components/uikit-sdk/Svg/Icons/AllChains.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Arrow.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Arrow.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/BitTensor.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Caret.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Caret.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Close.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Close.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Cog.d.ts +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Cog.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Cog.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/CoinGecko.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/CoinGecko.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/DexScreener.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/DexScreener.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Discord.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Discord.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Discount.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Discount.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Error.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Error.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Expand.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Expand.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/External.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/External.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/FirePink.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/GiftBox.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/GiftBoxPlain.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Insight.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Insight.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/L1X.d.ts +4 -0
- package/dist/components/uikit-sdk/Svg/Icons/L1X.js +8 -0
- package/dist/components/uikit-sdk/Svg/Icons/L1X.js.map +1 -0
- package/dist/components/uikit-sdk/Svg/Icons/LineChart.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/More.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/More.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/NewOffer.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/NewOffer.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/PlaceholderMonkey.d.ts +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/PlaceholderMonkey.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/PlaceholderMonkey.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Question.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/QuestionCircle.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/QuestionCircle.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Robinhood.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Search.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Search.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/SellingFast.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/SellingFast.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/ShortSupply.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Sort.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Sort.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Star.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/StarFilled.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Success.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Success.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Tag.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Tick.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Tick.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Timer.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/TurnArrow.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/TurnArrow.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/Twitter.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/Twitter.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/URL.js +2 -2
- package/dist/components/uikit-sdk/Svg/Icons/URL.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/WhaleActivity.js +1 -1
- package/dist/components/uikit-sdk/Svg/Icons/WhaleActivity.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/styles.d.ts +5 -2
- package/dist/components/uikit-sdk/Svg/styles.js +8 -7
- package/dist/components/uikit-sdk/Svg/styles.js.map +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/APTOS.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/ARBITRUM.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/AVAX.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/BASE.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/BERA.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/BLAST.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/BNB.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/CROSSFI.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/ETH.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/GraphLinq.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/HYPEREVM.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/INEVM.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/IOTA.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/KATANA.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/LIGHTLINK.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/LINEA.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/MEGAETH.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/MONAD.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/POLYGON.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/SOL.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/SONIC.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/SUI.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/TLOS.js +1 -1
- package/dist/components/uikit-sdk/Svg/tokens/UNICHAIN.js +1 -1
- package/dist/components/uikit-sdk/SwiperDots/index.d.ts +1 -2
- package/dist/components/uikit-sdk/SwiperDots/index.js +3 -9
- package/dist/components/uikit-sdk/SwiperDots/index.js.map +1 -1
- package/dist/components/uikit-sdk/TabNav/index.js +3 -34
- package/dist/components/uikit-sdk/TabNav/index.js.map +1 -1
- package/dist/components/uikit-sdk/Tag/ListTag.d.ts +1 -2
- package/dist/components/uikit-sdk/Tag/ListTag.js +13 -16
- package/dist/components/uikit-sdk/Tag/ListTag.js.map +1 -1
- package/dist/components/uikit-sdk/Text/index.d.ts +1 -2
- package/dist/components/uikit-sdk/Text/index.js +21 -8
- package/dist/components/uikit-sdk/Text/index.js.map +1 -1
- package/dist/components/uikit-sdk/Text/types.d.ts +3 -2
- package/dist/components/uikit-sdk/Text/types.js.map +1 -1
- package/dist/components/uikit-sdk/Toggle/index.d.ts +1 -2
- package/dist/components/uikit-sdk/Toggle/index.js +7 -8
- package/dist/components/uikit-sdk/Toggle/index.js.map +1 -1
- package/dist/components/uikit-sdk/TokenImage/index.d.ts +1 -2
- package/dist/components/uikit-sdk/TokenImage/index.js +3 -45
- package/dist/components/uikit-sdk/TokenImage/index.js.map +1 -1
- package/dist/components/uikit-sdk/TooltipBubble/index.js +29 -53
- package/dist/components/uikit-sdk/TooltipBubble/index.js.map +1 -1
- package/dist/components/uikit-sdk/TooltipBubble/types.d.ts +5 -4
- package/dist/components/uikit-sdk/TooltipBubble/types.js.map +1 -1
- package/dist/config/constants/addresses.d.ts +1 -1
- package/dist/config/constants/addresses.js +22 -17
- package/dist/config/constants/addresses.js.map +1 -1
- package/dist/config/constants/chains.d.ts +0 -2
- package/dist/config/constants/chains.js +6 -2
- package/dist/config/constants/chains.js.map +1 -1
- package/dist/config/constants/networks.js +1 -0
- package/dist/config/constants/networks.js.map +1 -1
- package/dist/config/constants/queryKeys.d.ts +1 -0
- package/dist/config/constants/queryKeys.js +1 -0
- package/dist/config/constants/queryKeys.js.map +1 -1
- package/dist/config/constants/variables.d.ts +2 -4
- package/dist/config/constants/variables.js +15 -30
- package/dist/config/constants/variables.js.map +1 -1
- package/dist/constants/aptosConstants.d.ts +0 -2
- package/dist/constants/aptosConstants.js +1 -4
- package/dist/constants/aptosConstants.js.map +1 -1
- package/dist/contexts/ModalContext.d.ts +1 -1
- package/dist/contexts/ModalContext.js +1 -1
- package/dist/contexts/Popups.d.ts +1 -1
- package/dist/contexts/Popups.js +2 -2
- package/dist/contexts/Popups.js.map +1 -1
- package/dist/hooks/useSendReferenceId.js +2 -2
- package/dist/hooks/useSendReferenceId.js.map +1 -1
- package/dist/main.d.ts +1 -1
- package/dist/main.js +1 -1
- package/dist/main.js.map +1 -1
- package/dist/providers/index.d.ts +3 -4
- package/dist/providers/index.js +5 -39
- package/dist/providers/index.js.map +1 -1
- package/dist/state/balance/useCurrencyBalance.js +3 -23
- package/dist/state/balance/useCurrencyBalance.js.map +1 -1
- package/dist/state/balance/useUserTokensBalance.js +8 -78
- package/dist/state/balance/useUserTokensBalance.js.map +1 -1
- package/dist/state/bondApiStats/useGetBondApiStats.js +2 -3
- package/dist/state/bondApiStats/useGetBondApiStats.js.map +1 -1
- package/dist/state/bonds/fetchBondsData/bondPricing.d.ts +4 -0
- package/dist/state/bonds/fetchBondsData/bondPricing.js +39 -0
- package/dist/state/bonds/fetchBondsData/bondPricing.js.map +1 -0
- package/dist/state/bonds/useBondsData.js +25 -37
- package/dist/state/bonds/useBondsData.js.map +1 -1
- package/dist/state/bonds/useBondsList.js +2 -3
- package/dist/state/bonds/useBondsList.js.map +1 -1
- package/dist/state/bonds/useBondsListPreTGE.js +2 -3
- package/dist/state/bonds/useBondsListPreTGE.js.map +1 -1
- package/dist/state/bonds/useUserBonds.d.ts +3 -1
- package/dist/state/bonds/useUserBonds.js +25 -37
- package/dist/state/bonds/useUserBonds.js.map +1 -1
- package/dist/state/bonds/useUserBondsPreTGE.d.ts +1 -2
- package/dist/state/bonds/useUserBondsPreTGE.js +7 -203
- package/dist/state/bonds/useUserBondsPreTGE.js.map +1 -1
- package/dist/state/chainAccount/useChainAccount.d.ts +13 -0
- package/dist/state/chainAccount/useChainAccount.js +30 -0
- package/dist/state/chainAccount/useChainAccount.js.map +1 -0
- package/dist/state/hotBonds/useHotBonds.js +4 -4
- package/dist/state/hotBonds/useHotBonds.js.map +1 -1
- package/dist/state/recommendations/useGetBondRecommendations.js +2 -2
- package/dist/state/recommendations/useGetBondRecommendations.js.map +1 -1
- package/dist/state/tiers/tiers.d.ts +66 -0
- package/dist/state/tiers/tiers.js +97 -0
- package/dist/state/tiers/tiers.js.map +1 -0
- package/dist/state/tiers/useTierPoints.d.ts +2 -66
- package/dist/state/tiers/useTierPoints.js +13 -148
- package/dist/state/tiers/useTierPoints.js.map +1 -1
- package/dist/state/tokenPrices/resolveTokenPrice.d.ts +13 -0
- package/dist/state/tokenPrices/resolveTokenPrice.js +37 -0
- package/dist/state/tokenPrices/resolveTokenPrice.js.map +1 -0
- package/dist/state/tokenPrices/useTokenPrices.js +2 -3
- package/dist/state/tokenPrices/useTokenPrices.js.map +1 -1
- package/dist/state/useSDKConfig.d.ts +3 -2
- package/dist/state/useSDKConfig.js +53 -6
- package/dist/state/useSDKConfig.js.map +1 -1
- package/dist/styles.css +2 -1588
- package/dist/utils/bondPriceHelpers.js +1 -11
- package/dist/utils/bondPriceHelpers.js.map +1 -1
- package/dist/utils/campaignStyles.d.ts +5 -5
- package/dist/utils/campaignStyles.js.map +1 -1
- package/dist/utils/displayHelpers.js +1 -1
- package/dist/utils/displayHelpers.js.map +1 -1
- package/dist/utils/httpClient.d.ts +11 -0
- package/dist/utils/httpClient.js +48 -0
- package/dist/utils/httpClient.js.map +1 -0
- package/dist/utils/resolveColor.d.ts +1 -0
- package/dist/utils/resolveColor.js +9 -0
- package/dist/utils/resolveColor.js.map +1 -0
- package/dist/views/Bonds/Bonds.d.ts +1 -2
- package/dist/views/Bonds/Bonds.js +2 -11
- package/dist/views/Bonds/Bonds.js.map +1 -1
- package/dist/views/Bonds/components/BondRows/ActiveBondRows.js +6 -11
- package/dist/views/Bonds/components/BondRows/ActiveBondRows.js.map +1 -1
- package/dist/views/Bonds/components/BondRows/BondRow.js +23 -14
- package/dist/views/Bonds/components/BondRows/BondRow.js.map +1 -1
- package/dist/views/Bonds/components/BondRows/ChainTitle.d.ts +1 -2
- package/dist/views/Bonds/components/BondRows/ChainTitle.js +5 -13
- package/dist/views/Bonds/components/BondRows/ChainTitle.js.map +1 -1
- package/dist/views/Bonds/components/BondRows/ModalHandler.d.ts +1 -2
- package/dist/views/Bonds/components/BondRows/ModalHandler.js +9 -36
- package/dist/views/Bonds/components/BondRows/ModalHandler.js.map +1 -1
- package/dist/views/Bonds/components/BondRows/SoldOutRows.d.ts +1 -2
- package/dist/views/Bonds/components/BondRows/SoldOutRows.js +6 -8
- package/dist/views/Bonds/components/BondRows/SoldOutRows.js.map +1 -1
- package/dist/views/Bonds/components/BondsMenu/BondsMenu.js +4 -10
- package/dist/views/Bonds/components/BondsMenu/BondsMenu.js.map +1 -1
- package/dist/views/Bonds/components/BonusComponents/BonusComponent.d.ts +1 -2
- package/dist/views/Bonds/components/BonusComponents/BonusComponent.js +5 -25
- package/dist/views/Bonds/components/BonusComponents/BonusComponent.js.map +1 -1
- package/dist/views/Bonds/components/BonusComponents/BonusContainer.d.ts +3 -3
- package/dist/views/Bonds/components/BonusComponents/BonusContainer.js +6 -3
- package/dist/views/Bonds/components/BonusComponents/BonusContainer.js.map +1 -1
- package/dist/views/Bonds/components/BonusComponents/BonusTable.d.ts +1 -2
- package/dist/views/Bonds/components/BonusComponents/BonusTable.js +10 -22
- package/dist/views/Bonds/components/BonusComponents/BonusTable.js.map +1 -1
- package/dist/views/Bonds/components/BuyAgainRow/index.d.ts +1 -2
- package/dist/views/Bonds/components/BuyAgainRow/index.js +3 -22
- package/dist/views/Bonds/components/BuyAgainRow/index.js.map +1 -1
- package/dist/views/Bonds/components/ChainBanner/ChainBanner.d.ts +1 -2
- package/dist/views/Bonds/components/ChainBanner/ChainBanner.js +5 -11
- package/dist/views/Bonds/components/ChainBanner/ChainBanner.js.map +1 -1
- package/dist/views/Bonds/components/CheckURL/index.d.ts +1 -2
- package/dist/views/Bonds/components/CheckURL/index.js +9 -5
- package/dist/views/Bonds/components/CheckURL/index.js.map +1 -1
- package/dist/views/Bonds/components/HotBondCards/HotBondCard.d.ts +1 -2
- package/dist/views/Bonds/components/HotBondCards/HotBondCard.js +2 -19
- package/dist/views/Bonds/components/HotBondCards/HotBondCard.js.map +1 -1
- package/dist/views/Bonds/components/HotBondCards/index.d.ts +1 -2
- package/dist/views/Bonds/components/HotBondCards/index.js +4 -38
- package/dist/views/Bonds/components/HotBondCards/index.js.map +1 -1
- package/dist/views/Bonds/components/LoadingSkeleton/LoadingSkeleton.d.ts +1 -2
- package/dist/views/Bonds/components/LoadingSkeleton/LoadingSkeleton.js +2 -17
- package/dist/views/Bonds/components/LoadingSkeleton/LoadingSkeleton.js.map +1 -1
- package/dist/views/Bonds/components/RecommendationCards/SmallRecommendationCard.d.ts +1 -2
- package/dist/views/Bonds/components/RecommendationCards/SmallRecommendationCard.js +3 -3
- package/dist/views/Bonds/components/RecommendationCards/SmallRecommendationCard.js.map +1 -1
- package/dist/views/Bonds/components/RecommendationCards/index.d.ts +1 -2
- package/dist/views/Bonds/components/RecommendationCards/index.js +5 -15
- package/dist/views/Bonds/components/RecommendationCards/index.js.map +1 -1
- package/dist/views/Bonds/index.js +2 -2
- package/dist/views/Bonds/index.js.map +1 -1
- package/dist/views/Bonds/utils.js +2 -2
- package/dist/views/Bonds/utils.js.map +1 -1
- package/dist/views/BuyBond/BuyBondModal.js +3 -8
- package/dist/views/BuyBond/BuyBondModal.js.map +1 -1
- package/dist/views/BuyBond/ChainBuyComponent.d.ts +5 -0
- package/dist/views/BuyBond/ChainBuyComponent.js +11 -0
- package/dist/views/BuyBond/ChainBuyComponent.js.map +1 -0
- package/dist/views/BuyBond/ParticipationSuccessful.d.ts +1 -2
- package/dist/views/BuyBond/ParticipationSuccessful.js +8 -26
- package/dist/views/BuyBond/ParticipationSuccessful.js.map +1 -1
- package/dist/views/BuyBond/components/BondCards/BondCards.d.ts +1 -2
- package/dist/views/BuyBond/components/BondCards/BondCards.js +27 -54
- package/dist/views/BuyBond/components/BondCards/BondCards.js.map +1 -1
- package/dist/views/BuyBond/components/BondCards/BondCardsPreTGE.d.ts +1 -2
- package/dist/views/BuyBond/components/BondCards/BondCardsPreTGE.js +3 -56
- package/dist/views/BuyBond/components/BondCards/BondCardsPreTGE.js.map +1 -1
- package/dist/views/BuyBond/components/BondModalHeader.d.ts +1 -2
- package/dist/views/BuyBond/components/BondModalHeader.js +6 -49
- package/dist/views/BuyBond/components/BondModalHeader.js.map +1 -1
- package/dist/views/BuyBond/components/BondModalMinTierHeader.d.ts +1 -1
- package/dist/views/BuyBond/components/BondModalMinTierHeader.js +4 -9
- package/dist/views/BuyBond/components/BondModalMinTierHeader.js.map +1 -1
- package/dist/views/BuyBond/components/Estimations.d.ts +1 -2
- package/dist/views/BuyBond/components/Estimations.js +10 -39
- package/dist/views/BuyBond/components/Estimations.js.map +1 -1
- package/dist/views/BuyBond/components/ExpandedViewButton.d.ts +1 -2
- package/dist/views/BuyBond/components/ExpandedViewButton.js +2 -15
- package/dist/views/BuyBond/components/ExpandedViewButton.js.map +1 -1
- package/dist/views/BuyBond/components/L1xIframe/L1xIframe.d.ts +4 -0
- package/dist/views/BuyBond/components/L1xIframe/L1xIframe.js +12 -0
- package/dist/views/BuyBond/components/L1xIframe/L1xIframe.js.map +1 -0
- package/dist/views/BuyBond/components/NewRateModal/NewRateModal.d.ts +1 -2
- package/dist/views/BuyBond/components/NewRateModal/NewRateModal.js +2 -14
- package/dist/views/BuyBond/components/NewRateModal/NewRateModal.js.map +1 -1
- package/dist/views/BuyBond/components/NoBonusModal/NoBonusModal.js +2 -2
- package/dist/views/BuyBond/components/NoBonusModal/NoBonusModal.js.map +1 -1
- package/dist/views/BuyBond/components/PointsLeftForNextTier/PointsLeftForNextTier.js +14 -94
- package/dist/views/BuyBond/components/PointsLeftForNextTier/PointsLeftForNextTier.js.map +1 -1
- package/dist/views/BuyBond/components/ProjectDescription.d.ts +1 -2
- package/dist/views/BuyBond/components/ProjectDescription.js +2 -15
- package/dist/views/BuyBond/components/ProjectDescription.js.map +1 -1
- package/dist/views/BuyBond/index.d.ts +2 -2
- package/dist/views/BuyBond/index.js +2 -2
- package/dist/views/BuyBond/index.js.map +1 -1
- package/dist/views/BuyBond/utils.js +1 -1
- package/dist/views/BuyBond/utils.js.map +1 -1
- package/dist/views/FullBondsView/FullBondsView.d.ts +1 -2
- package/dist/views/FullBondsView/FullBondsView.js +2 -2
- package/dist/views/FullBondsView/FullBondsView.js.map +1 -1
- package/dist/views/FullBondsView/index.js +2 -2
- package/dist/views/FullBondsView/index.js.map +1 -1
- package/dist/views/ProjectView/ProjectView.js +3 -16
- package/dist/views/ProjectView/ProjectView.js.map +1 -1
- package/dist/views/ProjectView/components/BondLeaderboard/components/SalesTable.d.ts +1 -2
- package/dist/views/ProjectView/components/BondLeaderboard/components/SalesTable.js +5 -24
- package/dist/views/ProjectView/components/BondLeaderboard/components/SalesTable.js.map +1 -1
- package/dist/views/ProjectView/components/BondLeaderboard/components/TopSaleCard.d.ts +1 -2
- package/dist/views/ProjectView/components/BondLeaderboard/components/TopSaleCard.js +9 -21
- package/dist/views/ProjectView/components/BondLeaderboard/components/TopSaleCard.js.map +1 -1
- package/dist/views/ProjectView/components/BondLeaderboard/components/TopThreeSalesCards.d.ts +1 -2
- package/dist/views/ProjectView/components/BondLeaderboard/components/TopThreeSalesCards.js +2 -2
- package/dist/views/ProjectView/components/BondLeaderboard/components/TopThreeSalesCards.js.map +1 -1
- package/dist/views/ProjectView/components/BondLeaderboard/index.d.ts +1 -2
- package/dist/views/ProjectView/components/BondLeaderboard/index.js +2 -14
- package/dist/views/ProjectView/components/BondLeaderboard/index.js.map +1 -1
- package/dist/views/ProjectView/components/BondStats/LineChart.d.ts +10 -0
- package/dist/views/ProjectView/components/BondStats/LineChart.js +144 -0
- package/dist/views/ProjectView/components/BondStats/LineChart.js.map +1 -0
- package/dist/views/ProjectView/components/BondStats/index.d.ts +1 -2
- package/dist/views/ProjectView/components/BondStats/index.js +18 -47
- package/dist/views/ProjectView/components/BondStats/index.js.map +1 -1
- package/dist/views/ProjectView/components/BondStats/types.d.ts +2 -37
- package/dist/views/ProjectView/components/BondStats/types.js +1 -28
- package/dist/views/ProjectView/components/BondStats/types.js.map +1 -1
- package/dist/views/ProjectView/components/NavPanel/index.d.ts +1 -2
- package/dist/views/ProjectView/components/NavPanel/index.js +2 -10
- package/dist/views/ProjectView/components/NavPanel/index.js.map +1 -1
- package/dist/views/ProjectView/components/PriceChart/components/CandleStickChart.d.ts +1 -2
- package/dist/views/ProjectView/components/PriceChart/components/CandleStickChart.js +1 -1
- package/dist/views/ProjectView/components/PriceChart/components/LineChart.d.ts +1 -2
- package/dist/views/ProjectView/components/PriceChart/components/LineChart.js +1 -1
- package/dist/views/ProjectView/components/PriceChart/index.d.ts +1 -2
- package/dist/views/ProjectView/components/PriceChart/index.js +5 -4
- package/dist/views/ProjectView/components/PriceChart/index.js.map +1 -1
- package/dist/views/ProjectView/components/ProjectInfo/index.d.ts +1 -2
- package/dist/views/ProjectView/components/ProjectInfo/index.js +2 -3
- package/dist/views/ProjectView/components/ProjectInfo/index.js.map +1 -1
- package/dist/views/ProjectView/components/RecommendationCards/index.d.ts +1 -2
- package/dist/views/ProjectView/components/RecommendationCards/index.js +6 -20
- package/dist/views/ProjectView/components/RecommendationCards/index.js.map +1 -1
- package/dist/views/ProjectView/index.js +2 -2
- package/dist/views/ProjectView/index.js.map +1 -1
- package/dist/views/SingleBond/SingleBond.js +5 -11
- package/dist/views/SingleBond/SingleBond.js.map +1 -1
- package/dist/views/SingleBond/SoldOutBuyBondPlaceholder.js +9 -31
- package/dist/views/SingleBond/SoldOutBuyBondPlaceholder.js.map +1 -1
- package/dist/views/SingleBond/index.js +2 -2
- package/dist/views/SingleBond/index.js.map +1 -1
- package/dist/views/YourBonds/YourBonds.d.ts +1 -2
- package/dist/views/YourBonds/YourBonds.js +29 -36
- package/dist/views/YourBonds/YourBonds.js.map +1 -1
- package/dist/views/YourBonds/components/ClaimAll/ClaimAllModal.d.ts +1 -2
- package/dist/views/YourBonds/components/ClaimAll/ClaimAllModal.js +11 -197
- package/dist/views/YourBonds/components/ClaimAll/ClaimAllModal.js.map +1 -1
- package/dist/views/YourBonds/components/ClaimAll/index.d.ts +1 -2
- package/dist/views/YourBonds/components/ClaimAll/index.js +6 -16
- package/dist/views/YourBonds/components/ClaimAll/index.js.map +1 -1
- package/dist/views/YourBonds/components/ProfitCard/ProfitCard.d.ts +1 -2
- package/dist/views/YourBonds/components/ProfitCard/ProfitCard.js +3 -15
- package/dist/views/YourBonds/components/ProfitCard/ProfitCard.js.map +1 -1
- package/dist/views/YourBonds/components/YourBondsMenu/YourBondsMenu.d.ts +1 -2
- package/dist/views/YourBonds/components/YourBondsMenu/YourBondsMenu.js +3 -3
- package/dist/views/YourBonds/components/YourBondsMenu/YourBondsMenu.js.map +1 -1
- package/dist/views/YourBonds/index.js +2 -2
- package/dist/views/YourBonds/index.js.map +1 -1
- package/dist/views/YourBondsModal/YourBondsModal.d.ts +1 -2
- package/dist/views/YourBondsModal/YourBondsModal.js +9 -101
- package/dist/views/YourBondsModal/YourBondsModal.js.map +1 -1
- package/dist/views/YourBondsModal/components/LinkShare/LinkShare.d.ts +1 -1
- package/dist/views/YourBondsModal/components/LinkShare/LinkShare.js +3 -16
- package/dist/views/YourBondsModal/components/LinkShare/LinkShare.js.map +1 -1
- package/dist/views/YourBondsModal/components/LinkShare/templateImageShare.js +1 -2
- package/dist/views/YourBondsModal/components/LinkShare/templateImageShare.js.map +1 -1
- package/dist/views/YourBondsModal/components/LinkShare/utils.js +8 -7
- package/dist/views/YourBondsModal/components/LinkShare/utils.js.map +1 -1
- package/dist/views/YourBondsModal/components/NFTImage/NFTImage.d.ts +1 -2
- package/dist/views/YourBondsModal/components/NFTImage/NFTImage.js +8 -86
- package/dist/views/YourBondsModal/components/NFTImage/NFTImage.js.map +1 -1
- package/dist/views/YourBondsModal/components/Recommendations/CardRecommendation.d.ts +1 -1
- package/dist/views/YourBondsModal/components/Recommendations/CardRecommendation.js +2 -15
- package/dist/views/YourBondsModal/components/Recommendations/CardRecommendation.js.map +1 -1
- package/dist/views/YourBondsModal/components/Recommendations/RecSkeleton.d.ts +1 -2
- package/dist/views/YourBondsModal/components/Recommendations/RecSkeleton.js +2 -12
- package/dist/views/YourBondsModal/components/Recommendations/RecSkeleton.js.map +1 -1
- package/dist/views/YourBondsModal/components/Recommendations/Recommendations.d.ts +1 -2
- package/dist/views/YourBondsModal/components/Recommendations/Recommendations.js +5 -9
- package/dist/views/YourBondsModal/components/Recommendations/Recommendations.js.map +1 -1
- package/dist/views/YourBondsModal/components/TransferBondModal/index.js +5 -9
- package/dist/views/YourBondsModal/components/TransferBondModal/index.js.map +1 -1
- package/dist/views/YourBondsModal/components/YourBondModalHeader/YourBondModalHeader.d.ts +1 -2
- package/dist/views/YourBondsModal/components/YourBondModalHeader/YourBondModalHeader.js +2 -24
- package/dist/views/YourBondsModal/components/YourBondModalHeader/YourBondModalHeader.js.map +1 -1
- package/package.json +100 -21
- package/dist/components/ChainOptionList/styles.d.ts +0 -2
- package/dist/components/ChainOptionList/styles.js +0 -54
- package/dist/components/ChainOptionList/styles.js.map +0 -1
- package/dist/components/ConnectAptosWalletButton/ConnectAptosWalletButton.js.map +0 -1
- package/dist/components/ConnectSolanaWalletButton/ConnectSolanaWalletButton.js +0 -19
- package/dist/components/ConnectSolanaWalletButton/ConnectSolanaWalletButton.js.map +0 -1
- package/dist/components/ConnectoToVmBanners/ConnectToAptosBanner.d.ts +0 -1
- package/dist/components/ConnectoToVmBanners/ConnectToAptosBanner.js +0 -50
- package/dist/components/ConnectoToVmBanners/ConnectToAptosBanner.js.map +0 -1
- package/dist/components/ConnectoToVmBanners/ConnectToEvmBanner.d.ts +0 -1
- package/dist/components/ConnectoToVmBanners/ConnectToEvmBanner.js +0 -50
- package/dist/components/ConnectoToVmBanners/ConnectToEvmBanner.js.map +0 -1
- package/dist/components/ConnectoToVmBanners/ConnectToSolanaBanner.d.ts +0 -1
- package/dist/components/ConnectoToVmBanners/ConnectToSolanaBanner.js +0 -49
- package/dist/components/ConnectoToVmBanners/ConnectToSolanaBanner.js.map +0 -1
- package/dist/components/ConnectoToVmBanners/ConnectToSuiBanner.d.ts +0 -1
- package/dist/components/ConnectoToVmBanners/ConnectToSuiBanner.js +0 -45
- package/dist/components/ConnectoToVmBanners/ConnectToSuiBanner.js.map +0 -1
- package/dist/components/ProgressBar/styles.d.ts +0 -2
- package/dist/components/ProgressBar/styles.js +0 -15
- package/dist/components/ProgressBar/styles.js.map +0 -1
- package/dist/components/Toast/styles.d.ts +0 -3
- package/dist/components/Toast/styles.js +0 -30
- package/dist/components/Toast/styles.js.map +0 -1
- package/dist/components/Tooltip/styles.d.ts +0 -2
- package/dist/components/Tooltip/styles.js +0 -32
- package/dist/components/Tooltip/styles.js.map +0 -1
- package/dist/components/uikit-sdk/Button/styles.d.ts +0 -3
- package/dist/components/uikit-sdk/Button/styles.js +0 -31
- package/dist/components/uikit-sdk/Button/styles.js.map +0 -1
- package/dist/components/uikit-sdk/Modal/styles.d.ts +0 -3
- package/dist/components/uikit-sdk/Modal/styles.js +0 -47
- package/dist/components/uikit-sdk/Modal/styles.js.map +0 -1
- package/dist/components/uikit-sdk/Select/styles.d.ts +0 -4
- package/dist/components/uikit-sdk/Select/styles.js +0 -50
- package/dist/components/uikit-sdk/Select/styles.js.map +0 -1
- package/dist/components/uikit-sdk/Skeleton/styles.d.ts +0 -3
- package/dist/components/uikit-sdk/Skeleton/styles.js +0 -43
- package/dist/components/uikit-sdk/Skeleton/styles.js.map +0 -1
- package/dist/components/uikit-sdk/Toggle/styles.d.ts +0 -3
- package/dist/components/uikit-sdk/Toggle/styles.js +0 -22
- package/dist/components/uikit-sdk/Toggle/styles.js.map +0 -1
- package/dist/components/uikit-sdk/TooltipBubble/styles.d.ts +0 -4
- package/dist/components/uikit-sdk/TooltipBubble/styles.js +0 -108
- package/dist/components/uikit-sdk/TooltipBubble/styles.js.map +0 -1
- package/dist/config/constants/suiZapTokens.js.map +0 -1
- package/dist/constants/solanaConstants.js.map +0 -1
- package/dist/constants/suiConstants.js.map +0 -1
- package/dist/contexts/SwiperProvider.d.ts +0 -12
- package/dist/contexts/SwiperProvider.js +0 -21
- package/dist/contexts/SwiperProvider.js.map +0 -1
- package/dist/hooks/accounts/useEVMAccount.js.map +0 -1
- package/dist/hooks/accounts/useSOLAccount.js.map +0 -1
- package/dist/hooks/accounts/useSUIAccount.d.ts +0 -7
- package/dist/hooks/accounts/useSUIAccount.js.map +0 -1
- package/dist/hooks/useMonitorTx.js.map +0 -1
- package/dist/hooks/useSwiper.d.ts +0 -2
- package/dist/hooks/useSwiper.js +0 -13
- package/dist/hooks/useSwiper.js.map +0 -1
- package/dist/providers/AptosWalletProvider.d.ts +0 -5
- package/dist/providers/SolanaWalletProvider.d.ts +0 -5
- package/dist/providers/SuiWalletProvider.d.ts +0 -5
- package/dist/state/allowance/useAllowance.js.map +0 -1
- package/dist/state/balance/useCurrencyBalanceAptos.js.map +0 -1
- package/dist/state/balance/useCurrencyBalanceSolana.js.map +0 -1
- package/dist/state/balance/useCurrencyBalanceSui.js.map +0 -1
- package/dist/state/bonds/fetchBondsData/cleanBillsData.d.ts +0 -4
- package/dist/state/bonds/fetchBondsData/cleanBillsData.js +0 -142
- package/dist/state/bonds/fetchBondsData/cleanBillsData.js.map +0 -1
- package/dist/state/bonds/fetchBondsData/fetchBondsDataAptos.js.map +0 -1
- package/dist/state/bonds/fetchBondsData/fetchBondsDataEVM.js +0 -89
- package/dist/state/bonds/fetchBondsData/fetchBondsDataEVM.js.map +0 -1
- package/dist/state/bonds/fetchBondsData/fetchBondsDataPreTGE.js.map +0 -1
- package/dist/state/bonds/fetchBondsData/fetchBondsDataSOL.d.ts +0 -3
- package/dist/state/bonds/fetchBondsData/fetchBondsDataSOL.js +0 -68
- package/dist/state/bonds/fetchBondsData/fetchBondsDataSOL.js.map +0 -1
- package/dist/state/bonds/fetchBondsData/fetchBondsDataSui.js.map +0 -1
- package/dist/state/bonds/fetchUsersBonds/fetchUsersBondsAptos.js.map +0 -1
- package/dist/state/bonds/fetchUsersBonds/fetchUsersBondsEVM.js.map +0 -1
- package/dist/state/bonds/fetchUsersBonds/fetchUsersBondsSOL.js.map +0 -1
- package/dist/state/bonds/fetchUsersBonds/fetchUsersBondsSUI.js.map +0 -1
- package/dist/state/bonds/useTierProofSignature.js.map +0 -1
- package/dist/state/zap/useAptosZapQuote.js.map +0 -1
- package/dist/state/zap/useJupiterSolanaQuote.js.map +0 -1
- package/dist/state/zap/useSoulZapBondQuote.js.map +0 -1
- package/dist/state/zap/useSuiZapQuote.js.map +0 -1
- package/dist/theme/base.d.ts +0 -109
- package/dist/theme/base.js +0 -125
- package/dist/theme/base.js.map +0 -1
- package/dist/theme/colors.d.ts +0 -20
- package/dist/theme/colors.js +0 -25
- package/dist/theme/colors.js.map +0 -1
- package/dist/theme/components.d.ts +0 -411
- package/dist/theme/components.js +0 -365
- package/dist/theme/components.js.map +0 -1
- package/dist/theme/index.d.ts +0 -2
- package/dist/theme/index.js +0 -12
- package/dist/theme/index.js.map +0 -1
- package/dist/types/bondCodec.js.map +0 -1
- package/dist/types/bondIssuanceCodec.js.map +0 -1
- package/dist/types/bondPricingCodec.js.map +0 -1
- package/dist/types/bondTermCodec.js.map +0 -1
- package/dist/utils/aptosHelpers.js.map +0 -1
- package/dist/utils/calculateSolanaTrueBillPrice.js.map +0 -1
- package/dist/utils/derivePda.js.map +0 -1
- package/dist/utils/getDotPos.d.ts +0 -1
- package/dist/utils/getDotPos.js +0 -12
- package/dist/utils/getDotPos.js.map +0 -1
- package/dist/utils/getSolanaAccount.js.map +0 -1
- package/dist/utils/multicall.js.map +0 -1
- package/dist/utils/solanaAtaHelper.js.map +0 -1
- package/dist/utils/solanaMulticall.js.map +0 -1
- package/dist/utils/solanaRpc.d.ts +0 -1
- package/dist/utils/solanaRpc.js.map +0 -1
- package/dist/utils/suiHelpers.js.map +0 -1
- package/dist/views/Bonds/components/BondRows/ModalHandlerPreTGE.js.map +0 -1
- package/dist/views/Bonds/components/HotBondCards/styles.d.ts +0 -35
- package/dist/views/Bonds/components/HotBondCards/styles.js +0 -38
- package/dist/views/Bonds/components/HotBondCards/styles.js.map +0 -1
- package/dist/views/Bonds/components/RecommendationCards/styles.d.ts +0 -2
- package/dist/views/Bonds/components/RecommendationCards/styles.js +0 -24
- package/dist/views/Bonds/components/RecommendationCards/styles.js.map +0 -1
- package/dist/views/BuyBond/BuyComponent.d.ts +0 -11
- package/dist/views/BuyBond/BuyComponent.js.map +0 -1
- package/dist/views/BuyBond/BuyComponentAptos.js.map +0 -1
- package/dist/views/BuyBond/BuyComponentPreTGE.js +0 -147
- package/dist/views/BuyBond/BuyComponentPreTGE.js.map +0 -1
- package/dist/views/BuyBond/BuyComponentSolana.js.map +0 -1
- package/dist/views/BuyBond/BuyComponentSui.js.map +0 -1
- package/dist/views/BuyBond/components/GetUpToComponent/GetUpToComponent.js +0 -61
- package/dist/views/BuyBond/components/GetUpToComponent/GetUpToComponent.js.map +0 -1
- package/dist/views/BuyBond/styles.d.ts +0 -2
- package/dist/views/BuyBond/styles.js +0 -33
- package/dist/views/BuyBond/styles.js.map +0 -1
- package/dist/views/LifiModal/LifiModal.d.ts +0 -7
- package/dist/views/LifiModal/LifiModal.js.map +0 -1
- package/dist/views/ProjectView/components/BondLeaderboard/components/styles.d.ts +0 -2
- package/dist/views/ProjectView/components/BondLeaderboard/components/styles.js +0 -51
- package/dist/views/ProjectView/components/BondLeaderboard/components/styles.js.map +0 -1
- package/dist/views/ProjectView/components/BondStats/styles.d.ts +0 -2
- package/dist/views/ProjectView/components/BondStats/styles.js +0 -49
- package/dist/views/ProjectView/components/BondStats/styles.js.map +0 -1
- package/dist/views/ProjectView/components/PriceChart/styles.d.ts +0 -2
- package/dist/views/ProjectView/components/PriceChart/styles.js +0 -44
- package/dist/views/ProjectView/components/PriceChart/styles.js.map +0 -1
- package/dist/views/ProjectView/components/ProjectInfo/styles.d.ts +0 -2
- package/dist/views/ProjectView/components/ProjectInfo/styles.js +0 -21
- package/dist/views/ProjectView/components/ProjectInfo/styles.js.map +0 -1
- package/dist/views/ProjectView/styles.d.ts +0 -2
- package/dist/views/ProjectView/styles.js +0 -10
- package/dist/views/ProjectView/styles.js.map +0 -1
- package/dist/views/TransactionModal/TransactionModal.js +0 -195
- package/dist/views/TransactionModal/TransactionModal.js.map +0 -1
- package/dist/views/YourBonds/components/UserBondRow/PreTGEActions.d.ts +0 -6
- package/dist/views/YourBonds/components/UserBondRow/PreTGEActions.js.map +0 -1
- package/dist/views/YourBonds/components/UserBondRow/UserBondRow.d.ts +0 -6
- package/dist/views/YourBonds/components/UserBondRow/UserBondRow.js +0 -136
- package/dist/views/YourBonds/components/UserBondRow/UserBondRow.js.map +0 -1
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowAptos.d.ts +0 -6
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowAptos.js +0 -109
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowAptos.js.map +0 -1
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowPreTGE.d.ts +0 -6
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowPreTGE.js +0 -43
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowPreTGE.js.map +0 -1
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowSolana.d.ts +0 -6
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowSolana.js.map +0 -1
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowSui.d.ts +0 -6
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowSui.js +0 -126
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowSui.js.map +0 -1
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowYield.d.ts +0 -6
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowYield.js +0 -50
- package/dist/views/YourBonds/components/UserBondRow/UserBondRowYield.js.map +0 -1
- package/dist/views/YourBonds/components/UserBondRow/index.d.ts +0 -5
- package/dist/views/YourBondsModal/components/Actions/Actions.d.ts +0 -6
- package/dist/views/YourBondsModal/components/Actions/Actions.js.map +0 -1
- package/dist/views/YourBondsModal/components/Actions/ActionsAptos.d.ts +0 -6
- package/dist/views/YourBondsModal/components/Actions/ActionsAptos.js.map +0 -1
- package/dist/views/YourBondsModal/components/Actions/ActionsSolana.d.ts +0 -6
- package/dist/views/YourBondsModal/components/Actions/ActionsSolana.js.map +0 -1
- package/dist/views/YourBondsModal/components/Actions/ActionsSui.d.ts +0 -6
- package/dist/views/YourBondsModal/components/Actions/ActionsSui.js.map +0 -1
- package/dist/views/YourBondsModal/components/TransferBondModal/TransferAction.js.map +0 -1
- package/dist/views/YourBondsModal/components/TransferBondModal/TransferActionAptos.js.map +0 -1
- package/dist/views/YourBondsModal/components/TransferBondModal/TransferActionSolana.js.map +0 -1
- package/dist/views/YourBondsModal/components/TransferBondModal/TransferActionSui.js.map +0 -1
- package/dist/views/YourBondsModalYield/YourBondsModalYield.js +0 -220
- package/dist/views/YourBondsModalYield/YourBondsModalYield.js.map +0 -1
- package/dist/views/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js +0 -71
- package/dist/views/YourBondsModalYield/components/UnstakeModalYield/UnstakeModalYield.js.map +0 -1
- package/dist/views/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js +0 -32
- package/dist/views/YourBondsModalYield/components/YourBondModalHeader/YourBondModalHeader.js.map +0 -1
- /package/dist/{views/BuyBond → adapters/aptos}/BuyComponentAptos.d.ts +0 -0
- /package/dist/{types → adapters/aptos}/aptosBonds.d.ts +0 -0
- /package/dist/{hooks/accounts → adapters/aptos}/useAPTAccount.d.ts +0 -0
- /package/dist/{state/zap → adapters/aptos}/useAptosZapQuote.d.ts +0 -0
- /package/dist/{state/balance → adapters/aptos}/useCurrencyBalanceAptos.d.ts +0 -0
- /package/dist/{utils → adapters/evm}/multicall.d.ts +0 -0
- /package/dist/{state/allowance → adapters/evm}/useAllowance.d.ts +0 -0
- /package/dist/{hooks/accounts → adapters/evm}/useEVMAccount.d.ts +0 -0
- /package/dist/{hooks/accounts → adapters/evm}/useEVMAccount.js +0 -0
- /package/dist/{hooks → adapters/evm}/useMonitorTx.d.ts +0 -0
- /package/dist/{state/zap → adapters/evm}/useSoulZapBondQuote.d.ts +0 -0
- /package/dist/{state/bonds → adapters/evm}/useTierProofSignature.d.ts +0 -0
- /package/dist/{views/BuyBond → adapters/solana}/BuyComponentSolana.d.ts +0 -0
- /package/dist/{utils → adapters/solana}/calculateSolanaTrueBillPrice.d.ts +0 -0
- /package/dist/{types → adapters/solana/codecs}/index.d.ts +0 -0
- /package/dist/{utils → adapters/solana}/derivePda.d.ts +0 -0
- /package/dist/{utils → adapters/solana}/derivePda.js +0 -0
- /package/dist/{types → adapters/solana}/helius.d.ts +0 -0
- /package/dist/{utils → adapters/solana}/solanaAtaHelper.d.ts +0 -0
- /package/dist/{utils → adapters/solana}/solanaAtaHelper.js +0 -0
- /package/dist/{types → adapters/solana}/solanaBonds.d.ts +0 -0
- /package/dist/{constants → adapters/solana}/solanaConstants.d.ts +0 -0
- /package/dist/{utils → adapters/solana}/solanaMulticall.d.ts +0 -0
- /package/dist/{utils → adapters/solana}/solanaMulticall.js +0 -0
- /package/dist/{state/zap → adapters/solana}/useJupiterSolanaQuote.d.ts +0 -0
- /package/dist/{state/zap → adapters/solana}/useJupiterSolanaQuote.js +0 -0
- /package/dist/{hooks/accounts → adapters/solana}/useSOLAccount.d.ts +0 -0
- /package/dist/{hooks/accounts → adapters/solana}/useSOLAccount.js +0 -0
- /package/dist/{views/BuyBond → adapters/sui}/BuyComponentSui.d.ts +0 -0
- /package/dist/{constants → adapters/sui}/suiConstants.d.ts +0 -0
- /package/dist/{constants → adapters/sui}/suiConstants.js +0 -0
- /package/dist/{utils → adapters/sui}/suiHelpers.d.ts +0 -0
- /package/dist/{config/constants → adapters/sui}/suiZapTokens.d.ts +0 -0
- /package/dist/{config/constants → adapters/sui}/suiZapTokens.js +0 -0
- /package/dist/{state/balance → adapters/sui}/useCurrencyBalanceSui.d.ts +0 -0
- /package/dist/{state/zap → adapters/sui}/useSuiZapQuote.d.ts +0 -0
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { BillVersion } from '@ape.swap/apeswap-lists';
|
|
2
|
+
import multicall from './multicall.js';
|
|
3
|
+
import BOND_ABI from '../../config/abi/BOND_2_4_0.json.js';
|
|
4
|
+
import erc20ABI from '../../config/abi/erc20.json.js';
|
|
5
|
+
import chunk from 'lodash-es/chunk.js';
|
|
6
|
+
import { getBonusWithFee, getDiscountWithFee, getRawBonus, getRawDiscount } from '../../state/bonds/fetchBondsData/bondPricing.js';
|
|
7
|
+
import { formatUnits } from '../../utils/fixedPoint.js';
|
|
8
|
+
import { getBalanceNumber } from '../../utils/getBalanceNumber.js';
|
|
9
|
+
import { TIER_MAPPING } from '../../state/tiers/tiers.js';
|
|
10
|
+
import { resolveBondTokenPrices } from '../../state/tokenPrices/resolveTokenPrice.js';
|
|
11
|
+
|
|
12
|
+
const fetchBondsDataEVM = async (chainId, bonds, apiUrl, tokenPrices) => {
|
|
13
|
+
try {
|
|
14
|
+
const bills = bonds.filter((b) => !b.soldOut);
|
|
15
|
+
const billIds = [];
|
|
16
|
+
const billCalls = bills.flatMap((bill) => {
|
|
17
|
+
billIds.push(bill.index);
|
|
18
|
+
return [
|
|
19
|
+
{
|
|
20
|
+
address: bill.contractAddress[bill.chainId] ?? '',
|
|
21
|
+
name: bill.billVersion === BillVersion.V4 ? 'trueBondPrices' : 'trueBillPrice()',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
address: bill.contractAddress[bill.chainId] ?? '',
|
|
25
|
+
name: 'totalPayoutGiven',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
address: bill.contractAddress[bill.chainId] ?? '',
|
|
29
|
+
name: 'terms',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
address: bill.contractAddress[bill.chainId] ?? '',
|
|
33
|
+
name: bill.billVersion !== BillVersion.V1 ? 'getMaxTotalPayout' : 'maxTotalPayout',
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
address: bill.contractAddress[bill.chainId] ?? '',
|
|
37
|
+
name: 'feeInPayout',
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
address: bill.contractAddress[bill.chainId] ?? '',
|
|
41
|
+
name: 'feeInPrincipal',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
address: bill.contractAddress[bill.chainId] ?? '',
|
|
45
|
+
name: 'paused',
|
|
46
|
+
},
|
|
47
|
+
// keep custom treasury at the very last position
|
|
48
|
+
{
|
|
49
|
+
address: bill.contractAddress[bill.chainId] ?? '',
|
|
50
|
+
name: 'customTreasury',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
});
|
|
54
|
+
const vals = await multicall(chainId, BOND_ABI, billCalls);
|
|
55
|
+
// The following lines basically grab the values from customTreasury returned from bills contract and then,
|
|
56
|
+
// appends the treasury contract's balance to each bill's chunk
|
|
57
|
+
// appendIndex value assumes customTreasury will be at the end of the billCalls array
|
|
58
|
+
const appendIndex = billCalls.length / bills.length;
|
|
59
|
+
const treasuryAddresses = vals
|
|
60
|
+
.filter((_, i) => (i % appendIndex) + 1 === appendIndex)
|
|
61
|
+
.map((customTreasury) => customTreasury[0]);
|
|
62
|
+
const treasuryBalanceCalls = treasuryAddresses.map((treasuryAddress, i) => ({
|
|
63
|
+
address: bills?.[i]?.earnToken?.address?.[chainId] ?? '',
|
|
64
|
+
name: 'balanceOf',
|
|
65
|
+
params: [treasuryAddress],
|
|
66
|
+
}));
|
|
67
|
+
const treasuryBalances = await multicall(chainId, erc20ABI, treasuryBalanceCalls);
|
|
68
|
+
const updatedVals = vals.reduce((acc, val, index) => {
|
|
69
|
+
acc.push(val);
|
|
70
|
+
if ((index + 1) % appendIndex === 0) {
|
|
71
|
+
const pos = (index + 1) / appendIndex;
|
|
72
|
+
// balanceOf has a single output, so multicall wraps it as [balance] — unwrap it
|
|
73
|
+
acc.push(treasuryBalances[pos - 1][0]);
|
|
74
|
+
}
|
|
75
|
+
return acc;
|
|
76
|
+
}, []);
|
|
77
|
+
const chunkSize = updatedVals?.length / bills?.length;
|
|
78
|
+
const chunkedBills = chunk(updatedVals, chunkSize);
|
|
79
|
+
return await Promise.all(chunkedBills?.map(async (chunk, index) => {
|
|
80
|
+
const bill = bills?.find((bill) => bill?.index === billIds[index]);
|
|
81
|
+
const { lpPrice, earnTokenPrice } = await resolveBondTokenPrices(bill, tokenPrices);
|
|
82
|
+
const [trueBillPriceFromChunk, totalPayoutGiven, terms, maxTotalPayout, feeInPayoutRaw, feeInPrincipalRaw, paused, , customTreasuryBalance,] = chunk;
|
|
83
|
+
const trueBillPrice = trueBillPriceFromChunk;
|
|
84
|
+
const feeInPayout = Number(feeInPayoutRaw / 10000);
|
|
85
|
+
const feeInPrincipal = Number(feeInPrincipalRaw / 10000);
|
|
86
|
+
const tierBoostRate = bill.tierBoostRate === undefined ? 1 : bill.tierBoostRate;
|
|
87
|
+
const [, vestingTerm, , maxPayout] = terms;
|
|
88
|
+
const tokensRemaining = Number(formatUnits(BigInt(maxTotalPayout ?? '0') - BigInt(totalPayoutGiven), bill?.earnToken.decimals[bill?.chainId] ?? 18));
|
|
89
|
+
const treasuryBalance = customTreasuryBalance
|
|
90
|
+
? getBalanceNumber(customTreasuryBalance, bill?.earnToken?.decimals?.[bill?.chainId] ?? 18)
|
|
91
|
+
: null;
|
|
92
|
+
let trueBondPrices = [];
|
|
93
|
+
if (bill?.billVersion === BillVersion.V4) {
|
|
94
|
+
trueBondPrices = trueBillPrice[0].map((data) => {
|
|
95
|
+
return {
|
|
96
|
+
points: data?.points?.toString(),
|
|
97
|
+
trueBondPrice: data?.trueBondPrice.toString(),
|
|
98
|
+
discount: getRawDiscount(data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),
|
|
99
|
+
bonus: getRawBonus(data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),
|
|
100
|
+
discountWithFee: getDiscountWithFee(feeInPayout, tierBoostRate, data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),
|
|
101
|
+
bonusWithFee: getBonusWithFee(feeInPayout, tierBoostRate, data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),
|
|
102
|
+
boost: TIER_MAPPING[data?.points?.toString()],
|
|
103
|
+
};
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
const bonus = getRawBonus(trueBillPrice, lpPrice, earnTokenPrice);
|
|
108
|
+
const bonusWithFee = getBonusWithFee(feeInPayout, tierBoostRate, trueBillPrice, lpPrice, earnTokenPrice);
|
|
109
|
+
const discount = getRawDiscount(trueBillPrice, lpPrice, earnTokenPrice);
|
|
110
|
+
const discountWithFee = getDiscountWithFee(feeInPayout, tierBoostRate, trueBillPrice, lpPrice, earnTokenPrice);
|
|
111
|
+
trueBondPrices = [
|
|
112
|
+
{
|
|
113
|
+
points: '0',
|
|
114
|
+
boost: 0,
|
|
115
|
+
trueBondPrice: trueBillPrice.toString(),
|
|
116
|
+
bonus,
|
|
117
|
+
bonusWithFee,
|
|
118
|
+
discount,
|
|
119
|
+
discountWithFee,
|
|
120
|
+
},
|
|
121
|
+
];
|
|
122
|
+
}
|
|
123
|
+
const cleanedData = {
|
|
124
|
+
...bill,
|
|
125
|
+
soldOut: paused[0] ? true : bill.soldOut,
|
|
126
|
+
feeInPayout,
|
|
127
|
+
feeInPrincipal,
|
|
128
|
+
showcaseTokenName: bill?.showcaseToken?.symbol ?? bill?.earnToken.symbol ?? '',
|
|
129
|
+
trueBondPrices,
|
|
130
|
+
principalTokenPrice: lpPrice?.toString(),
|
|
131
|
+
payoutTokenPrice: earnTokenPrice?.toString(),
|
|
132
|
+
tokensRemaining: treasuryBalance !== null
|
|
133
|
+
? Math.min(treasuryBalance, tokensRemaining).toString()
|
|
134
|
+
: tokensRemaining.toString(),
|
|
135
|
+
maxTotalPayout: maxTotalPayout?.toString(),
|
|
136
|
+
maxPayout: maxPayout?.toString(),
|
|
137
|
+
totalPayoutGiven: totalPayoutGiven?.toString(),
|
|
138
|
+
vestingTerm: typeof vestingTerm === 'number' ? vestingTerm : parseInt(vestingTerm),
|
|
139
|
+
tierBoostRate: bill.tierBoostRate === undefined ? 1 : bill.tierBoostRate,
|
|
140
|
+
};
|
|
141
|
+
return cleanedData;
|
|
142
|
+
}));
|
|
143
|
+
}
|
|
144
|
+
catch (e) {
|
|
145
|
+
console.error(e);
|
|
146
|
+
reportError({
|
|
147
|
+
apiUrl,
|
|
148
|
+
error: e,
|
|
149
|
+
extraInfo: { type: 'getBondsData', e },
|
|
150
|
+
});
|
|
151
|
+
return [];
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
|
|
155
|
+
export { fetchBondsDataEVM };
|
|
156
|
+
//# sourceMappingURL=fetchBondsDataEVM.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchBondsDataEVM.js","sources":["../../../src/adapters/evm/fetchBondsDataEVM.ts"],"sourcesContent":["import { BillsConfig, BillVersion, ChainId } from '@ape.swap/apeswap-lists'\nimport { TokenPrices } from '../../state/tokenPrices/useTokenPrices'\nimport multicall from './multicall'\nimport BOND_2_4_0 from '../../config/abi/BOND_2_4_0.json'\nimport ERC20ABI from '../../config/abi/erc20.json'\nimport chunk from 'lodash-es/chunk.js'\nimport {\n getBonusWithFee,\n getDiscountWithFee,\n getRawBonus,\n getRawDiscount,\n} from '../../state/bonds/fetchBondsData/bondPricing'\nimport { formatUnits } from '../../utils/fixedPoint'\nimport { getBalanceNumber } from '../../utils/getBalanceNumber'\nimport { BondsData, TrueBondPrices } from '../../types/bonds'\nimport { TIER_MAPPING } from '../../state/tiers/tiers'\nimport { resolveBondTokenPrices } from '../../state/tokenPrices/resolveTokenPrice'\n\nexport const fetchBondsDataEVM = async (\n chainId: number,\n bonds: BillsConfig[],\n apiUrl: string,\n tokenPrices?: TokenPrices[],\n) => {\n try {\n const bills = bonds.filter((b) => !b.soldOut)\n const billIds: number[] = []\n const billCalls = bills.flatMap((bill) => {\n billIds.push(bill.index)\n return [\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: bill.billVersion === BillVersion.V4 ? 'trueBondPrices' : 'trueBillPrice()',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'totalPayoutGiven',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'terms',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: bill.billVersion !== BillVersion.V1 ? 'getMaxTotalPayout' : 'maxTotalPayout',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'feeInPayout',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'feeInPrincipal',\n },\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'paused',\n },\n // keep custom treasury at the very last position\n {\n address: bill.contractAddress[bill.chainId] ?? '',\n name: 'customTreasury',\n },\n ]\n })\n const vals = await multicall(chainId, BOND_2_4_0, billCalls)\n\n // The following lines basically grab the values from customTreasury returned from bills contract and then,\n // appends the treasury contract's balance to each bill's chunk\n\n // appendIndex value assumes customTreasury will be at the end of the billCalls array\n const appendIndex = billCalls.length / bills.length\n const treasuryAddresses = vals\n .filter((_: any, i: number) => (i % appendIndex) + 1 === appendIndex)\n .map((customTreasury: string[]) => customTreasury[0])\n const treasuryBalanceCalls = treasuryAddresses.map((treasuryAddress: string, i: number) => ({\n address: bills?.[i]?.earnToken?.address?.[chainId as ChainId] ?? '',\n name: 'balanceOf',\n params: [treasuryAddress],\n }))\n const treasuryBalances = await multicall(chainId, ERC20ABI, treasuryBalanceCalls)\n const updatedVals = vals.reduce((acc: any, val: any, index: number) => {\n acc.push(val)\n if ((index + 1) % appendIndex === 0) {\n const pos = (index + 1) / appendIndex\n // balanceOf has a single output, so multicall wraps it as [balance] — unwrap it\n acc.push(treasuryBalances[pos - 1][0])\n }\n return acc\n }, [])\n\n const chunkSize = updatedVals?.length / bills?.length\n const chunkedBills = chunk(updatedVals, chunkSize)\n\n return await Promise.all(\n chunkedBills?.map(async (chunk, index) => {\n const bill = bills?.find((bill) => bill?.index === billIds[index]) as BillsConfig\n\n const { lpPrice, earnTokenPrice } = await resolveBondTokenPrices(bill, tokenPrices)\n\n const [\n trueBillPriceFromChunk,\n totalPayoutGiven,\n terms,\n maxTotalPayout,\n feeInPayoutRaw,\n feeInPrincipalRaw,\n paused,\n ,\n customTreasuryBalance,\n ] = chunk as any\n const trueBillPrice = trueBillPriceFromChunk\n\n const feeInPayout = Number(feeInPayoutRaw / 10000)\n const feeInPrincipal = Number(feeInPrincipalRaw / 10000)\n const tierBoostRate = bill.tierBoostRate === undefined ? 1 : bill.tierBoostRate\n const [, vestingTerm, , maxPayout] = terms\n const tokensRemaining = Number(\n formatUnits(\n BigInt(maxTotalPayout ?? '0') - BigInt(totalPayoutGiven),\n bill?.earnToken.decimals[bill?.chainId] ?? 18,\n ),\n )\n const treasuryBalance = customTreasuryBalance\n ? getBalanceNumber(customTreasuryBalance, bill?.earnToken?.decimals?.[bill?.chainId] ?? 18)\n : null\n\n let trueBondPrices: TrueBondPrices[] = []\n if (bill?.billVersion === BillVersion.V4) {\n trueBondPrices = trueBillPrice[0].map((data: any) => {\n return {\n points: data?.points?.toString(),\n trueBondPrice: data?.trueBondPrice.toString(),\n discount: getRawDiscount(data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),\n bonus: getRawBonus(data?.trueBondPrice.toString(), lpPrice, earnTokenPrice),\n discountWithFee: getDiscountWithFee(\n feeInPayout,\n tierBoostRate,\n data?.trueBondPrice.toString(),\n lpPrice,\n earnTokenPrice,\n ),\n bonusWithFee: getBonusWithFee(\n feeInPayout,\n tierBoostRate,\n data?.trueBondPrice.toString(),\n lpPrice,\n earnTokenPrice,\n ),\n boost: TIER_MAPPING[data?.points?.toString() as keyof typeof TIER_MAPPING],\n }\n })\n } else {\n const bonus = getRawBonus(trueBillPrice, lpPrice, earnTokenPrice)\n const bonusWithFee = getBonusWithFee(feeInPayout, tierBoostRate, trueBillPrice, lpPrice, earnTokenPrice)\n const discount = getRawDiscount(trueBillPrice, lpPrice, earnTokenPrice)\n const discountWithFee = getDiscountWithFee(feeInPayout, tierBoostRate, trueBillPrice, lpPrice, earnTokenPrice)\n trueBondPrices = [\n {\n points: '0',\n boost: 0,\n trueBondPrice: trueBillPrice.toString(),\n bonus,\n bonusWithFee,\n discount,\n discountWithFee,\n },\n ]\n }\n const cleanedData: BondsData = {\n ...bill,\n soldOut: paused[0] ? true : bill.soldOut,\n feeInPayout,\n feeInPrincipal,\n showcaseTokenName: bill?.showcaseToken?.symbol ?? bill?.earnToken.symbol ?? '',\n trueBondPrices,\n principalTokenPrice: lpPrice?.toString(),\n payoutTokenPrice: earnTokenPrice?.toString(),\n tokensRemaining:\n treasuryBalance !== null\n ? Math.min(treasuryBalance, tokensRemaining).toString()\n : tokensRemaining.toString(),\n maxTotalPayout: maxTotalPayout?.toString(),\n maxPayout: maxPayout?.toString(),\n totalPayoutGiven: totalPayoutGiven?.toString(),\n vestingTerm: typeof vestingTerm === 'number' ? vestingTerm : parseInt(vestingTerm),\n tierBoostRate: bill.tierBoostRate === undefined ? 1 : bill.tierBoostRate,\n }\n return cleanedData\n }),\n )\n } catch (e) {\n console.error(e)\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'getBondsData', e },\n })\n return []\n }\n}\n"],"names":["BOND_2_4_0","ERC20ABI"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { UserOwnedBillsData } from '
|
|
1
|
+
import { UserOwnedBillsData } from '../../types/yourbonds';
|
|
2
2
|
import { BillsConfig, ChainId } from '@ape.swap/apeswap-lists';
|
|
3
|
-
import { TokenPrices } from '../../tokenPrices/useTokenPrices';
|
|
3
|
+
import { TokenPrices } from '../../state/tokenPrices/useTokenPrices';
|
|
4
4
|
export declare const fetchUsersBondsEVM: (chainId: ChainId, account: string, bondData: BillsConfig[], tokenPrices: Partial<Record<ChainId, TokenPrices[]>>) => Promise<UserOwnedBillsData[]>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import billAbi from '
|
|
2
|
-
import multicall from '
|
|
1
|
+
import billAbi from '../../config/abi/BOND_2_0_0.json.js';
|
|
2
|
+
import multicall from './multicall.js';
|
|
3
3
|
import { BillVersion } from '@ape.swap/apeswap-lists';
|
|
4
|
-
import
|
|
5
|
-
import { PRICE_API_URL } from '
|
|
4
|
+
import { apiGet } from '../../utils/httpClient.js';
|
|
5
|
+
import { PRICE_API_URL } from '../../config/constants/variables.js';
|
|
6
6
|
|
|
7
7
|
const fetchUsersBondsEVM = async (chainId, account, bondData, tokenPrices) => {
|
|
8
8
|
try {
|
|
@@ -100,9 +100,9 @@ const fetchUserOwnedBills = async (chainId, account, bonds, tokenPrices) => {
|
|
|
100
100
|
let payoutTokenPrice = tokenPrices?.[bond.chainId]?.find((tokenPrice) => tokenPrice?.tokenAddress?.toLowerCase() === bond?.earnToken?.address?.[bond.chainId]?.toLowerCase())?.price;
|
|
101
101
|
if (principalTokenPrice === undefined) {
|
|
102
102
|
try {
|
|
103
|
-
const res = await
|
|
104
|
-
console.log('Individual call for: ', bond.lpToken.symbol, '. Price: ', res.
|
|
105
|
-
principalTokenPrice = parseFloat(res.
|
|
103
|
+
const res = await apiGet(`${PRICE_API_URL}/realtime/price?token=${bond?.lpToken?.address?.[bond?.chainId]}&chain=${bond?.chainId}`);
|
|
104
|
+
console.log('Individual call for: ', bond.lpToken.symbol, '. Price: ', res.price);
|
|
105
|
+
principalTokenPrice = parseFloat(res.price ?? '0');
|
|
106
106
|
}
|
|
107
107
|
catch {
|
|
108
108
|
principalTokenPrice = 0;
|
|
@@ -110,9 +110,9 @@ const fetchUserOwnedBills = async (chainId, account, bonds, tokenPrices) => {
|
|
|
110
110
|
}
|
|
111
111
|
if (payoutTokenPrice === undefined) {
|
|
112
112
|
try {
|
|
113
|
-
const res = await
|
|
114
|
-
console.log('Individual call for: ', bond.earnToken.symbol, '. Price: ', res.
|
|
115
|
-
payoutTokenPrice = parseFloat(res.
|
|
113
|
+
const res = await apiGet(`${PRICE_API_URL}/realtime/price?token=${bond?.earnToken?.address?.[bond?.chainId]}&chain=${bond?.chainId}`);
|
|
114
|
+
console.log('Individual call for: ', bond.earnToken.symbol, '. Price: ', res.price);
|
|
115
|
+
payoutTokenPrice = parseFloat(res.price ?? '0');
|
|
116
116
|
}
|
|
117
117
|
catch {
|
|
118
118
|
payoutTokenPrice = 0;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchUsersBondsEVM.js","sources":["../../../src/adapters/evm/fetchUsersBondsEVM.ts"],"sourcesContent":["import billAbi from '../../config/abi/BOND_2_0_0.json'\nimport multicall from './multicall'\nimport { UserBill, UserOwnedBillsData } from '../../types/yourbonds'\nimport { BillsConfig, BillVersion, ChainId } from '@ape.swap/apeswap-lists'\nimport { TokenPrices } from '../../state/tokenPrices/useTokenPrices'\nimport { BondsData } from '../../types/bonds'\nimport { apiGet } from '../../utils/httpClient'\nimport { PRICE_API_URL } from '../../config/constants/variables'\n\nexport const fetchUsersBondsEVM = async (\n chainId: ChainId,\n account: string,\n bondData: BillsConfig[],\n tokenPrices: Partial<Record<ChainId, TokenPrices[]>>,\n): Promise<UserOwnedBillsData[]> => {\n try {\n if (!account) {\n return []\n }\n const bonds: BillsConfig[] = bondData\n\n // Fetch and set user owned bill data without NFT Data\n const userOwnedBills = await fetchUserOwnedBills(chainId, account, bonds, tokenPrices)\n const mapUserOwnedBills = bonds.map((bill: BillsConfig) =>\n userOwnedBills.filter((b) => b.address.toLowerCase() === bill.contractAddress[bill.chainId]?.toLowerCase()),\n )\n const userOwnedBillsData = bonds.map((bill: BillsConfig, i: number) => ({\n index: bill.index,\n userOwnedBills: mapUserOwnedBills[i],\n }))\n\n const combinedData = userOwnedBillsData.map((data) => {\n const enrichedUserBills = data.userOwnedBills.map((bill) => {\n return {\n ...bill,\n }\n })\n return {\n ...data,\n userOwnedBills: enrichedUserBills,\n }\n })\n\n return Promise.resolve(combinedData)\n } catch (error) {\n console.error('Error fetching user owned bills data:', error)\n return Promise.reject(error)\n }\n}\n\nconst fetchUserOwnedBills = async (\n chainId: ChainId,\n account: string,\n bonds: BillsConfig[],\n tokenPrices: Partial<Record<ChainId, TokenPrices[]>>,\n): Promise<UserBill[]> => {\n // Maps all the bills in the list repo to make a call to each of them to get Bills Id and paused state (only for V4)\n const billIdAndPausedCalls = bonds.flatMap((b, index) => {\n const calls = [\n {\n address: b.contractAddress[b.chainId] ?? '',\n name: 'getBillIds',\n params: [account],\n bondIndex: index,\n },\n ]\n // Only add paused call for V4 bonds\n if (b.billVersion === BillVersion.V4) {\n calls.push({\n address: b.contractAddress[b.chainId] ?? '',\n name: 'paused',\n params: [],\n bondIndex: index,\n })\n }\n return calls\n })\n const billIdAndPausedResults = await multicall(chainId, billAbi, billIdAndPausedCalls, true, 15)\n\n // Separate billIds and pausedStates from results, tracking which bonds have paused calls\n const billIds: any[] = []\n const pausedStates: Map<string, boolean> = new Map()\n let resultIndex = 0\n\n bonds.forEach((b) => {\n // First result is always getBillIds\n billIds.push(billIdAndPausedResults?.[resultIndex])\n resultIndex++\n\n // Next result is paused only if V4\n if (b.billVersion === BillVersion.V4) {\n pausedStates.set(\n b.contractAddress[b.chainId]?.toLowerCase() as string,\n billIdAndPausedResults?.[resultIndex]?.[0] ?? false,\n )\n resultIndex++\n }\n })\n const billDataCalls: any = []\n const billVersions: any = []\n\n billIds?.forEach((idArray: any, index: number) =>\n idArray[0].forEach((id: bigint) => {\n if (id > 0) {\n billDataCalls.push({\n address: bonds[index].contractAddress[bonds[index].chainId],\n name: bonds[index].billVersion !== BillVersion.V1 ? 'getBillInfo' : 'billInfo',\n params: [id],\n bond: bonds[index],\n })\n billDataCalls.push({\n address: bonds[index].contractAddress[bonds[index].chainId],\n name: bonds[index].billVersion !== BillVersion.V1 ? 'claimablePayout' : 'pendingPayoutFor',\n params: [id],\n bond: bonds[index],\n })\n billVersions.push(bonds[index].billVersion)\n }\n }),\n )\n const billData = await multicall(chainId, billAbi, billDataCalls, true, 150)\n const result = []\n\n for (let i = 0; i < billVersions.length; i++) {\n const billPos = i === 0 ? 0 : i * 2\n let bond: BondsData = billDataCalls[billPos].bond\n\n let principalTokenPrice = tokenPrices?.[bond.chainId]?.find(\n (tokenPrice) => tokenPrice.tokenAddress?.toLowerCase() === bond?.lpToken?.address?.[bond.chainId]?.toLowerCase(),\n )?.price\n\n let payoutTokenPrice = tokenPrices?.[bond.chainId]?.find(\n (tokenPrice: TokenPrices) =>\n tokenPrice?.tokenAddress?.toLowerCase() === bond?.earnToken?.address?.[bond.chainId]?.toLowerCase(),\n )?.price\n\n if (principalTokenPrice === undefined) {\n try {\n const res = await apiGet<{ price: string }>(\n `${PRICE_API_URL}/realtime/price?token=${bond?.lpToken?.address?.[bond?.chainId]}&chain=${bond?.chainId}`,\n )\n console.log('Individual call for: ', bond.lpToken.symbol, '. Price: ', res.price)\n principalTokenPrice = parseFloat(res.price ?? '0')\n } catch {\n principalTokenPrice = 0\n }\n }\n if (payoutTokenPrice === undefined) {\n try {\n const res = await apiGet<{ price: string }>(\n `${PRICE_API_URL}/realtime/price?token=${bond?.earnToken?.address?.[bond?.chainId]}&chain=${bond?.chainId}`,\n )\n console.log('Individual call for: ', bond.earnToken.symbol, '. Price: ', res.price)\n payoutTokenPrice = parseFloat(res.price ?? '0')\n } catch {\n payoutTokenPrice = 0\n }\n }\n\n bond = {\n ...bond,\n payoutTokenPrice: payoutTokenPrice?.toString(),\n principalTokenPrice: principalTokenPrice?.toString(),\n }\n const paused = pausedStates.get(bond.contractAddress[bond.chainId]?.toLowerCase() as string) ?? false\n\n const data =\n billVersions[i] !== BillVersion.V1\n ? {\n address: billDataCalls[billPos].address,\n id: billDataCalls[billPos].params[0].toString(),\n payout: (\n BigInt(billData[billPos][0]?.payout.toString()) - BigInt(billData[billPos][0]?.payoutClaimed.toString())\n ).toString(),\n totalPayout: billData[billPos][0]?.payout.toString(),\n payoutClaimed: billData[billPos][0]?.payoutClaimed.toString(),\n billNftAddress: bond.billNnftAddress[bond.chainId] ?? '',\n vesting: billData[billPos][0]?.vesting.toString(),\n vestingTerm: billData[billPos][0]?.vestingTerm.toString(),\n lastBlockTimestamp: billData[billPos][0]?.lastClaimTimestamp.toString(),\n vestingStartTimestamp: billData[billPos][0]?.vestingStartTimestamp.toString(),\n truePricePaid: billData[billPos][0]?.truePricePaid.toString(),\n pendingRewards: billData[billPos + 1][0].toString(),\n paused,\n bond,\n }\n : {\n address: billDataCalls[billPos].address,\n id: billDataCalls[billPos].params[0].toString(),\n payoutClaimed: billData?.[billPos]?.[0]?.payoutClaimed?.toString(),\n payout: billData[billPos][0].toString(),\n billNftAddress: bond.billNnftAddress[bond.chainId] ?? '',\n vesting: billData[billPos][1].toString(),\n lastBlockTimestamp: billData[billPos][2].toString(),\n truePricePaid: billData[billPos][3].toString(),\n pendingRewards: billData[billPos + 1][0].toString(),\n paused,\n bond,\n }\n result.push(data)\n }\n\n return result\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ChainId } from '@ape.swap/apeswap-lists';
|
|
2
|
+
import lensContractABI from '../../config/abi/lensContract.json.js';
|
|
3
|
+
import { LENS_CONTRACT } from '../../config/constants/addresses.js';
|
|
4
|
+
import { reportError } from '../../utils/reportError.js';
|
|
5
|
+
import { TIERS_WEIGHT, NO_TIER_POINTS } from '../../state/tiers/tiers.js';
|
|
6
|
+
import multicall from './multicall.js';
|
|
7
|
+
|
|
8
|
+
/** Tier points of an EVM address: escrow weight on the BSC lens contract, or its best promotion if that's higher. */
|
|
9
|
+
const getTierPoints = async (account, apiUrl) => {
|
|
10
|
+
try {
|
|
11
|
+
const res = await multicall(ChainId.BSC, lensContractABI, [
|
|
12
|
+
{
|
|
13
|
+
address: LENS_CONTRACT,
|
|
14
|
+
name: 'getEscrowWeight',
|
|
15
|
+
params: [account],
|
|
16
|
+
},
|
|
17
|
+
]);
|
|
18
|
+
const onChainPoints = BigInt(res[0][0].toString()) * 2n;
|
|
19
|
+
const promotionsData = await fetch(`${apiUrl}/tier-promotion?user=${account}`)
|
|
20
|
+
.then((res) => res.json())
|
|
21
|
+
.then((data) => data)
|
|
22
|
+
.catch((err) => {
|
|
23
|
+
console.error('Error fetching promotions:', err);
|
|
24
|
+
return {};
|
|
25
|
+
});
|
|
26
|
+
const promotionalTier = promotionsData?.bestPromotion?.tier;
|
|
27
|
+
const bestPromotionPoints = BigInt(promotionalTier ? TIERS_WEIGHT[promotionalTier] : 0);
|
|
28
|
+
return {
|
|
29
|
+
onChainPoints: onChainPoints.toString(),
|
|
30
|
+
promotionalPoints: bestPromotionPoints > onChainPoints ? bestPromotionPoints.toString() : onChainPoints.toString(),
|
|
31
|
+
promotion: bestPromotionPoints > onChainPoints ? promotionsData?.bestPromotion?.promotion : null,
|
|
32
|
+
eligibleChains: promotionsData?.bestPromotion?.eligibleChains || undefined,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
catch (e) {
|
|
36
|
+
console.error(e);
|
|
37
|
+
reportError({
|
|
38
|
+
apiUrl,
|
|
39
|
+
error: e,
|
|
40
|
+
extraInfo: { type: 'fetchUserPoints', e },
|
|
41
|
+
account,
|
|
42
|
+
});
|
|
43
|
+
return NO_TIER_POINTS;
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
export { getTierPoints };
|
|
48
|
+
//# sourceMappingURL=getTierPoints.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getTierPoints.js","sources":["../../../src/adapters/evm/getTierPoints.ts"],"sourcesContent":["import { ChainId, LaunchBondTiers } from '@ape.swap/apeswap-lists'\nimport lensContractABI from '../../config/abi/lensContract.json'\nimport { LENS_CONTRACT } from '../../config/constants/addresses'\nimport { reportError } from '../../utils/reportError'\nimport { NO_TIER_POINTS, TIERS_WEIGHT, TierPoints } from '../../state/tiers/tiers'\nimport multicall from './multicall'\n\n/** Tier points of an EVM address: escrow weight on the BSC lens contract, or its best promotion if that's higher. */\nexport const getTierPoints = async (account: string, apiUrl: string): Promise<TierPoints> => {\n try {\n const res = await multicall(ChainId.BSC, lensContractABI, [\n {\n address: LENS_CONTRACT,\n name: 'getEscrowWeight',\n params: [account],\n },\n ])\n const onChainPoints = BigInt(res[0][0].toString()) * 2n\n\n const promotionsData = await fetch(`${apiUrl}/tier-promotion?user=${account}`)\n .then((res) => res.json())\n .then((data) => data)\n .catch((err) => {\n console.error('Error fetching promotions:', err)\n return {}\n })\n const promotionalTier: LaunchBondTiers | null = promotionsData?.bestPromotion?.tier\n\n const bestPromotionPoints = BigInt(promotionalTier ? TIERS_WEIGHT[promotionalTier] : 0)\n\n return {\n onChainPoints: onChainPoints.toString(),\n promotionalPoints:\n bestPromotionPoints > onChainPoints ? bestPromotionPoints.toString() : onChainPoints.toString(),\n promotion: bestPromotionPoints > onChainPoints ? promotionsData?.bestPromotion?.promotion : null,\n eligibleChains: promotionsData?.bestPromotion?.eligibleChains || undefined,\n }\n } catch (e) {\n console.error(e)\n reportError({\n apiUrl,\n error: e,\n extraInfo: { type: 'fetchUserPoints', e },\n account,\n })\n return NO_TIER_POINTS\n }\n}\n"],"names":[],"mappings":";;;;;;;AAOA;AACO,MAAM,aAAa,GAAG,OAAO,OAAe,EAAE,MAAc,KAAyB;AAC1F,IAAA,IAAI;QACF,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,eAAe,EAAE;AACxD,YAAA;AACE,gBAAA,OAAO,EAAE,aAAa;AACtB,gBAAA,IAAI,EAAE,iBAAiB;gBACvB,MAAM,EAAE,CAAC,OAAO,CAAC;AAClB,aAAA;AACF,SAAA,CAAC;AACF,QAAA,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE;QAEvD,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,CAAA,qBAAA,EAAwB,OAAO,CAAA,CAAE;aAC1E,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,EAAE;AACxB,aAAA,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI;AACnB,aAAA,KAAK,CAAC,CAAC,GAAG,KAAI;AACb,YAAA,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,CAAC;AAChD,YAAA,OAAO,EAAE;AACX,QAAA,CAAC,CAAC;AACJ,QAAA,MAAM,eAAe,GAA2B,cAAc,EAAE,aAAa,EAAE,IAAI;AAEnF,QAAA,MAAM,mBAAmB,GAAG,MAAM,CAAC,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAEvF,OAAO;AACL,YAAA,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE;AACvC,YAAA,iBAAiB,EACf,mBAAmB,GAAG,aAAa,GAAG,mBAAmB,CAAC,QAAQ,EAAE,GAAG,aAAa,CAAC,QAAQ,EAAE;AACjG,YAAA,SAAS,EAAE,mBAAmB,GAAG,aAAa,GAAG,cAAc,EAAE,aAAa,EAAE,SAAS,GAAG,IAAI;AAChG,YAAA,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,IAAI,SAAS;SAC3E;IACH;IAAE,OAAO,CAAC,EAAE;AACV,QAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AAChB,QAAA,WAAW,CAAC;YACV,MAAM;AACN,YAAA,KAAK,EAAE,CAAC;AACR,YAAA,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,EAAE;YACzC,OAAO;AACR,SAAA,CAAC;AACF,QAAA,OAAO,cAAc;IACvB;AACF;;;;"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ChainAdapter } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* EVM bonds (every chain that isn't Solana, Aptos or Sui), plus tiers and PreTGE / launch / Yield bonds. Requires
|
|
4
|
+
* `wagmi` and `viem`, and the consumer must mount a `WagmiProvider` (see docs/PLAN_CHAIN_ADAPTERS.md, section 3.2).
|
|
5
|
+
*/
|
|
6
|
+
export declare const evmAdapter: ChainAdapter;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { ChainId } from '@ape.swap/apeswap-lists';
|
|
2
|
+
import EvmAccountBridge from './EvmAccountBridge.js';
|
|
3
|
+
import { fetchBondsDataEVM } from './fetchBondsDataEVM.js';
|
|
4
|
+
import { fetchUsersBondsEVM } from './fetchUsersBondsEVM.js';
|
|
5
|
+
import { getTokensBalanceEVM, getTokenBalanceEVM } from './balances.js';
|
|
6
|
+
import { getTierPoints } from './getTierPoints.js';
|
|
7
|
+
import BuyComponent from './BuyComponent.js';
|
|
8
|
+
import UserBondRow from './UserBondRow.js';
|
|
9
|
+
import Actions from './Actions.js';
|
|
10
|
+
import TransferAction from './TransferAction.js';
|
|
11
|
+
import ClaimAllActionEVM from './ClaimAllActionEVM.js';
|
|
12
|
+
import ConnectToEVMBanner from './ConnectToEvmBanner.js';
|
|
13
|
+
import { fetchBondsDataPreTGE } from './preTGE/fetchBondsDataPreTGE.js';
|
|
14
|
+
import { fetchUserBondsPreTGE } from './preTGE/fetchUserBondsPreTGE.js';
|
|
15
|
+
import ModalHandlerPreTGE from './preTGE/ModalHandlerPreTGE.js';
|
|
16
|
+
import UserBondRowPreTGE from './preTGE/UserBondRowPreTGE.js';
|
|
17
|
+
import UserBondRowYield from './preTGE/UserBondRowYield.js';
|
|
18
|
+
|
|
19
|
+
const NON_EVM_CHAINS = [ChainId.SOL, ChainId.APTOS, ChainId.SUI];
|
|
20
|
+
/**
|
|
21
|
+
* EVM bonds (every chain that isn't Solana, Aptos or Sui), plus tiers and PreTGE / launch / Yield bonds. Requires
|
|
22
|
+
* `wagmi` and `viem`, and the consumer must mount a `WagmiProvider` (see docs/PLAN_CHAIN_ADAPTERS.md, section 3.2).
|
|
23
|
+
*/
|
|
24
|
+
const evmAdapter = {
|
|
25
|
+
ecosystem: 'evm',
|
|
26
|
+
supportsChain: (chainId) => !NON_EVM_CHAINS.includes(chainId),
|
|
27
|
+
AccountBridge: EvmAccountBridge,
|
|
28
|
+
// EVM bonds come from the realtime API; fetchBondsData is only the on-chain (multicall) fallback. Bills are
|
|
29
|
+
// enriched with api-v2 NFT metadata.
|
|
30
|
+
usesRealtimeApi: true,
|
|
31
|
+
fetchBondsData: (chainId, bonds, tokenPrices, apiUrl) => fetchBondsDataEVM(chainId, bonds, apiUrl, tokenPrices),
|
|
32
|
+
fetchUserBonds: (chainId, account, bonds, tokenPrices) => fetchUsersBondsEVM(chainId, account, bonds, tokenPrices),
|
|
33
|
+
enrichUserBondsViaApi: true,
|
|
34
|
+
getTokenBalance: getTokenBalanceEVM,
|
|
35
|
+
getTokensBalances: getTokensBalanceEVM,
|
|
36
|
+
BuyComponent,
|
|
37
|
+
UserBondRow,
|
|
38
|
+
BondActions: Actions,
|
|
39
|
+
TransferAction,
|
|
40
|
+
ClaimAllAction: ClaimAllActionEVM,
|
|
41
|
+
ConnectBanner: ConnectToEVMBanner,
|
|
42
|
+
getTierPoints,
|
|
43
|
+
preTGE: {
|
|
44
|
+
fetchBondsData: fetchBondsDataPreTGE,
|
|
45
|
+
fetchUserBonds: fetchUserBondsPreTGE,
|
|
46
|
+
ModalHandler: ModalHandlerPreTGE,
|
|
47
|
+
UserBondRow: UserBondRowPreTGE,
|
|
48
|
+
YieldRow: UserBondRowYield,
|
|
49
|
+
},
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
export { evmAdapter };
|
|
53
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/adapters/evm/index.ts"],"sourcesContent":["import { ChainId } from '@ape.swap/apeswap-lists'\nimport type { ChainAdapter } from '../types'\nimport EvmAccountBridge from './EvmAccountBridge'\nimport { fetchBondsDataEVM } from './fetchBondsDataEVM'\nimport { fetchUsersBondsEVM } from './fetchUsersBondsEVM'\nimport { getTokenBalanceEVM, getTokensBalanceEVM } from './balances'\nimport { getTierPoints } from './getTierPoints'\nimport BuyComponent from './BuyComponent'\nimport UserBondRow from './UserBondRow'\nimport Actions from './Actions'\nimport TransferAction from './TransferAction'\nimport ClaimAllActionEVM from './ClaimAllActionEVM'\nimport ConnectToEVMBanner from './ConnectToEvmBanner'\nimport { fetchBondsDataPreTGE } from './preTGE/fetchBondsDataPreTGE'\nimport { fetchUserBondsPreTGE } from './preTGE/fetchUserBondsPreTGE'\nimport ModalHandlerPreTGE from './preTGE/ModalHandlerPreTGE'\nimport UserBondRowPreTGE from './preTGE/UserBondRowPreTGE'\nimport UserBondRowYield from './preTGE/UserBondRowYield'\n\nconst NON_EVM_CHAINS: ChainId[] = [ChainId.SOL, ChainId.APTOS, ChainId.SUI]\n\n/**\n * EVM bonds (every chain that isn't Solana, Aptos or Sui), plus tiers and PreTGE / launch / Yield bonds. Requires\n * `wagmi` and `viem`, and the consumer must mount a `WagmiProvider` (see docs/PLAN_CHAIN_ADAPTERS.md, section 3.2).\n */\nexport const evmAdapter: ChainAdapter = {\n ecosystem: 'evm',\n supportsChain: (chainId) => !NON_EVM_CHAINS.includes(chainId),\n AccountBridge: EvmAccountBridge,\n\n // EVM bonds come from the realtime API; fetchBondsData is only the on-chain (multicall) fallback. Bills are\n // enriched with api-v2 NFT metadata.\n usesRealtimeApi: true,\n fetchBondsData: (chainId, bonds, tokenPrices, apiUrl) => fetchBondsDataEVM(chainId, bonds, apiUrl, tokenPrices),\n fetchUserBonds: (chainId, account, bonds, tokenPrices) => fetchUsersBondsEVM(chainId, account, bonds, tokenPrices),\n enrichUserBondsViaApi: true,\n getTokenBalance: getTokenBalanceEVM,\n getTokensBalances: getTokensBalanceEVM,\n\n BuyComponent,\n UserBondRow,\n BondActions: Actions,\n TransferAction,\n ClaimAllAction: ClaimAllActionEVM,\n ConnectBanner: ConnectToEVMBanner,\n\n getTierPoints,\n preTGE: {\n fetchBondsData: fetchBondsDataPreTGE,\n fetchUserBonds: fetchUserBondsPreTGE,\n ModalHandler: ModalHandlerPreTGE,\n UserBondRow: UserBondRowPreTGE,\n YieldRow: UserBondRowYield,\n },\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAmBA,MAAM,cAAc,GAAc,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC;AAE3E;;;AAGG;AACI,MAAM,UAAU,GAAiB;AACtC,IAAA,SAAS,EAAE,KAAK;AAChB,IAAA,aAAa,EAAE,CAAC,OAAO,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC;AAC7D,IAAA,aAAa,EAAE,gBAAgB;;;AAI/B,IAAA,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC;IAC/G,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,KAAK,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC;AAClH,IAAA,qBAAqB,EAAE,IAAI;AAC3B,IAAA,eAAe,EAAE,kBAAkB;AACnC,IAAA,iBAAiB,EAAE,mBAAmB;IAEtC,YAAY;IACZ,WAAW;AACX,IAAA,WAAW,EAAE,OAAO;IACpB,cAAc;AACd,IAAA,cAAc,EAAE,iBAAiB;AACjC,IAAA,aAAa,EAAE,kBAAkB;IAEjC,aAAa;AACb,IAAA,MAAM,EAAE;AACN,QAAA,cAAc,EAAE,oBAAoB;AACpC,QAAA,cAAc,EAAE,oBAAoB;AACpC,QAAA,YAAY,EAAE,kBAAkB;AAChC,QAAA,WAAW,EAAE,iBAAiB;AAC9B,QAAA,QAAQ,EAAE,gBAAgB;AAC3B,KAAA;;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { createPublicClient, http, encodeFunctionData, decodeFunctionResult } from 'viem';
|
|
2
|
-
import multicallV2Abi from '
|
|
2
|
+
import multicallV2Abi from '../../config/abi/multicallv2.json.js';
|
|
3
3
|
import chunk from 'lodash-es/chunk.js';
|
|
4
4
|
import flatten from 'lodash-es/flatten.js';
|
|
5
|
-
import { getRPC } from '
|
|
6
|
-
import { MULTICALL_V2 } from '
|
|
5
|
+
import { getRPC } from '../../config/constants/networks.js';
|
|
6
|
+
import { MULTICALL_V2 } from '../../config/constants/addresses.js';
|
|
7
7
|
import { ChainId } from '@ape.swap/apeswap-lists';
|
|
8
8
|
|
|
9
9
|
// Wraps decoded result in an array when the function has a single output,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multicall.js","sources":["../../../src/adapters/evm/multicall.ts"],"sourcesContent":["import {\n createPublicClient,\n http,\n encodeFunctionData,\n decodeFunctionResult,\n type Abi,\n type Address,\n type AbiFunction,\n} from 'viem'\nimport multicallV2Abi from '../../config/abi/multicallv2.json'\nimport chunk from 'lodash-es/chunk.js'\nimport flatten from 'lodash-es/flatten.js'\nimport { getRPC } from '../../config/constants/networks'\nimport { MULTICALL_V2 } from '../../config/constants/addresses'\nimport { ChainId } from '@ape.swap/apeswap-lists'\n\nexport interface Call {\n address: string // Address of the contract\n name: string // Function name on the contract (exemple: balanceOf)\n params?: any[] // Function params\n}\n\n// Wraps decoded result in an array when the function has a single output,\n// matching ethers v5 Result behavior so consuming code doesn't need to change.\n// Multi-output functions already return an array from viem, so they're left as-is.\nconst decodeResult = (abi: Abi, functionName: string, data: `0x${string}`) => {\n const decoded = decodeFunctionResult({ abi, functionName, data })\n const fn = abi.find((item): item is AbiFunction => item.type === 'function' && item.name === functionName)\n return fn?.outputs?.length === 1 ? [decoded] : decoded\n}\n\nconst multicall = async (\n chainId: number,\n abi: any[],\n calls: Call[],\n batch?: boolean,\n batchSize?: number,\n): Promise<any> => {\n try {\n if (chainId === ChainId.SOL) return\n\n const multicallAddress = MULTICALL_V2[chainId] as Address\n const client = createPublicClient({\n transport: http(getRPC(chainId as ChainId)),\n })\n\n const calldata = calls.map((call) => ({\n target: call.address.toLowerCase() as Address,\n callData: encodeFunctionData({ abi: abi as Abi, functionName: call.name, args: call.params }),\n }))\n\n const aggregate = async (calldataChunk: typeof calldata, callsChunk: Call[]) => {\n const [, returnData] = (await client.readContract({\n address: multicallAddress,\n abi: multicallV2Abi as Abi,\n functionName: 'aggregate',\n args: [calldataChunk],\n })) as [bigint, readonly `0x${string}`[]]\n\n return returnData.map((data, i) => decodeResult(abi as Abi, callsChunk[i].name, data))\n }\n\n if (batch) {\n const chunkedCalldata = chunk(calldata, batchSize)\n const chunkedCalls = chunk(calls, batchSize)\n const results = await Promise.all(chunkedCalls.map((callsChunk, i) => aggregate(chunkedCalldata[i], callsChunk)))\n return flatten(results)\n } else {\n return aggregate(calldata, calls)\n }\n } catch (e) {\n console.error(e)\n console.error(chainId)\n console.error(calls)\n }\n}\n\nexport default multicall\n"],"names":[],"mappings":";;;;;;;;AAsBA;AACA;AACA;AACA,MAAM,YAAY,GAAG,CAAC,GAAQ,EAAE,YAAoB,EAAE,IAAmB,KAAI;AAC3E,IAAA,MAAM,OAAO,GAAG,oBAAoB,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACjE,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,KAA0B,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;AAC1G,IAAA,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,OAAO;AACxD,CAAC;AAED,MAAM,SAAS,GAAG,OAChB,OAAe,EACf,GAAU,EACV,KAAa,EACb,KAAe,EACf,SAAkB,KACF;AAChB,IAAA,IAAI;AACF,QAAA,IAAI,OAAO,KAAK,OAAO,CAAC,GAAG;YAAE;AAE7B,QAAA,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAY;QACzD,MAAM,MAAM,GAAG,kBAAkB,CAAC;AAChC,YAAA,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,OAAkB,CAAC,CAAC;AAC5C,SAAA,CAAC;QAEF,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM;AACpC,YAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAa;YAC7C,QAAQ,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,GAAU,EAAE,YAAY,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;AAC9F,SAAA,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,OAAO,aAA8B,EAAE,UAAkB,KAAI;YAC7E,MAAM,GAAG,UAAU,CAAC,IAAI,MAAM,MAAM,CAAC,YAAY,CAAC;AAChD,gBAAA,OAAO,EAAE,gBAAgB;AACzB,gBAAA,GAAG,EAAE,cAAqB;AAC1B,gBAAA,YAAY,EAAE,WAAW;gBACzB,IAAI,EAAE,CAAC,aAAa,CAAC;AACtB,aAAA,CAAC,CAAuC;YAEzC,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,YAAY,CAAC,GAAU,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACxF,QAAA,CAAC;QAED,IAAI,KAAK,EAAE;YACT,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC;YAClD,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC;AAC5C,YAAA,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,KAAK,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;AACjH,YAAA,OAAO,OAAO,CAAC,OAAO,CAAC;QACzB;aAAO;AACL,YAAA,OAAO,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC;QACnC;IACF;IAAE,OAAO,CAAC,EAAE;AACV,QAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AAChB,QAAA,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;AACtB,QAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;IACtB;AACF;;;;"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
declare const BuyComponentPreTGE: ({ bondAddress, bondChain, onDismiss, handlePurchasedBond, }: {
|
|
3
2
|
bondAddress: string;
|
|
4
3
|
bondChain: number;
|
|
5
4
|
onDismiss?: () => void;
|
|
6
5
|
handlePurchasedBond: (hash: string, inputAmount: string) => void;
|
|
7
|
-
}) =>
|
|
6
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
8
7
|
export default BuyComponentPreTGE;
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { getBalanceNumber } from '../../../utils/getBalanceNumber.js';
|
|
4
|
+
import { parseUnits, mulDivRound } from '../../../utils/fixedPoint.js';
|
|
5
|
+
import TokenSelectorPanel from '../../../components/TokenSelectorPanel/index.js';
|
|
6
|
+
import useCurrencyBalance from '../../../state/balance/useCurrencyBalance.js';
|
|
7
|
+
import { useWriteContract } from 'wagmi';
|
|
8
|
+
import TokenImage from '../../../components/uikit-sdk/TokenImage/index.js';
|
|
9
|
+
import ModalHeader from '../../../components/uikit-sdk/Modal/ModalHeader.js';
|
|
10
|
+
import ProjectDescription from '../../../views/BuyBond/components/ProjectDescription.js';
|
|
11
|
+
import { TooltipText } from '../../../config/constants/tooltips.js';
|
|
12
|
+
import { formatNumberSI } from '../../../utils/formatNumber.js';
|
|
13
|
+
import BondCardsPreTGE from '../../../views/BuyBond/components/BondCards/BondCardsPreTGE.js';
|
|
14
|
+
import useBondsData from '../../../state/bonds/useBondsData.js';
|
|
15
|
+
import useModal from '../../../hooks/useModal.js';
|
|
16
|
+
import TransactionModal from '../TransactionModal.js';
|
|
17
|
+
import { useApproval } from '../useAllowance.js';
|
|
18
|
+
import LaunchBondABI_V_2_4_1 from '../../../config/abi/launchBond_v2_4_1.json.js';
|
|
19
|
+
import ConnectButton from '../../../components/ConnectButton/index.js';
|
|
20
|
+
import track from '../../../utils/track.js';
|
|
21
|
+
import useEVMAccount from '../useEVMAccount.js';
|
|
22
|
+
import { useSDKConfig } from '../../../state/useSDKConfig.js';
|
|
23
|
+
import Modal from '../../../components/uikit-sdk/Modal/index.js';
|
|
24
|
+
import Flex from '../../../components/uikit-sdk/Flex/index.js';
|
|
25
|
+
import Text from '../../../components/uikit-sdk/Text/index.js';
|
|
26
|
+
import ListTag from '../../../components/uikit-sdk/Tag/ListTag.js';
|
|
27
|
+
import TooltipBubble from '../../../components/uikit-sdk/TooltipBubble/index.js';
|
|
28
|
+
import Button from '../../../components/uikit-sdk/Button/Button.js';
|
|
29
|
+
import { getTimePeriods } from '../../../utils/getTimePeriods.js';
|
|
30
|
+
import QuestionCircle from '../../../components/uikit-sdk/Svg/Icons/QuestionCircle.js';
|
|
31
|
+
|
|
32
|
+
const infoRowClasses = 'ape:w-full ape:justify-between';
|
|
33
|
+
const infoTitleClasses = 'ape:font-normal';
|
|
34
|
+
const infoDataClasses = 'ape:font-bold';
|
|
35
|
+
const BuyComponentPreTGE = ({ bondAddress, bondChain, onDismiss, handlePurchasedBond, }) => {
|
|
36
|
+
const SDKConfig = useSDKConfig();
|
|
37
|
+
const { data: preTGEBonds } = useBondsData();
|
|
38
|
+
const bond = preTGEBonds?.find((bond) => bond.contractAddress?.[bond.chainId]?.toLowerCase() === bondAddress.toLowerCase() && bond.chainId === bondChain);
|
|
39
|
+
// Hooks
|
|
40
|
+
const { address } = useEVMAccount();
|
|
41
|
+
const { data: principalTokenBalance } = useCurrencyBalance(bond.lpToken, address, bond.chainId);
|
|
42
|
+
// Local state
|
|
43
|
+
const [inputValue, setInputValue] = useState('');
|
|
44
|
+
// Display Values
|
|
45
|
+
const raiseGoal = getBalanceNumber(bond?.totalRaise ?? '0', 18);
|
|
46
|
+
const totalPrincipalBilled = getBalanceNumber(bond?.totalPrincipalBilled ?? '0', 18);
|
|
47
|
+
const percentageSold = (totalPrincipalBilled * 100) / raiseGoal;
|
|
48
|
+
const tgePrice = bond?.tgePrice ?? 0;
|
|
49
|
+
const initPrice = bond?.initPrice ?? 0;
|
|
50
|
+
const inputValueToDisplay = parseFloat(inputValue).toFixed(2);
|
|
51
|
+
const inputValueToDisplayUSD = parseFloat(inputValueToDisplay) * parseFloat(bond?.principalTokenPrice ?? '0');
|
|
52
|
+
const youGet = parseFloat(inputValue) / initPrice;
|
|
53
|
+
const youGetUSD = youGet * tgePrice;
|
|
54
|
+
const bonusUSD = youGetUSD - inputValueToDisplayUSD;
|
|
55
|
+
const apr = bond.yieldData?.apr ?? 0;
|
|
56
|
+
const aprUSD = inputValueToDisplayUSD * (apr / 100);
|
|
57
|
+
const handleClose = () => {
|
|
58
|
+
if (typeof window !== 'undefined') {
|
|
59
|
+
window.history.pushState({}, '', `/bonds`);
|
|
60
|
+
}
|
|
61
|
+
onDismiss?.();
|
|
62
|
+
};
|
|
63
|
+
const [loading, setLoading] = useState(false);
|
|
64
|
+
const [buyTxHash, setHash] = useState('');
|
|
65
|
+
// Approve logic
|
|
66
|
+
const [approvalState, approveCallback] = useApproval(inputValue, bond.lpToken, bond?.contractAddress[bond.chainId], address, bond.chainId);
|
|
67
|
+
const handleApprove = async () => {
|
|
68
|
+
return approveCallback().then(() => {
|
|
69
|
+
track({
|
|
70
|
+
event: 'approveBondClick',
|
|
71
|
+
chain: bondChain,
|
|
72
|
+
data: {
|
|
73
|
+
cat: bond?.billType,
|
|
74
|
+
bond: bond?.earnToken.symbol,
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
const { writeContractAsync } = useWriteContract();
|
|
80
|
+
const onBuyBill = async () => {
|
|
81
|
+
setLoading(true);
|
|
82
|
+
const amount = parseUnits(inputValue, bond?.lpToken?.decimals?.[bond?.chainId] ?? 18).toString();
|
|
83
|
+
const maxPrice = mulDivRound(BigInt(bond?.trueBondPrices?.[0].trueBondPrice ?? '0'), 102n, 100n, 'halfUp').toString();
|
|
84
|
+
const args = [amount, maxPrice, address];
|
|
85
|
+
await writeContractAsync({
|
|
86
|
+
address: bond?.contractAddress?.[bond.chainId],
|
|
87
|
+
abi: LaunchBondABI_V_2_4_1,
|
|
88
|
+
functionName: 'deposit',
|
|
89
|
+
args: args,
|
|
90
|
+
chain: bond.chainId,
|
|
91
|
+
account: address,
|
|
92
|
+
})
|
|
93
|
+
.then((hash) => {
|
|
94
|
+
setHash(hash);
|
|
95
|
+
handlePurchasedBond(hash, inputValue);
|
|
96
|
+
})
|
|
97
|
+
.finally(() => {
|
|
98
|
+
setLoading(false);
|
|
99
|
+
});
|
|
100
|
+
};
|
|
101
|
+
const [openTxModal] = useModal(jsx(TransactionModal, { txChain: bondChain, approvalState: approvalState, approveCallback: handleApprove, loadingTx: loading, txCallback: onBuyBill, bondData: bond, inputToken: bond.lpToken, inputValue: inputValue, depositAmount: inputValue, buyTxHash: buyTxHash, rateChanged: false }), false, true, 'transactionModal');
|
|
102
|
+
const { data: currencyBalanceString } = useCurrencyBalance(bond.lpToken, address, bond.chainId);
|
|
103
|
+
const exceedsBalance = parseFloat(inputValue) > parseFloat(currencyBalanceString ?? '0');
|
|
104
|
+
const saleStartTime = (bond?.initTime?.[bond.chainId] ?? 0) * 1000;
|
|
105
|
+
const saleFinishTime = (bond?.finishTime ?? 0) * 1000;
|
|
106
|
+
const now = new Date().getTime();
|
|
107
|
+
const saleHasStarted = now > saleStartTime;
|
|
108
|
+
const saleHasFinished = now > saleFinishTime || bond.finalized;
|
|
109
|
+
const error = SDKConfig.blockSales
|
|
110
|
+
? 'Complete KYC to Buy'
|
|
111
|
+
: !saleHasStarted
|
|
112
|
+
? `Sale hasn't started`
|
|
113
|
+
: saleHasFinished
|
|
114
|
+
? 'Sale Finished'
|
|
115
|
+
: exceedsBalance
|
|
116
|
+
? 'Exceeds balance'
|
|
117
|
+
: percentageSold > 99.9
|
|
118
|
+
? 'Soldout'
|
|
119
|
+
: !inputValue || parseFloat(inputValue) === 0
|
|
120
|
+
? 'Insert amount'
|
|
121
|
+
: !bond
|
|
122
|
+
? 'no bond'
|
|
123
|
+
: null;
|
|
124
|
+
return (jsxs(Modal, { onDismiss: handleClose, className: "ape:w-[740px]!", children: [jsx(ModalHeader, { onDismiss: handleClose, hideDivider: true }), jsx(Flex, { className: "ape:w-full ape:mb-[30px] ape:lg:mb-0 ape:flex-col", children: jsxs(Flex, { className: "ape:w-full ape:bg-white2 ape:rounded-normal ape:flex-col", children: [jsx(Flex, { className: "ape:w-full ape:justify-between", children: jsxs(Flex, { children: [jsxs(Flex, { children: [jsx(Flex, { className: "title-container bondicon ape:flex ape:flex-row ape:items-center ape:relative", children: jsx(TokenImage, { symbol: bond.underlyingEarnToken?.symbol || bond.earnToken.symbol, size: 50, chain: bond.chainId }) }), jsxs(Flex, { className: "title-container bondname ape:flex ape:flex-col ape:pl-[20px] ape:text-[24px] ape:font-bold", children: [bond.underlyingEarnToken?.symbol || bond.earnToken.symbol, jsx(ListTag, { text: bond?.tags?.[0] })] })] }), !bond.yieldBond && (jsxs(Flex, { className: "ape:flex-col ape:ml-[15px]", children: [jsxs(Flex, { className: "price-container price ape:line-through ape:opacity-50 ape:font-normal", children: ["$", bond.tgePrice] }), jsxs(Flex, { className: "ape:text-[24px] ape:font-bold", children: ["$", bond.initPrice] })] }))] }) }), jsx(ProjectDescription, { description: bond.shortDescription, isProjectView: true }), jsx(BondCardsPreTGE, { bond: bond }), jsxs(Flex, { className: "ape:w-full ape:flex-col ape:mb-[10px] ape:mt-[10px]", children: [jsxs(Flex, { className: infoRowClasses, children: [jsx(Text, { size: "12px", className: infoTitleClasses, children: "You Spend:" }), jsxs(Text, { size: "12px", className: infoDataClasses, children: [isNaN(parseFloat(inputValueToDisplay)) ? 0 : inputValueToDisplay, " ", bond?.lpToken.symbol, " = $", isNaN(inputValueToDisplayUSD) ? '0' : inputValueToDisplayUSD.toFixed(2)] })] }), bond.yieldBond ? (jsxs(Flex, { className: infoRowClasses, children: [jsxs(Flex, { className: `${infoTitleClasses} ape:items-center`, children: ["Yield Bonus:", jsx(TooltipBubble, { className: "tooltip-bubble", body: jsx(Flex, { children: "This is the duration over which the bonus yield will be distributed while your initial tokens remain staked." }), width: "230px", placement: "bottomLeft", transformTip: "translate(-5%, 0%)", children: jsx(Flex, { className: "row-container premium-icon ape:flex ape:font-normal ape:items-start ape:pl-[5px] ape:cursor-pointer", children: jsx(QuestionCircle, { width: "12px" }) }) })] }), jsxs(Text, { size: "12px", className: infoDataClasses, style: { color: 'var(--ape-color-success)' }, children: ["$", isNaN(aprUSD) ? '0' : aprUSD.toFixed(2)] })] })) : (jsxs(Flex, { className: infoRowClasses, children: [jsxs(Flex, { className: `${infoTitleClasses} ape:items-center`, children: ["Bonus:", jsx(TooltipBubble, { className: "tooltip-bubble", body: jsx(Flex, { children: TooltipText.Premium }), width: "230px", placement: "bottomLeft", transformTip: "translate(-5%, 0%)", children: jsx(Flex, { className: "row-container premium-icon ape:flex ape:font-normal ape:items-start ape:pl-[5px] ape:cursor-pointer", children: jsx(QuestionCircle, { width: "12px" }) }) })] }), jsxs(Text, { size: "12px", className: infoDataClasses, style: { color: 'var(--ape-color-success)' }, children: ["$", isNaN(bonusUSD) ? '0' : bonusUSD.toFixed(2)] })] })), jsxs(Flex, { className: infoRowClasses, children: [jsxs(Text, { size: "12px", className: infoTitleClasses, children: ["You Get (over", ' ', getTimePeriods((bond?.yieldData?.rewardDistributionEnd ?? 0) - parseInt(bond.startVestingTimestamp ?? '0'), true).days, ' ', "days):"] }), bond.yieldBond ? (jsxs(Flex, { className: `${infoDataClasses} ape:items-center ape:gap-[5px] ape:text-[12px]`, children: [jsx(TooltipBubble, { className: "tooltip-bubble", body: jsxs(Flex, { className: "ape:w-full ape:flex-col", children: ["This is the expected total return by the end of the pool duration, including the initial tokens.", jsx(Flex, { className: "ape:mt-[10px] ape:mb-[5px]", children: "Breakdown" }), jsxs(Flex, { className: "ape:w-full ape:justify-between", children: [jsx(Flex, { children: "Initial capital:" }), jsxs(Flex, { children: ["$", formatNumberSI(inputValueToDisplayUSD), " in ", bond.underlyingEarnToken?.symbol] })] }), jsxs(Flex, { className: "ape:w-full ape:justify-between", children: [jsx(Flex, { children: "Yield Bonus:" }), jsxs(Flex, { children: ["$", formatNumberSI(aprUSD), " in ", bond.underlyingEarnToken?.symbol] })] })] }), width: "230px", placement: "bottomRight", transformTip: "translate(10%, 0%)", children: jsx(Flex, { className: "row-container premium-icon ape:flex ape:font-normal ape:items-start ape:pl-[5px] ape:cursor-pointer", children: jsx(QuestionCircle, { width: "12px" }) }) }), "$", formatNumberSI(youGetUSD + aprUSD)] })) : (jsxs(Text, { size: "12px", className: infoDataClasses, children: [isNaN(youGet) ? 0 : formatNumberSI(youGet, 0), " ", bond?.earnToken.symbol, " = $", isNaN(youGetUSD) ? '0' : youGetUSD.toFixed(2)] }))] })] }), jsx(TokenSelectorPanel, { typedValue: inputValue, setTypedValue: setInputValue, selectedToken: bond?.lpToken, handleValueBtn: () => setInputValue(principalTokenBalance ?? '0'), handleCurrencySelect: () => null, bondChainId: bond?.chainId, enableZap: false, bondPrincipalToken: bond?.lpToken, tokenBalance: principalTokenBalance ?? undefined, selectedTokenPrice: parseFloat(bond?.principalTokenPrice ?? '0'), inputDisabled: false, isConnected: !!address }), jsx(Flex, { className: "ape:w-full ape:justify-center ape:mt-[10px] ape:rounded-normal ape:p-[4px_10px] ape:text-[12px] ape:font-normal", style: { background: '#DE62F366' }, children: bond.warningCard ? (bond.warningCard) : bond.yieldBond ? (jsxs("span", { children: ["This is a Yield Bond. Your initial capital unlocks in", ' ', getTimePeriods((bond?.yieldData?.rewardDistributionEnd ?? 0) - parseInt(bond.startVestingTimestamp ?? '0'), true).days, ' ', "days, followed by an APR bonus distributed over the pool duration.", jsx("span", { className: "ape:ml-[3px] ape:font-bold ape:cursor-pointer ape:hover:underline", style: { color: '#837fd7' }, children: 'Learn More >' })] })) : (jsxs(Fragment, { children: ["This is a Pre-TGE Bond - Tokens will be tradeable upon listing.", jsx(TooltipBubble, { className: "tooltip-bubble", body: jsx(Text, { className: "ape:normal-case", children: "Pre-TGE Bonds are a pre-sale for tokens before their Token Generation Event (TGE), when tokens are officially launched to the public." }), width: "315px", placement: "topRight", transformTip: "translate(9%, -10%)", children: jsx(Flex, { className: "ape:ml-[4px] ape:min-w-[14px]", children: jsx(QuestionCircle, { width: 12 }) }) })] })) }), jsx(Flex, { className: "ape:w-full ape:mt-[10px] ape:justify-between ape:h-[unset] ape:lg:h-[40px] ape:flex-col-reverse ape:lg:flex-row", children: !address ? (jsx(ConnectButton, {})) : (jsxs(Fragment, { children: [jsx(Flex, { className: "ape:w-full ape:lg:w-[45%] ape:justify-center", children: jsxs(Button, { variant: "secondary", onClick: () => window.open(`/swap?outputCurrency=${bond?.lpToken?.address[bond?.chainId]}&outputChain=${bond?.chainId}`, '_blank'), fullWidth: true, children: ["Get ", bond?.lpToken?.symbol] }) }), error ? (jsx(Button, { disabled: true, fullWidth: true, className: "ape:ml-0 ape:lg:ml-[10px]", children: error })) : (jsx(Button, { disabled: loading, load: loading, onClick: openTxModal, fullWidth: true, className: "ape:ml-0 ape:lg:ml-[10px]", children: "Buy" }))] })) })] }) })] }));
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
export { BuyComponentPreTGE as default };
|
|
128
|
+
//# sourceMappingURL=BuyComponentPreTGE.js.map
|