{"version":3,"sources":["scenes/AdminPanel/AdminPanel.module.scss","scenes/AllocationStaking/components/StakeCard/StakeCard.module.scss","scenes/AllocationStaking/components/ReferralsSection/ReferralsSection.module.scss","scenes/AllocationStaking/AllocationStaking.module.scss","scenes/AllocationStaking/components/FundCard/FundCard.module.scss","scenes/PreviewIdoDetail/components/MainInfo/MainInfo.module.scss","scenes/MainScreen/components/InfoBlock/Info.module.scss","scenes/MainScreen/components/Table/components/TableRow/TableRow.module.scss","scenes/AllocationStaking/components/ValuePriceCard/ValuePriceCard.module.scss","scenes/AdminPanel/components/UpcomingTable/components/TableRow/TableRow.module.scss","scenes/SalesPage/components/Table/components/TableRow/TableRow.module.scss","scenes/Header/components/accountDialog/AccountDialog.module.scss","resources/link_arrow.svg","scenes/MainScreen/components/InfoBlock/images/first.svg","scenes/MainScreen/components/InfoBlock/images/third.svg","scenes/MainScreen/components/InfoBlock/images/second.svg","scenes/MainScreen/components/InfoBlock/images/fourth.svg","scenes/MainScreen/components/InfoBlock/images/first_checked.svg","scenes/MainScreen/components/InfoBlock/images/third_checked.svg","scenes/MainScreen/components/InfoBlock/images/fourth_checked.svg","consts/rpc.js","scenes/Header/ProviderDialog/Metamask.js","scenes/ErrorDialog/resources/warning.png","scenes/ErrorDialog/ErrorDialog.js","scenes/Header/API/blockpass.js","hooks/useMergedProvidersState/useMergedProvidersState.js","features/userWalletSlice.js","consts/abi.js","consts/walletConnect.js","hooks/useJSONContract/useJSONContract.js","hooks/useSelectStakingVersion/useSelectStakingVersion.js","scenes/AllocationStaking/services/consts.js","hooks/useJSONStakingContract/useJSONStakingContract.js","hooks/useProviderHook/useProviderHook.js","hooks/useStakingContract/useStakingContract.js","scenes/AllocationStaking/components/StakeCard/services/consts.js","hooks/useTokenContract/useTokenContract.js","scenes/AllocationStaking/API/hooks.js","scenes/MainScreen/components/InfoBlock/Info.js","scenes/MainScreen/components/IDOBlock/test_img.svg","features/projectDetailsSlice.js","scenes/MainScreen/components/IDOBlock/components/IdoBlock/IdoBlock.js","scenes/MainScreen/components/IDOBlock/components/UpcomingIdoBlock/resources/internet_logo.png","scenes/MainScreen/components/IDOBlock/components/UpcomingIdoBlock/UpcomingIdoBlock.js","scenes/MainScreen/components/IDOBlock/components/OngoingIdo/OngoingIdo.js","scenes/MainScreen/components/Table/components/TableHeader/TableHeader.js","features/adminPageSlice.js","scenes/MainScreen/components/Table/components/TableRow/TableRow.js","scenes/MainScreen/components/Table/test_img.svg","scenes/MainScreen/components/Table/components/ControlButton/ControlButton.js","resources/filter_button.svg","scenes/MainScreen/components/Table/API/idos.js","scenes/MainScreen/components/Table/Table.js","scenes/MainScreen/components/IDOBlock/API/upcomingIDOs.js","scenes/MainScreen/components/IDOBlock/images/card_1.png","scenes/MainScreen/components/IDOBlock/images/card_2.png","connector.js","resources/LogoMeta.svg","resources/Vector.svg","resources/Pattern.svg","features/tourSlice.js","hooks/useMainTour/useMainTour.js","scenes/Header/components/OtherWalletsDetected/OtherWalletsDetected.js","scenes/Header/ProviderDialog/ProviderDialog.js","scenes/MainScreen/components/IDOBlock/IDO.js","scenes/MainScreen/components/BuyPeak/resources/pancakeswap.svg","scenes/MainScreen/components/BuyPeak/resources/uniswap.svg","scenes/MainScreen/components/BuyPeak/resources/appsushi.png","scenes/MainScreen/components/BuyPeak/resources/pin.png","scenes/MainScreen/components/BuyPeak/BuyPeak.js","scenes/MainScreen/components/BuyPeak/resources/oneinch.svg","scenes/MainScreen/components/BuyPeak/resources/balancer.svg","scenes/MainScreen/components/BuyPeak/resources/probit.svg","scenes/MainScreen/components/BuyPeak/resources/bibox.svg","scenes/MainScreen/components/BuyPeak/resources/mexc1.png","scenes/MainScreen/components/BuyPeak/resources/company-logo-coinmarketcap.svg","resources/logo_white.svg","scenes/Header/components/GiveawayPanel/GiveawayPanel.js","scenes/MainScreen/components/AlertsPanel/image/arrow.svg","scenes/MainScreen/images/WHUFC-Crest_21-Full-Colour_RGB.png","scenes/MainScreen/components/KOLs/images/ArrowRight.svg","scenes/MainScreen/components/KOLs/components/KOL/KOL.js","scenes/MainScreen/components/KOLs/images/Instagram.svg","scenes/MainScreen/components/KOLs/images/YouTube.svg","scenes/MainScreen/components/KOLs/KOLs.js","scenes/MainScreen/components/EbookBanner/images/EbookCrypto.png","hooks/useScript/useScript.js","scenes/MainScreen/components/EbookBanner/EbookBanner.js","scenes/MainScreen/MainScreen.js","resources/confetti.png","scenes/DialogBase/DialogBase.js","scenes/IdoDetail/components/MainInfo/MainInfo.js","scenes/IdoDetail/components/IdoBlock/ErrorDialog/resources/warning.png","scenes/IdoDetail/components/IdoBlock/ErrorDialog/ErrorDialog.js","scenes/ConfirmationDialog/resources/warning.png","scenes/ConfirmationDialog/ConfirmationDialog.js","features/thankYouSlice.js","scenes/IdoDetail/components/IdoBlock/images/internet_logo.png","consts/kyc.js","scenes/IdoDetail/components/IdoBlock/images/arrowRight.svg","features/whitelistTourSlice.js","hooks/useWhitelistTour/useWhitelistTour.js","features/depositTourSlice.js","hooks/useDepositTour/useDepositTour.js","scenes/IdoDetail/helpers/adminsList.js","hooks/useDepositSaleTokens/consts.js","hooks/useDistributionContract/useDistributionContract.js","hooks/useSaleContract/useSaleContract.js","hooks/useSaleTokenContract/useSaleTokenContract.js","scenes/IdoDetail/components/NetworkInfoSection/assets/polygon.svg","scenes/IdoDetail/components/NetworkInfoSection/NetworkInfoSection.js","scenes/IdoDetail/components/WhitelistNetworkSwitcher/WhitelistNetworkSwitcher.js","scenes/IdoDetail/components/IdoBlock/services/heplers.js","scenes/IdoDetail/components/SaleStartCountdown/SaleStartCountdown.js","scenes/IdoDetail/components/IdoBlock/IdoBlock.js","hooks/useDepositSaleTokens/useDepostSaleTokens.js","scenes/IdoDetail/components/IdoBlock/API/deposit.js","scenes/IdoDetail/components/DetailTable/components/ControlButton/ControlButton.js","scenes/IdoDetail/components/DetailTable/components/TableRow/link_img.svg","scenes/IdoDetail/components/DetailTable/components/TableRow/TableRow.js","scenes/IdoDetail/components/Table/components/TableHeader/TableHeader.js","scenes/IdoDetail/components/Table/components/TableRow/TableRow.js","features/claimTourSlice.js","scenes/IdoDetail/components/Table/test_img.svg","hooks/useClaimTour/useClaimTour.js","scenes/IdoDetail/components/Table/Table.js","hooks/useWithdrawContractDaily/consts.js","hooks/useWithdrawContractDaily/useWithdrawDaliyContract.js","scenes/AllocationStaking/components/DistributionComponents/hooksSKO.js","scenes/AllocationStaking/components/WithdrawDaily/WithdrawDaily.js","scenes/AllocationStaking/components/WithdrawDaily/hooks.js","hooks/useWithdrawV2Contract/consts.js","hooks/useWithdrawV2Contract/useWithdrawV2Contract.js","hooks/useWithdrawContractSko/consts.js","hooks/useWithdrawContractSko/useWithdrawSKOContract.js","scenes/AllocationStaking/components/DistributionComponents/DistributionSKO.js","hooks/useWithdrawLinearContract/consts.js","hooks/useWithdrawLinearContract/useWithdrawLinearContract.js","scenes/AllocationStaking/components/WithdrawLinear/WithdrawLinear.js","scenes/AllocationStaking/components/WithdrawLinear/hooks.js","scenes/AllocationStaking/components/WithdrawAnote/WithdrawAnote.js","scenes/AllocationStaking/components/WithdrawAnote/hooks.js","hooks/useWithdrawLinearContractEywa/consts.js","hooks/useWithdrawLinearContractEywa/useWithdrawLinearContract.js","scenes/AllocationStaking/components/WithdrawEywa/WithdrawLinear.js","scenes/AllocationStaking/components/WithdrawEywa/hooks.js","scenes/AllocationStaking/components/YourAllocations/YourAllocations.js","scenes/IdoDetail/helpers/helperFunctions.js","scenes/IdoDetail/components/AllocationsInfo/helpers.js","scenes/IdoDetail/components/AllocationsInfo/AllocationsInfo.js","scenes/IdoDetail/img/vesting.png","scenes/IdoDetail/components/DetailTable/components/SimpleVestingList/SimpleVestingList.js","scenes/IdoDetail/components/NetworkLogos/assets/polygon.svg","scenes/IdoDetail/components/NetworkLogos/assets/binance.svg","scenes/IdoDetail/components/NetworkLogos/NetworkLogos.js","scenes/NewsAdmin/API/api.js","scenes/IdoDetail/components/ProjectNews/ProjectNews.js","scenes/IdoDetail/components/DetailTable/DetailTable.js","scenes/IdoDetail/img/telegram.svg","scenes/IdoDetail/img/twitter.svg","scenes/IdoDetail/img/medium.svg","scenes/IdoDetail/img/img1.svg","scenes/IdoDetail/img/img2.svg","scenes/IdoDetail/img/img3.svg","scenes/IdoDetail/img/img4.svg","scenes/IdoDetail/img/Checked_IMG.svg","scenes/IdoDetail/components/SubscribePanel/images/letters.svg","scenes/IdoDetail/components/SubscribePanel/images/blue_arrow.svg","scenes/IdoDetail/components/SubscribePanel/images/waves.svg","scenes/IdoDetail/components/SubscribePanel/images/light_waves.svg","scenes/IdoDetail/components/SubscribePanel/images/at.svg","scenes/IdoDetail/components/SubscribePanel/components/IDOSubscribeDialog/IDOSubscribeDialog.js","scenes/IdoDetail/IdoDetail.js","scenes/AllocationStaking/components/StakeCard/images/StakeIcon.svg","scenes/AllocationStaking/components/StakingStats/images/InfoIcon.svg","scenes/AllocationStaking/components/StakeCard/components/ConfirmationDialog/images/waves.svg","scenes/AllocationStaking/components/StakeCard/components/ConfirmationDialog/ConfirmationDialog.js","hooks/useStaking/useStaking.js","hooks/useReferrer/useReferrer.js","scenes/AllocationStaking/components/StakeCard/StakeCard.js","scenes/AllocationStaking/API/staking.js","scenes/AllocationStaking/components/StakingStats/components/StatsCard/StatsCard.js","scenes/AllocationStaking/components/StakingStats/images/StakingStats.svg","scenes/AllocationStaking/components/StakingStats/StakingStats.js","scenes/AllocationStaking/components/TotalsSection/components/TotalPanel/TotalPanel.js","scenes/AllocationStaking/components/TotalsSection/images/Total.svg","scenes/AllocationStaking/components/TotalsSection/TotalsSection.js","scenes/AllocationStaking/components/ValuePriceCard/images/tvl.svg","scenes/AllocationStaking/components/ValuePriceCard/images/price.svg","scenes/AllocationStaking/components/ValuePriceCard/ValuePriceCard.js","scenes/AllocationStaking/components/WithdrawCard/images/WithdrawIcon.svg","scenes/AllocationStaking/components/WithdrawCard/images/Check.svg","scenes/AllocationStaking/components/ReferralsCard/components/ConfirmationDialog/images/waves.svg","scenes/AllocationStaking/components/ReferralsCard/components/ConfirmationDialog/ConfirmationDialog.js","scenes/AllocationStaking/components/WithdrawCard/WithdrawCard.js","resources/hurricanSwapLogo.png","scenes/AllocationStaking/components/InfoDialog/InfoDialog.js","scenes/AllocationStaking/components/ReferralsCard/images/Copy.svg","scenes/AllocationStaking/components/ReferralsCard/components/PlainConfirmationDialog/images/waves.svg","scenes/AllocationStaking/components/Leaderboard/images/StarIcon.svg","scenes/AllocationStaking/components/Table/images/ArrowRight.svg","scenes/AllocationStaking/components/Table/images/ArrowLeft.svg","scenes/AllocationStaking/components/RefereesList/components/ButtonBlue/ButtonBlue.js","scenes/AllocationStaking/components/RefereesList/components/AddressFilter/AddressFilter.js","scenes/AllocationStaking/components/RefereesList/components/DateFilter/DateFilter.js","scenes/AllocationStaking/components/RefereesList/images/Copy.svg","scenes/AllocationStaking/components/RefereesList/images/ArrowRight.svg","scenes/AllocationStaking/components/RefereesList/images/ArrowLeft.svg","scenes/AllocationStaking/components/RefereesList/images/HeaderIcon.svg","scenes/AllocationStaking/components/RefereesList/RefereesTable.js","scenes/AllocationStaking/API/referal.js","scenes/QnA/QnA.js","scenes/AllocationStaking/components/ReferralsSection/components/ConfirmationDialog/images/waves.svg","scenes/AllocationStaking/components/ReferralsSection/components/PlainConfirmationDialog/images/waves.svg","scenes/AllocationStaking/components/ReferralsSection/images/Copy.svg","scenes/AllocationStaking/components/StakingVersionSwitch/StakingVersionSwitch.js","scenes/AllocationStaking/components/V2Table/images/ArrowRight.svg","scenes/AllocationStaking/components/V2StakingLeaderboard/images/StarIcon.svg","scenes/AllocationStaking/components/V2Table/images/ArrowLeft.svg","scenes/AllocationStaking/components/V2Table/V2Table.js","scenes/AllocationStaking/components/DepositsInfo/images/deposits_icon.svg","scenes/AllocationStaking/components/DepositsInfo/DepositsInfo.js","scenes/AllocationStaking/components/DepositsInfo/api/client.js","services/api/APIClient.js","scenes/AllocationStaking/components/ReferralRewardsInfo/images/history-icon.svg","scenes/AllocationStaking/API/client.js","scenes/AllocationStaking/components/FundCard/images/StakeIcon.svg","scenes/AllocationStaking/components/FundCard/components/ConfirmationDialog/images/waves.svg","scenes/AllocationStaking/components/FundCard/FundCard.js","scenes/AllocationStaking/components/NetworkSwitcher/NetworkSwitcher.js","scenes/AllocationStaking/AllocationStaking.js","scenes/AdminPanel/components/Form/components/TextInput/TextInput.js","scenes/AdminPanel/API/idos.js","consts/newSale.js","features/previewSlice.js","scenes/AdminPanel/components/Form/SalesForm.js","scenes/AdminPanel/API/media.js","scenes/AdminPanel/components/UpcomingTable/test_img.svg","scenes/AdminPanel/components/UpcomingTable/UpcomingTable.js","scenes/AdminPanel/components/AuthDialog/AuthDialog.js","scenes/AdminPanel/components/AuthDialog/API/adminPanelAuth.js","scenes/AbiConstructor/components/FunctionConstructor/FunctionConstructor.js","scenes/AbiConstructor/AbiConstructor.js","scenes/Login/components/TextInput/TextInput.js","scenes/NewsAdmin/components/NewsItem/NewsItem.js","scenes/NewsAdmin/NewsAdmin.js","scenes/AdminPanel/AdminPanel.js","scenes/SalesPage/components/Table/test_img.svg","scenes/SalesPage/components/Table/Table.js","scenes/Login/Login.js","scenes/AboutPage/AboutPage.js","scenes/TierPage/resources/soil.svg","scenes/TierPage/resources/seed.svg","scenes/TierPage/resources/sapling.svg","scenes/TierPage/resources/tree.svg","scenes/TierPage/resources/oak.svg","scenes/TierPage/resources/zero.svg","features/bgSlice.js","scenes/TierPage/TierPage.js","scenes/TermsAndConditions/TermsAndConditions.js","scenes/FAQ/FAQ.js","scenes/NotFound/NotFound.js","scenes/PreviewIdoDetail/components/MainInfo/MainInfo.js","scenes/PreviewIdoDetail/components/IdoBlock/IdoBlock.js","scenes/PreviewIdoDetail/components/DetailTable/components/ControlButton/ControlButton.js","scenes/PreviewIdoDetail/components/DetailTable/components/TableRow/link_img.svg","scenes/PreviewIdoDetail/components/DetailTable/components/TableRow/TableRow.js","scenes/PreviewIdoDetail/components/Table/components/TableHeader/TableHeader.js","scenes/PreviewIdoDetail/components/ControlButton/ControlButton.js","scenes/PreviewIdoDetail/components/Table/components/TableRow/TableRow.js","scenes/PreviewIdoDetail/components/Table/test_img.svg","scenes/PreviewIdoDetail/components/Table/Table.js","scenes/PreviewIdoDetail/components/AllocationsInfo/AllocationsInfo.js","scenes/PreviewIdoDetail/components/DetailTable/components/SimpleVestingList/SimpleVestingList.js","scenes/PreviewIdoDetail/components/DetailTable/DetailTable.js","scenes/PreviewIdoDetail/img/telegram.svg","scenes/PreviewIdoDetail/img/twitter.svg","scenes/PreviewIdoDetail/img/medium.svg","scenes/PreviewIdoDetail/img/img1.svg","scenes/PreviewIdoDetail/img/img2.svg","scenes/PreviewIdoDetail/img/img3.svg","scenes/PreviewIdoDetail/img/img4.svg","scenes/PreviewIdoDetail/PreviewIdoDetail.js","scenes/ThankYouPage/images/Deposit.svg","scenes/ThankYouPage/images/Register.svg","scenes/ThankYouPage/ThankYouPage.js","scenes/EbookThankYou/images/Register.svg","scenes/EbookThankYou/images/Deposit.svg","scenes/EbookThankYou/EbookThankYou.js","scenes/EarnWithCrew3/EarnWithCrew3.js","scenes/News/NewsScreen.js","scenes/News/API/api.js","routes.js","history.js","resources/new_logo_text.svg","resources/person.svg","resources/bg_gradient.svg","scenes/BG/images/wave.svg","resources/bg2_gradient.svg","scenes/BG/components/Waves/Waves.js","scenes/BG/BG.js","features/stakingSlice.js","logo.svg","scenes/Header/images/AccountIcon.svg","app/store.js","scenes/Header/Blockpass.js","scenes/Header/components/accountDialog/images/WalletIcon.svg","scenes/Header/components/accountDialog/AccountDialog.js","scenes/Header/components/SocialsDropdown/SocialsDropdown.js","scenes/Header/components/StakingButtonPopover/StakingButtonPopover.js","scenes/Header/Header.js","resources/logo_dark.svg","resources/logo.svg","scenes/Footer/components/UsefulLinks/UsefulLinks.js","scenes/Footer/components/MediaLinks/MediaLinks.js","scenes/Footer/components/Disclaimer/Disclaimer.js","scenes/Footer/Footer.js","scenes/Tours/components/ToursTrigger/ToursTrigger.js","scenes/BaseLayout/BaseLayout.js","scenes/PrivateRoute/PrivateRoute.js","scenes/ScrollToTop/ScrollToTop.js","scenes/Polygon/PolygonModal/PolygonModal.js","App.js","serviceWorker.js","index.js","scenes/IdoDetail/components/DetailTable/components/TableRow/TableRow.module.scss","scenes/AllocationStaking/components/ReferralsCard/ReferralsCard.module.scss","scenes/PreviewIdoDetail/components/DetailTable/components/TableRow/TableRow.module.scss","scenes/IdoDetail/IdoDetail.module.scss","scenes/IdoDetail/components/Table/Table.module.scss","scenes/MainScreen/components/EbookBanner/EbookBanner.module.scss","scenes/QnA/QnA.module.scss","scenes/PreviewIdoDetail/PreviewIdoDetail.module.scss","scenes/Header/components/GiveawayPanel/GiveawayPanel.module.scss","scenes/IdoDetail/components/Table/components/TableRow/TableRow.module.scss","scenes/AllocationStaking/components/Table/Table.module.scss","scenes/AllocationStaking/components/V2Table/Table.module.scss","scenes/SalesPage/components/Table/Table.module.scss","scenes/IdoDetail/components/SubscribePanel/components/IDOSubscribeDialog/IDOSubscribeDialog.module.scss","scenes/AllocationStaking/components/StakingStats/components/StatsCard/StatsCard.module.scss","scenes/AllocationStaking/components/TotalsSection/components/TotalPanel/TotalPanel.module.scss","scenes/Footer/components/UsefulLinks/UsefulLinks.module.scss","scenes/Tours/components/ToursTrigger/ToursTrigger.module.scss","scenes/Tours/maintour.module.scss","scenes/AllocationStaking/components/WithdrawDaily/WithdrawDaily.module.scss","scenes/Header/ProviderDialog/ProviderDialog.module.scss","scenes/MainScreen/components/AlertsPanel/AlertsPanel.module.scss","scenes/IdoDetail/components/SubscribePanel/SubscribePanel.module.scss","scenes/TierPage/TierPage.module.scss","scenes/IdoDetail/components/MainInfo/MainInfo.module.scss","scenes/AdminPanel/components/AuthDialog/AuthDialog.module.scss","scenes/NewsAdmin/NewsAdmin.module.scss","scenes/PreviewIdoDetail/components/Table/components/TableRow/TableRow.module.scss","scenes/Header/components/OtherWalletsDetected/OtherWalletsDetected.module.scss","scenes/IdoDetail/components/IdoBlock/ErrorDialog/ErrorDialog.module.scss","scenes/AllocationStaking/components/StakingStats/StakingStats.module.scss","scenes/AllocationStaking/components/TotalsSection/TotalSection.module.scss","scenes/AllocationStaking/components/RefereesList/components/DateFilter/DateFilter.module.scss","scenes/SalesPage/SalesPage.module.scss","scenes/EarnWithCrew3/EarnWithCrew3.module.scss","scenes/ErrorDialog/ErrorDialog.module.scss","scenes/MainScreen/components/KOLs/components/KOL/KOL.module.scss","scenes/ConfirmationDialog/ErrorDialog.module.scss","scenes/IdoDetail/components/DetailTable/DetailTable.module.scss","scenes/AllocationStaking/components/StakeCard/components/ConfirmationDialog/ConfirmationDialog.module.scss","scenes/AllocationStaking/components/ReferralsCard/components/ConfirmationDialog/ConfirmationDialog.module.scss","scenes/AllocationStaking/components/InfoDialog/InfoDialog.module.scss","scenes/AllocationStaking/components/ReferralsCard/components/PlainConfirmationDialog/PlainConfirmationDialog.module.scss","scenes/AllocationStaking/components/RefereesList/components/AddressFilter/AddressFilter.module.scss","scenes/AllocationStaking/components/ReferralsSection/components/ConfirmationDialog/ConfirmationDialog.module.scss","scenes/AllocationStaking/components/ReferralsSection/components/PlainConfirmationDialog/PlainConfirmationDialog.module.scss","scenes/AllocationStaking/components/FundCard/components/ConfirmationDialog/ConfirmationDialog.module.scss","scenes/Login/Login.module.scss","scenes/PreviewIdoDetail/components/DetailTable/DetailTable.module.scss","scenes/BG/BG.module.scss","scenes/AllocationStaking/components/WithdrawLinear/WithdrawLinear.module.scss","scenes/AllocationStaking/components/WithdrawEywa/WithdrawLinear.module.scss","scenes/IdoDetail/components/IdoBlock/IdoBlock.module.scss","scenes/AllocationStaking/components/WithdrawAnote/WithdrawDaily.module.scss","scenes/MainScreen/MainScreen.module.scss","scenes/MainScreen/components/Table/Table.module.scss","scenes/DialogBase/DialogBase.module.scss","scenes/IdoDetail/components/NetworkInfoSection/NetworkInfoSection.module.scss","scenes/AllocationStaking/components/StakingVersionSwitch/StakingVersionSwitch.module.scss","scenes/AdminPanel/components/UpcomingTable/Table.module.scss","scenes/AbiConstructor/components/FunctionConstructor/FunctionConstructor.module.scss","scenes/AbiConstructor/AbiConstructor.module.scss","scenes/NotFound/NotFound.module.scss","scenes/ThankYouPage/ThankYouPage.module.scss","scenes/EbookThankYou/EbookThankYou.module.scss","scenes/BG/components/Waves/Waves.module.scss","scenes/Header/components/SocialsDropdown/SocialsDropdown.module.scss","scenes/Footer/Footer.module.scss","scenes/Footer/components/MediaLinks/MediaLinks.module.scss","scenes/MainScreen/components/Table/components/ControlButton/ControlButton.module.scss","scenes/MainScreen/components/BuyPeak/BuyPeak.module.scss","scenes/MainScreen/components/KOLs/KOLs.module.scss","scenes/IdoDetail/components/WhitelistNetworkSwitcher/WhitelistNetworkSwitcher.module.scss","scenes/IdoDetail/components/DetailTable/components/ControlButton/ControlButton.module.scss","scenes/IdoDetail/components/Table/components/TableHeader/TableHeader.module.scss","scenes/IdoDetail/components/ControlButton/ControlButton.module.scss","scenes/AllocationStaking/components/Leaderboard/Leaderboard.module.scss","scenes/AllocationStaking/components/RefereesList/components/ComissionFilter/ComissionFilter.module.scss","scenes/AllocationStaking/components/V2StakingLeaderboard/V2StakingLeaderboard.module.scss","scenes/AllocationStaking/components/DepositsInfo/DepositsInfo.module.scss","scenes/AllocationStaking/components/ReferralRewardsInfo/ReferralRewardsInfo.module.scss","scenes/AllocationStaking/components/NetworkSwitcher/PolygonModal.module.scss","scenes/AdminPanel/components/UpcomingTable/components/ControlButton/ControlButton.module.scss","scenes/SalesPage/components/Table/components/ControlButton/ControlButton.module.scss","scenes/PreviewIdoDetail/components/DetailTable/components/ControlButton/ControlButton.module.scss","scenes/PreviewIdoDetail/components/Table/Table.module.scss","scenes/PreviewIdoDetail/components/ControlButton/ControlButton.module.scss","scenes/News/NewsScreen.module.scss","scenes/BaseLayout/BaseLayout.module.scss","scenes/Header/components/StakingButtonPopover/StakingButtonPopover.module.scss","scenes/Polygon/PolygonModal/PolygonModal.module.scss","scenes/MainScreen/components/IDOBlock/components/IdoBlock/IdoBlock.module.scss","scenes/PreviewIdoDetail/components/IdoBlock/IdoBlock.module.scss","scenes/AllocationStaking/components/WithdrawCard/WithdrawCard.module.scss","scenes/Header/Header.module.scss","scenes/MainScreen/components/IDOBlock/components/OngoingIdo/OngoingIdo.module.scss","scenes/AdminPanel/components/Form/SalesForm.module.scss","scenes/MainScreen/components/Table/components/TableHeader/TableHeader.module.scss","scenes/MainScreen/components/IDOBlock/components/UpcomingIdoBlock/UpcomingIdoBlock.module.scss","scenes/IdoDetail/components/DetailTable/components/SimpleVestingList/SimpleVestingList.module.scss","scenes/IdoDetail/components/DetailTable/components/SaleOwner/SaleOwner.module.scss","scenes/IdoDetail/components/NetworkLogos/NetworkLogos.module.scss","scenes/AllocationStaking/components/RefereesList/components/ButtonBlue/ButtonBlue.module.scss","scenes/AllocationStaking/components/RefereesList/RefereesTable.module.scss","scenes/MainScreen/components/IDOBlock/IDO.module.scss","scenes/AdminPanel/components/Form/components/TextInput/TextInput.module.scss","scenes/AdminPanel/components/UpcomingTable/components/TableHeader/TableHeader.module.scss","scenes/Login/components/TextInput/TextInput.module.scss","scenes/SalesPage/components/InfoPanel/InfoPanel.module.scss","scenes/SalesPage/components/Table/components/TableHeader/TableHeader.module.scss","scenes/AboutPage/AboutPage.module.scss","scenes/TermsAndConditions/TermsAndConditions.module.scss","scenes/FAQ/FAQ.module.scss","scenes/PreviewIdoDetail/components/Table/components/TableHeader/TableHeader.module.scss","scenes/PreviewIdoDetail/components/DetailTable/components/SimpleVestingList/SimpleVestingList.module.scss","scenes/Footer/components/Disclaimer/Disclaimer.module.scss"],"names":["module","exports","RpcProvider","process","initializeConnector","actions","MetaMask","metaMask","hooks","WalletConnect","options","projectId","chains","split","map","e","parseInt","showQrModal","walletConnect","walletConnectHooks","ErrorDialog","show","customMessage","message","setError","handleClose","Dialog","open","onClose","fullWidth","maxWidth","DialogContent","className","classes","customErrorMessage","buttonDiv","onClick","config","headers","getUserDataKYC","wallet","axios","get","useMergedProvidersState","accounts","useAccounts","walletConnectAccounts","chainId","useChainId","walletConnectChainId","provider","useProvider","walletConnectProvider","userWalletSlice","createSlice","name","initialState","address","balance","decimal","reducers","setAddress","state","action","undefined","payload","setBalance","setDecimal","SALE_ABI","TOKEN_ABI","FAKE_CONTRACT","rpcWalletConnectProvider","WalletConnectProvider","rpc","useJSONContract","contract_address","ABI","account","length","useState","contract","setContract","updateContract","jsonProvider","ethers","providers","JsonRpcProvider","jsonSaleContract","Contract","useEffect","useSelectStakingVersion","localStorage","getItem","stakingVersion","setStakingVersion","storageData","setItem","window","dispatchEvent","Event","storageListener","addEventListener","removeEventListener","switchToStakingVersion","version","toggleStakingVersion","switchToStakingV1","switchToStakingV2","abi","inputs","internalType","type","outputs","stateMutability","stakingContractAddress","abiV2","anonymous","indexed","stakingContractAddressV2","useJSONStakingContract","defaultProvider","useProviderHook","useIsActive","useWalletConnectProvider","isActive","ethereum","useStakingContract","stakingContract","setStakingContract","signer","getSigner","removeAllListeners","useTokenContract","tokenContract","setTokenContract","tokenAbi","useFetchMyStakingStats","walletAddress","useQueries","queries","queryKey","queryFn","userInfo","enabled","getStakingPercent","stakingPercent","pending","refetchInterval","useFetchDecimals","useQuery","decimals","initialData","useFetchWalletBalance","console","log","balanceOf","Info","navigate","useNavigate","isVerified","setIsVerified","isPending","setIsPending","data","stakingBalance","amount","showError","setShowError","setCustomMessage","then","response","status","catch","error","setDataToShowParticipate","img","ThirdImgChecked","ThirdImg","title","text","link","FirstImgChecked","FirstImg","document","getElementById","click","FourthImg","scrollTo","dataToShowInfo","dataToShowParticipate","infoBlocks","props","infoBlock","alt","src","Arrow","titleBlock","participateBlocks","participateBlock","imgBlock","to","spy","smooth","offset","duration","projectDetailsSlice","bg_image","saleStatus","setBG","setSaleStatus","numberWithCommas","x","toString","replace","timeLeft","seconds","d","Math","floor","h","m","s","numFormatter","num","toFixed","IdoBlock","timer","date","Date","getTime","timeline","sale_end","setSeconds","dispatch","useDispatch","totalBUSDRaised","setTotalBUSDRaised","saleProgress","setSaleProgress","sale_contract_address","updateSaleData","a","token","token_distribution","price","sale","setInterval","prevCount","start_date","saleInfo","getDate","slice","getMonth","getFullYear","showTge","useMemo","tge","now","style","cursor","id","toLowerCase","bgImage","tokenBlock","progresLabel","privateSaleFlag","is_private_sale","totalRaised","line","textToShowBlock","textToShow","isNaN","progressBar","launchDetaid","block","marginTop","value","subBlock","info","round","count","total_raise","backPart","width","topPart","UpcomingIdoBlock","time_until_launch","activeSection","setActiveSection","clearInterval","blank_img","blankIDO","backgroundImage","tokenInfo","mediaBar","href","website","target","InternetLogo","verticalSeparator","socials","url","logo_url","navBar","navItemActive","navItem","offeringSection","show_text","sale_timeline_text","registration_start","toLocaleDateString","year","month","day","descriptionSection","short_description","row","height","OngoingIdo","providerr","saleContract","sale_price","details","TableHeader","minWidth","paddingRight","adminPageSlice","selectedIDO","toUpdate","setSelectedIDO","setToUpdate","Button","styledButtonActive","styledButton","ev","getIdos","getSingleIdoByName","UpcomingTable","upcoming","ongoing","idos","setIDOs","activeType","setActiveType","sorting","setSorting","rotateRate","setRotateRate","useSelector","adminPage","parseIdo","symbol","idoPrice","currentPrice","ath","roi","partisipants","totalTokenSold","endAt","registrationStart","parseFloat","token_price_in_usd","current_token_price","all_time_high","number_of_participants","total_tokens_sold","ended","sort","b","display","flexDirection","justifyContent","controlButton","transform","FilteButton","Table","ido","index","color","TableRow","background","divUpdate","toLocaleString","dateStyle","getUpcomingIdos","injected","InjectedConnector","supportedChainIds","defaultChainId","optionalChains","tourSlice","currentStep","isShowingTour","isNextStepBlocked","isPreviousStepBlocked","nextStep","prevStep","setStep","openTour","closeTour","blockNextStep","unblockNextStep","blockPreviousStep","unblockPreviousStep","useMainTour","allowance","setAllowance","showVerify","setShowVerify","handler","res","goToStep","goToNextStep","step","blockPropagation","unblockPropagation","blockReverse","unblockReverse","isTourOpen","localCurrentStep","setLocalCurrentStep","tourSteps","selector","content","mutationObservables","highlightedSelectors","resizeObservables","observe","globalStateCloseTour","globalStateOpenTour","nextStepHandler","prevStepHandler","OtherWalletsDetected","isOpen","otherWalletsDetected","DialogTitle","dialogTitle","IconButton","dialogContent","infoMessage","ProviderDialog","setShow","useWeb3React","activate","deactivate","isOWDDialogOpen","setIsOWDDialogOpen","buttons","providerButton1","inlineLogo","MetamaskLogo","providerButton2","setTimeout","connectEagerly","toast","success","WalletConnectLogo","Pattern","IDO","setIdos","isLoading","setIsLoading","upcomingIdos","setUpcomingIdos","endedIdos","setEndedIdos","ongoingIdos","setOngoingIdos","myIdos","setMyIdos","displayIndex","setDisplayIndex","showProviderDialog","setShowProviderDialog","showMobileCompleted","innerWidth","heading_text","website_url","target_raised","raised","sale_start","token_price","current_price","end_date","sale_ends","token_sold","sale_progres","percent_raised","project_detail","project_bg","BlurredTBA1","BlurredTBA2","user_idos","marginBottom","ido_data","screen","menu","menuElementActive","menuElement","clear","upidos","emptyArrays","connectPrompt","connectButton","CircularProgress","BuyPeak","icon","PancakeLogo","UniswapLogo","exchanges","links","GiveAwayPanel","makeStyles","theme","dialogPaper","paper","giveawayPanel","gradientSection","Logo","logo","contentSection","subscribeForm","email","submit","formtarget","autoFocus","KOL","subtitle","ctaText","mainText","titles","cta","ArrowRight","KOLs","kols","Instagram","YouTube","KOLsSection","kol","useScript","callback","script","createElement","defer","body","appendChild","removeChild","getWindowSize","innerHeight","EbookBanner","forwardRef","ref","showingPopup","setShowingPopup","windowSize","setWindowSize","wrappers","getElementsByClassName","handleWindowResize","observer","MutationObserver","event","position","includes","querySelector","attributes","childList","subtree","activateScript","classList","childNodes","useImperativeHandle","getAlert","hideAlert","handleClickAway","querySelectorAll","forEach","box","gradientDiv","join","EbookCrpyto","texts","checklist","checklistItem","bullet","checkIcon","Backdrop","sx","zIndex","drawer","MainScreen","showGiveaway","setShowGiveaway","MainSCreen","animateIn","animateOut","animateOnce","DialogBase","buttonText","warningIconDiv","dangerouslySetInnerHTML","__html","tokenContractAddress","MainInfo","setSaleContract","userWalletAddress","isRegistered","setIsRegistered","setIsParticipated","setDepositedAmount","errorMessage","showMessage","setShowMessage","Confetti","messageIcon","lsaleContract","isRegisteredCheck","isParticipated","userToParticipation","amountPaid","ltokenContract","erorr","web3Provider","Web3Provider","loadBlockpassWidget","BlockpassKYCConnect","env","refId","startKYCConnect","lSaleContract","isWhitelisted","mainInfo","textBlock","mobileLogoDiv","mobileLogo","media","ErrorIcon","ConfimrationDialog","thankYouSlice","register","deposit","staking","projectName","setDeposit","setRegister","setStaking","kycBypassers","whitelistTourSlice","useWhitelistTour","setUserIsRegistered","depositTourSlice","isApproved","setIsApproved","useDepositTour","globalIsApproved","goToPrevStep","amountIsApproved","admins","components","useDistributionContract","sale_distribution_contract_address","distributionContract","setDistributionContract","updateDistributionContract","useSaleContract","updateSaleContract","useSaleTokenContract","sale_token_contract_address","NetfowrkInfoSection","network","logos","polygon","polygonLogo","dottedBorderTop","dottedBorderBottom","WhitelistNetworkSwitcher","isWhitelist","setIsOpen","onChangeNetwork","desiredNetworkID","networkVersion","request","method","params","web3","utils","toHex","code","getTierValues","padStart","SaleStartCountdown","sale_start_date","secondsLeft","setSecondsLeft","fontWeight","fontSize","alignItems","marginLeft","idoInfo","goToWhitelistStep","useParams","isRegistrationPending","setIsRegistrationPending","depositedAmount","jsonContract","setAmount","inputWarning","setInputWarning","userTier","setUserTier","setIsLotteryWinner","showErrorStake","setShowErrorStake","setErrorMessage","setMessage","setMessageIcon","showConfirm","setShowConfirm","confirmMessage","sloganCollapsed","setSloganCollapsed","depositTour","sale_token_address","isAdmin","isTokensDeposited","setIsTokensDeposited","fetchIsTokensDeposited","tokensDeposited","allow","approve","constants","MaxUint256","tran","wait","transaction","promise","depositTokens","transactipon","useDepositSaleTokens","token_address","distributionAllow","distributionAllowance","distributionDepositTokens","Whitelist","userTierId","callBack","ErrorImg","addToken","replaceAll","image","userAddress","registerForSale","actualSaleRequest","roundedAmount","bigAmount","BigNumber","from","mul","pow","participate","ido_id","post","participateSale","some","isWhitelistStage","isDepositStage","hasSaleStarted","tierByWallet","tierJSON","tokenLogo","imgMobile","priceDetail","slogan","expandedSlogan","readMore","RoundDetail","time_left","current_round","time_left_in_current_round","actionBlock","buttonBlock","disabled","size","whitelistEnd","notWhitelisted","inputFieldWrapper","Tooltip","disableHoverListener","componentsProps","tooltip","bgcolor","fontFamily","min","inputField","onChange","onFocus","onBlur","whiteSpace","kyc","additionalSaleInfo","colorInsert","blackSquare","progressBarWrapper","roundName","iTimeLeft","setITimeLeft","roundDetail","roundInfo","timeInfo","read_from_db","ControlButton","ActiveButton","tableRow","renderLink","renderAddress","showLine","rel","LinkImg","isShortText","linkTextShort","linkText","navigator","clipboard","writeText","autoClose","hideProgressBar","closeOnClick","pauseOnHover","draggable","progress","substring","claimAllButton","claimAllAvailablePortions","portion","claimed","vested","claimable","claimability","opacity","filter","claimTourSlice","useClaimTour","decimalCount","numStr","String","mainIdo","claimTour","isClaimable","claimableIds","setClaimableIds","setInfo","max","vesting_percent","claimableData","getClaimedInfo","local_info","entries","isClaimed","calculateAmountWithdrawingPortionPub","rawPortionData","vesting_time","push","ids","withdrawMultiplePortions","result","render","isBSCSpecific","isPolygonNetworkUsed","isBSCNetworkUsed","invisibleButtonRow","headerButtons","disableFocusListener","arrow","disabledClaimAllButton","polygonNetwork","switchNetworksButton","emptyMessage","ABI_WITHDRAW_DAILY","useWithdrawDailyContract","sale_withdraw_daliy_contract_address","withdrawDailyContract","setWithdrawDailyContract","updateWithdrawDailyContract","useFetchavToParticipationInfo","hurricaneContract","_hex","_isBigNumber","useFetchToParticipationInfoFromSale","WithdrawDaily","saleContractAddress","contractAddress","tokenName","tokenImg","tokenSmallName","toParticipationInfo","refetch","saleToParticipationData","days","setDays","hours","setHours","minutes","setMinutes","vestingTimeEnd","setVestingTimeEnd","vestingTimeStart","setVestingTimeStart","update","setUpdate","widthdrawDays","setWithdrawDays","formatDate","timestamp","endDate","interval","difference","remainingDays","remainingHours","remainingMinutes","remainingSeconds","getInfo","toNumber","getWithdrawDays","isPolygonSpecific","tokenDecimals","isTgeVisible","claimableTokens","claimingDays","allMonth","withdrawElement","withdrawElementContent","withdrawHeader","TokenInfoContainer","withdrawTokenLogo","TokenNames","TokenName","TimerContainer","TimerTitel","Timer","TimerItemContainer","TimerNumberContainer","TimerItemNumber","marginRight","TimerItemText","ButtonContainer","variant","withdrawTokens","onLoad","isTgeClaimed","ButtonContainer2","withdrawTokensTGE","withdrawLine","FooterContainer","FooterItemContainer","FooterItemTitle","FooterItemText","ABI_WITHDRAW_V2","useWithdrawV2Contract","sale_withdraw_contract_address","withdrawContract","setWithdrawContract","updateWithdrawContract","ABI_WITHDRAW_SKO","useWithdrawSKOContract","sale_withdraw_SKO_contract_address","withdrawSKOContract","setWithdrawSKOContract","updateWithdrawSKOContract","DistributionSKO","tgeContractAddress","toParticipationInfoTGE","refetchTGE","setWithdrawPercent","ABI_WITHDRAW_LINEAR","useWithdrawLinearContract","WithdrawLinear","setDate","withdrawTokenPerSecond","setWithdrawTokenPerSecond","intervalId","tgePercent","item","userTokens","amountClaimedAnother","WithdrawAnote","userToken","WithdrawEywa","claimStepDate1","setClaimStepDate1","setClaimableTokens","tokensPerSecond","setTokensPerSecond","tgeInfoPresent","time","tokenClaimDate","stepClaimed","YourAllocations","shouldShowTable","sale_name","contractAddressFetcher","AllocationsInfo","toLocaleLowerCase","showTable","setShowTable","claimPortion","mainOne","sumToWithdraw","withdrawTokensFirstPortion","allocationsInfo","SimpleVestingList","VestingImg","NetworkLogos","bsc","bscLogo","NetworkLogo","getNews","createNews","putNews","put","ProjectNews","placeholderData","setPlaceholderData","news","Box","boxShadow","padding","Typography","textAlign","Timeline","timelineOppositeContentClasses","root","flex","newsItem","TimelineItem","TimelineOppositeContent","TimelineSeparator","TimelineDot","TimelineConnector","TimelineContent","mb","Paper","elevation","overflow","Grid","container","rowSpacing","columnSpacing","direction","image_url","xs","sm","gutterBottom","component","DetailTable","activeButton","setActivateButton","isSaleOwner","setIsSaleOwner","showYourAllocations","setShowYourAllocations","rowInfo","setRowInfo","setTokenInfo","tempRowInfo","number_of_registration","vesting_text","gap","t_tokenInfo","total_supply","saleOwner","detailTable","controlButtons","aboutTheProject","description","tableBody","arrayToShow","showTableRows","IdoDetail","projectDetails","encodeURI","setTitle","setText","Telegram","Twitter","Mediun","setMedia","peakPrice","setIdoInfo","Img1","text1","text2","UTCTime","Img2","isNewDate","Img3","Img4","setIdo","selectedIdo","tDataToShowParticipate","toLocaleTimeString","hour","minute","moment","tz","guess","zoneAbbr","registration_end","getUTCHours","getUTCMinutes","tIdoInfo","contractSaleInfo","Salecontract","token_price_in_avax","Number","total_raised","price_in_avax","tokenPriceInBUST","t_tokenContract","TestImg","user","idoDetail","firstBlock","newDateBadge","CheckedImg","tableDetail","subscribeSection","ConfirmationDialog","setOpen","agree","setAgree","Checkbox","checked","claimButton","Waves","waves","useStaking","referrer","useCookies","cookies","myaccount","referrer_wallet_address","isReferrerSet","useReferrer","fund","approvalTransaction","withdraw","harvest","claimReferralReward","Error","claimReferralRewards","depositReferralRewardToStakingBalance","referralRewardsToStake","iOSBoxShadow","IOSSlider","styled","Slider","palette","mode","backgroundColor","border","top","primary","StakeCard","showConfirmationWindow","setShowConfirmationWindow","stringularAmount","setStringularAmount","refetchWalletAddress","refetchUserInfo","StakingBalance","updateBalance","stakeFunction","refereeAddress","referrerAddress","Promise","resolve","reject","referrer_wallet","referral_wallet","approvalRequest","stakeCard","cardContent","cardHeader","headerIcon","StakeIcon","headerText","enterTouchDelay","leaveTouchDelay","InfoIcon","headerInfoIcon","input","inputHeader","headerBalance","abs","headerMax","inputFields","lang","test","inputFieldPostpend","percentSlider","valueLabelDisplay","marks","valueLabelFormat","confirmationButton","stakeButton","StatsCard","statsCard","statsTitle","placement","titleIcon","contents","val","append","subvalue","actionButton","buttonActive","buttonCallback","StakingStats","stakingStats","statsHeader","StakingStatsIcon","statsContent","card","TotalPanel","totalPanel","header","infoIcon","valueSubappend","subappend","prepend","TotalsSection","totalSection","totalsHeader","TotalIcon","totalContent","ValuePriceCard","totalValueLocked","valuePriceCard","subsection","valueLocked","iconDiv","icons","tvl","subsectionTitle","subsectionContent","verticalSplitter","priceIco","borderRadius","WithdrawCard","updateInfo","fee","setFee","isFeeLoading","setIsFeeLoading","earned","setEarned","currentWeek","setCurrentWeek","comissions","refreshWalletBalance","stakingStart","debouncedFeeHandler","useCallback","debounce","feeListener","isRetry","getWithdrawFee","withdrawFunction","harverstFucntion","withdrawAllFunction","setDialogTitle","dialogText","setDialogText","withdrawCard","WithdrawIcon","minimumFractionDigits","LinearProgress","comissionSection","numericValues","Check","bar","bigDot","dotDisabled","barDisabled","withdrawButton","harvestButton","whiter","gradientText","withdrawAllButton","DialogTransition","Slide","InfoDialog","dialog","TransitionComponent","DialogActions","closeButton","ButtonBlue","children","ButtonLight","AddressFilter","filterAddresses","setFilterAddresses","inputValue","setInputValue","placeholder","onKeyDown","key","enteredAddresses","enteredAddress","handleSingleItemDelete","DateFilter","startDate","setStartDate","setEndDate","minimumDate","setMinimumDate","dateFormatter","inputClassName","calendar","colorPrimary","colorPrimaryLight","formatInputText","calendarClassName","calendarItself","hyphen","RefereesTable","filtersCount","setFiltersCount","showFilters","setShowFilters","comissionFrom","setComissionFrom","comissionTo","setComissionTo","currentPage","setCurrentPage","rowsPerPage","setRowsPerPage","maxPageCount","setMaxPageCount","columns","values","setValues","page","perPage","referrals","dateFrom","dateTo","getReferees","page_numbers","referrals_deposit","commission","HeaderIcon","filterControls","clearAll","filterButtonActive","filterButton","filterIcon","filterCounter","filters","collapsedFilters","filterSection","tableSection","tableHeader","column","dashedLine","colspan","infoRow","noReferees","referralLink","linkInput","location","host","CopyIcon","noData","colSpan","paginationControl","sizeSelector","op","navigation","ArrowLeft","counter","separator","QnA","innerQnA","questions","q","trigger","innerTrigger","collapsible","openedClassName","triggerClassName","triggerOpenedClassName","contentInnerClassName","answer","StakingVersionSwitch","isDisabled","setIsDisabled","useLocation","timeout","clearTimeout","switchContainer","selectedVersion","Switch","V2Table","setSize","setPage","totalPages","defaultValue","DepositsInfo","pageSize","setPageSize","useFetchDepositsInfo","depositsInfo","depositsData","setDepositsData","deposits","hash","toISOString","toUpperCase","Leaderboard","deposits_icon","table","total","ApiClient","create","baseURL","interceptors","use","FundCard","fundFunction","NetworkSwitcher","desiredChainId","AllocationStaking","externalStakingVersion","showInfoDialog","setShowInfoDialog","refetchStakingPercent","refetchPending","setTotalValueLocked","stakeBalance","graphData","setGraphData","useSearchParams","searchParams","setCookie","totalDeposits","paidOut","useFetchTotalStakingStats","refetchTotalDeposits","refetchPaidOut","completeRefresh","select","memoStakingStats","memoTotals","expires","allocationStaking","pageTitle","vpCard","chatTitle","LineChart","margin","right","bottom","left","CartesianGrid","stroke","strokeDasharray","XAxis","dataKey","YAxis","Line","activeDot","r","switcherContainer","pageContent","createEndAdornment","InputAdornment","Select","disableUnderline","MenuItem","TextInput","control","label","value_data","onChangeGlobal","errors","rules","field","pr","TextField","inputRef","InputLabelProps","shrink","InputProps","endAdornment","startAdornment","createAllIDO","idoData","salesFactoryAbi","previewSlice","rawData","setRawData","SalesForm","setSaleContractAddress","useForm","defaultValues","img_url","social_media","handleSubmit","reset","watch","setValue","getValues","formState","watchAllFields","setContent","setVestingPercent","setVestingTime","showVesting","setShowVesting","device","setDevice","dimensions","desktop","w","macbook","mobile","total_token_sold","total_suppy","JSON","stringify","is_public","supported_network","tzoffset","getTimezoneOffset","editor","useRef","formPanel","formRow","required","for","readonly","tabIndex","newContent","textDecoration","preventDefault","v","splice","FormControl","InputLabel","delete","deleteMediaDetail","previewSection","previews","preview","short_descriptions","time_until_launched","registartion_start","projectDetailsPreviewHeader","deviceSelector","labelId","detailsPreview","previewIframe","participants","descriptions","explanation_text","supported_network_id","ido_data_is_public","ido_data_read_from_db","token_detail","token_detail_read_from_db","tmedia","tml","tml_read_from_db","ido_price","tokens_sold","deploySale","getLastDeployedSale","getSaleContract","AuthDialog","setDialog","passwordMissmatch","setPasswordMissmatch","watchConfirm","watchPassword","watchEmail","sessionStorage","dialogActions","password","confirm_password","signUp","login","FunctionConstructor","setOutputs","button","requestJson","call","Array","isArray","arr","output","textOutputs","AbiConstructor","abiJson","parse","f","collapsibleHeader","collapsibleHeaderisOpen","collapsibleContent","NewsItem","joditContent","pageData","newNews","React","memo","NewsAdmin","setNews","AdminPanel","showDialog","setShowDialog","tab","setTab","adminPanel","infoButton","formSection","Tabs","Tab","tablesSection","tableDiv","Login","Cookies","loginPage","loginCard","visibility","set","AboutPage","bgSlice","short","superShort","setShort","setSuperShort","TierPage","Zero","subtext","pool_weight","Soil","Seed","Sapling","Tree","Oak","tiers","tierTableWrapper","tierTable","picth","tier","pictd","tierName","subText","TermsAndConditions","start","FAQ","NotFound","c404","goHome","mediaMobile","userWallet","t_info","i","PreviewIdoDetail","processLocalStorageData","input_string","newValue","ThankYouPage","actionData","thankYouPage","Register","Deposit","doneButton","EbookThankYou","EarnWithCrew3","heading","subheading","video","frameborder","allowfullscreen","ctaButton","NewsScreen","class","routes","path","exact","isProtected","createBrowserHistory","bgimg","isProjectDetails","heightStyle","setHeightStyle","isShort","bg","isSuperShort","waveContainer","backgroundSize","backgroundPosition","xmlns","xmlnsXlink","viewBox","preserveAspectRatio","shapeRendering","node","setProperty","parallax","xlinkHref","y","fill","BG","BG_img","setbgImg","projectDetailBG","setIsProjectDetails","indexOf","BG2_img","imgBG","wave","stakingSlice","setDecimals","configureStore","reducer","Blockpass","hide","greentext","AccountDialog","disconnect","useTheme","setNetwork","listAccounts","getNetwork","dialogHeader","closeIcon","walletInfo","walletIconWrapper","walletIcon","infoContainer","infoItem","addressField","readOnly","element","SocialsDrowdown","linkList","openDropwdown","setOpenDropdown","SocialsDropdown","dropdownMenu","StakingButtonPopover","isPopoverOpen","setIsPopoverOpen","anchorContainer","stopPropagation","onMouseEnter","popoverContainer","onMouseLeave","ButtonWeb","errorDialog","setErrorDialog","setCustomErrorMessage","store","tdecimals","tbalance","stakingInfo","setStakeBalance","walletBalance","connectedButton","balanceDiv","splitter","addressDiv","personIconDiv","Person","personIcon","MobileAccount","mobileAccount","AccountIcon","accountIcon","MobileMenu","mobileMenu","Drawer","anchor","closeMenu","PaperProps","BackdropProps","transition","SlideProps","drawerCloseIconDiv","MobileDrawer","drawerContent","mobileConnectWallet","Header","showMobileMenu","setShowMobileMenu","anchorEl","setAnchorEl","Boolean","pathname","buttonWeb","applyForIdo","currentTarget","buttonMobile","iconMobile","hideMenu","UsefulLinks","fancyButtons","genericLinks","fancyLinks","linksBlock","MediaLinks","mediaLinks","Disclaimer","Footer","TourTrigger","currentSaleStatus","openWhitelistTour","openDepositTour","openClaimTour","isMenuOpen","setIsMenuOpen","isWhitelistTourAvailable","isDepositTourAvailable","isClaimTourAvailable","clickedTourTrigger","tourTrigger","toursMenu","tourItem","BaseLayour","BaseLayout","PrivateRoute","ScrollToTop","childRef","current","PolygonModal","App","mainTour","whitelistTour","isPolygonModalOpen","setIsPolygonModalOpen","_sendx","initialize","teamId","_lpData","_wpEnabled","_wpChildWindow","_popupData","_formData","history","route","newestOnTop","rtl","pauseOnFocusLoss","Flip","mainTourClasses","maskClassName","mask","rounded","startAt","steps","onRequestClose","disableFocusLock","disableKeyboardNavigation","disableDotsNavigation","nextButton","prevButton","showButtons","hostname","match","connectors","queryClient","QueryClient","ReactDOM","CookiesProvider","getLibrary","library","pollingInterval","client","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.b05ce5ab.chunk.js","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"adminPanel\":\"AdminPanel_adminPanel__2YHzH\",\"mainText\":\"AdminPanel_mainText__wLaBc\",\"buttons\":\"AdminPanel_buttons__p70p_\",\"infoButton\":\"AdminPanel_infoButton__qbH6t\",\"confirmButton\":\"AdminPanel_confirmButton__3b6Sw\",\"formSection\":\"AdminPanel_formSection__1YPXL\",\"tablesSection\":\"AdminPanel_tablesSection__2HVKl\",\"tableDiv\":\"AdminPanel_tableDiv__dyAeG\",\"collapsibleContent\":\"AdminPanel_collapsibleContent__poaij\",\"collapsibleHeader\":\"AdminPanel_collapsibleHeader__v_xoh\",\"collapsibleHeaderisOpen\":\"AdminPanel_collapsibleHeaderisOpen__eypMr\",\"sectionHeader\":\"AdminPanel_sectionHeader__2WTIk\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"stakeCard\":\"StakeCard_stakeCard___oO_j\",\"cardHeader\":\"StakeCard_cardHeader__2vKYe\",\"headerIcon\":\"StakeCard_headerIcon__EVuov\",\"headerText\":\"StakeCard_headerText__16B4W\",\"headerInfoIcon\":\"StakeCard_headerInfoIcon__2o_2j\",\"cardContent\":\"StakeCard_cardContent__eSrrZ\",\"input\":\"StakeCard_input__3fTqa\",\"inputFields\":\"StakeCard_inputFields__1MIK8\",\"inputField\":\"StakeCard_inputField__qTpJi\",\"inputFieldPostpend\":\"StakeCard_inputFieldPostpend__d_P3T\",\"inputHeader\":\"StakeCard_inputHeader__3Dmaw\",\"headerBalance\":\"StakeCard_headerBalance__15oT6\",\"headerMax\":\"StakeCard_headerMax__97G5h\",\"percentSlider\":\"StakeCard_percentSlider__2MSVh\",\"confirmationButton\":\"StakeCard_confirmationButton__18Kzn\",\"stakeButton\":\"StakeCard_stakeButton__3j1ee\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ReferralsSection\":\"ReferralsSection_ReferralsSection__7FtZf\",\"referralValues\":\"ReferralsSection_referralValues__1R-fl\",\"linkInfo\":\"ReferralsSection_linkInfo__3TNf5\",\"valueDiv\":\"ReferralsSection_valueDiv__3bvF6\",\"time\":\"ReferralsSection_time__1tb_5\",\"actions\":\"ReferralsSection_actions__3Lu_8\",\"claimButton\":\"ReferralsSection_claimButton__3yYz_\",\"depositToStakingButton\":\"ReferralsSection_depositToStakingButton__2mnNX\",\"referrerWalletAddress\":\"ReferralsSection_referrerWalletAddress__3ZihW\",\"referralLink\":\"ReferralsSection_referralLink__3V-48\",\"link\":\"ReferralsSection_link__1ZskX\",\"separator\":\"ReferralsSection_separator__2HPje\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"allocationStaking\":\"AllocationStaking_allocationStaking__2VTzA\",\"chatTitle\":\"AllocationStaking_chatTitle__2b9J1\",\"pageTitle\":\"AllocationStaking_pageTitle__3-yqQ\",\"mainText\":\"AllocationStaking_mainText__29PtV\",\"infoButton\":\"AllocationStaking_infoButton__2NuHy\",\"vpCard\":\"AllocationStaking_vpCard__rrDWi\",\"switcherContainer\":\"AllocationStaking_switcherContainer__1Q4w_\",\"pageContent\":\"AllocationStaking_pageContent__2kfhJ\",\"column\":\"AllocationStaking_column__2-C1D\",\"infoCards\":\"AllocationStaking_infoCards__1gchd\",\"stakingCards\":\"AllocationStaking_stakingCards__1UQ3l\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"stakeCard\":\"FundCard_stakeCard__2Ch30\",\"cardHeader\":\"FundCard_cardHeader__2ftVK\",\"headerIcon\":\"FundCard_headerIcon__aJa9Y\",\"headerText\":\"FundCard_headerText__1DO_Q\",\"headerInfoIcon\":\"FundCard_headerInfoIcon__8H1GI\",\"cardContent\":\"FundCard_cardContent__3FBT8\",\"input\":\"FundCard_input__1RASw\",\"inputFields\":\"FundCard_inputFields__1T53T\",\"inputField\":\"FundCard_inputField__2QaPv\",\"inputFieldPostpend\":\"FundCard_inputFieldPostpend__2tIs3\",\"inputHeader\":\"FundCard_inputHeader__1W3L_\",\"headerBalance\":\"FundCard_headerBalance__1mF3d\",\"headerMax\":\"FundCard_headerMax__dMiAB\",\"percentSlider\":\"FundCard_percentSlider__3iap1\",\"confirmationButton\":\"FundCard_confirmationButton__3mQW2\",\"stakeButton\":\"FundCard_stakeButton__1Qk-z\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainInfo\":\"MainInfo_mainInfo__3VIQD\",\"title\":\"MainInfo_title__DKS_q\",\"text\":\"MainInfo_text__2Xxvb\",\"media\":\"MainInfo_media__1KlNg\",\"actionBlock\":\"MainInfo_actionBlock__2m0LV\",\"buttonBlock\":\"MainInfo_buttonBlock__1v7rR\",\"depositWarning\":\"MainInfo_depositWarning__j0Hi5\",\"inputs\":\"MainInfo_inputs__44iWC\",\"inputFieldWrapper\":\"MainInfo_inputFieldWrapper__2I9BY\",\"inputField\":\"MainInfo_inputField__3VFwt\",\"inputFieldWrapperDIV\":\"MainInfo_inputFieldWrapperDIV__3HNd8\",\"max\":\"MainInfo_max__185Xd\",\"mediaMobile\":\"MainInfo_mediaMobile__3HSMc\",\"mobileLogoDiv\":\"MainInfo_mobileLogoDiv__9zyHE\",\"mobileLogo\":\"MainInfo_mobileLogo__3H7XA\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Info\":\"Info_Info__ToCGg\",\"infoBlocks\":\"Info_infoBlocks__2dkeY\",\"infoBlock\":\"Info_infoBlock__1EzJx\",\"link\":\"Info_link__2C8S6\",\"title\":\"Info_title__3Lx5D\",\"text\":\"Info_text__20osM\",\"participateBlocks\":\"Info_participateBlocks__1FLZg\",\"participateBlock\":\"Info_participateBlock__11dFB\",\"imgBlock\":\"Info_imgBlock__3MD8f\",\"titleBlock\":\"Info_titleBlock__tiOUA\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TableRow\":\"TableRow_TableRow__3E0Hj\",\"infoBlock\":\"TableRow_infoBlock__3i8W9\",\"name\":\"TableRow_name__2f_WK\",\"symbol\":\"TableRow_symbol__1Cqq_\",\"divUpdate\":\"TableRow_divUpdate__nippx\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"valuePriceCard\":\"ValuePriceCard_valuePriceCard__sgZ4d\",\"verticalSplitter\":\"ValuePriceCard_verticalSplitter__2yPKm\",\"subsection\":\"ValuePriceCard_subsection__3TIxS\",\"iconDiv\":\"ValuePriceCard_iconDiv__2xaNF\",\"icons\":\"ValuePriceCard_icons__3N_yI\",\"subsectionTitle\":\"ValuePriceCard_subsectionTitle__3n7QM\",\"subsectionContent\":\"ValuePriceCard_subsectionContent__3uB0r\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TableRow\":\"TableRow_TableRow__1PkFb\",\"infoBlock\":\"TableRow_infoBlock__2PWJK\",\"name\":\"TableRow_name__1J-zL\",\"symbol\":\"TableRow_symbol__1ND4P\",\"divUpdate\":\"TableRow_divUpdate__3vgxd\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TableRow\":\"TableRow_TableRow__2fRdO\",\"infoBlock\":\"TableRow_infoBlock__1-jIB\",\"name\":\"TableRow_name__vRkBZ\",\"symbol\":\"TableRow_symbol__2AfIS\",\"divUpdate\":\"TableRow_divUpdate__1kEtT\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dialog\":\"AccountDialog_dialog__gH60D\",\"dialogHeader\":\"AccountDialog_dialogHeader__3-MDc\",\"closeIcon\":\"AccountDialog_closeIcon__244Gi\",\"walletInfo\":\"AccountDialog_walletInfo__1F2Vy\",\"walletIconWrapper\":\"AccountDialog_walletIconWrapper__2WR7S\",\"walletIcon\":\"AccountDialog_walletIcon__1Icq0\",\"infoContainer\":\"AccountDialog_infoContainer__-W2sU\",\"infoItem\":\"AccountDialog_infoItem__1ZomL\",\"addressField\":\"AccountDialog_addressField__3b2KL\",\"actions\":\"AccountDialog_actions__1OPtf\",\"element\":\"AccountDialog_element__1fjdG\"};","export default __webpack_public_path__ + \"static/media/link_arrow.78de4625.svg\";","export default __webpack_public_path__ + \"static/media/first.c662895b.svg\";","export default __webpack_public_path__ + \"static/media/third.bc7e496c.svg\";","export default __webpack_public_path__ + \"static/media/second.8db5690b.svg\";","export default __webpack_public_path__ + \"static/media/fourth.e51ee2f4.svg\";","export default __webpack_public_path__ + \"static/media/first_checked.1305ab13.svg\";","export default __webpack_public_path__ + \"static/media/third_checked.48659387.svg\";","export default __webpack_public_path__ + \"static/media/fourth_checked.3ba2fb94.svg\";","export const RpcProvider = process.env.REACT_APP_RPC_PROVIDER;","import { initializeConnector } from \"@web3-react/core\";\nimport { MetaMask } from \"@web3-react/metamask\";\nimport { WalletConnect } from \"@web3-react/walletconnect-v2\";\nimport { RpcProvider } from \"../../../consts/rpc\";\n\nexport const [metaMask, hooks] = initializeConnector(\n (actions) => new MetaMask({ actions })\n);\nexport const [walletConnect, walletConnectHooks] = initializeConnector(\n (actions) =>\n new WalletConnect({\n actions,\n options: {\n projectId: \"2e23d1f33aa1cdaabcfbff7168090b36\",\n chains: process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\").map((e) =>\n parseInt(e)\n ),\n showQrModal: true,\n },\n })\n);\n","export default __webpack_public_path__ + \"static/media/warning.1622617a.png\";","import Button from '@mui/material/Button';\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport { useEffect } from 'react';\nimport ErrorIcon from './resources/warning.png'\n\nimport classes from './ErrorDialog.module.scss';\n\nconst ErrorDialog = ({ show, customMessage, message, setError }) => {\n const handleClose = () => {\n setError(false);\n }\n\n return (<>\n handleClose()}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n fullWidth={true}\n maxWidth={'md'}\n\n >\n {/*
\n \n
*/}\n \n {!!customMessage && !!message && <>\n

\n {customMessage}\n

\n {/*original message(removed) */}\n\n {/*

Original message:

\n

\n {message + \"\"}\n

*/}\n }\n\n {/* purely original message(removed) */}\n {!customMessage && false && <>\n

\n {message}\n

\n }\n\n {!message &&\n

\n {customMessage}\n

\n }\n
\n
handleClose()}>\n \n
\n \n );\n}\n\nexport default ErrorDialog;","import axios from 'axios';\n\nconst KYC_LINK = `https://kyc.blockpass.org/kyc/1.0/connect/peakdefi_launchpad_c0f15/refId/`\nlet config = {\n headers: { 'Authorization': 'fd282ef5de1f9bbaa95901f295d99e26' }\n}\nexport function getUserDataKYC(wallet){\n return axios.get(KYC_LINK+wallet, config);\n}\n","import { useEffect } from \"react\";\nimport {\n hooks,\n metaMask,\n walletConnectHooks,\n} from \"../../scenes/Header/ProviderDialog/Metamask.js\";\n\nexport const useMergedProvidersState = () => {\n const accounts = hooks.useAccounts();\n\n const walletConnectAccounts = walletConnectHooks.useAccounts();\n\n const chainId = hooks.useChainId();\n const walletConnectChainId = walletConnectHooks.useChainId();\n\n const provider = hooks.useProvider();\n\n const walletConnectProvider = walletConnectHooks.useProvider();\n\n return {\n accounts: accounts ?? walletConnectAccounts ?? [],\n chainId: chainId ?? walletConnectChainId,\n provider: provider ?? walletConnectProvider,\n };\n};\n","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const userWalletSlice = createSlice({\n name: 'wallet',\n initialState: {\n address: null,\n balance: 0,\n decimal: 8\n }, \n\n reducers: {\n setAddress: (state, action)=> {\n if(action.payload===undefined)\n return {...state, address: null}\n return {...state, address: action.payload}\n },\n\n setBalance: (state, action)=>{\n return {...state, balance: action.payload}\n },\n\n setDecimal: (state, action)=> {\n return {...state, decimal: action.payload}\n }\n \n },\n});\n\nexport const {setAddress, setBalance, setDecimal} = userWalletSlice.actions;\n\nexport const selectAddress = state=> state.userWallet.address;\n\nexport default userWalletSlice.reducer;","export const SALE_ABI = `[\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"tierWeights\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"tierPoints\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"addTiers\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"calculateTokenForTier\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"depositTokens\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"tokenAddress\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"extrimalWithdraw\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"numberOfWinners\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"make_lottary\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"participate\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"payable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"registerForSale\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"components\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\t\t\"name\": \"amountPaid\",\n\t\t\t\t\t\t\"type\": \"uint256\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\t\t\"name\": \"timeParticipated\",\n\t\t\t\t\t\t\"type\": \"uint256\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\t\t\"name\": \"tierId\",\n\t\t\t\t\t\t\"type\": \"uint256\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\t\t\"name\": \"userWallet\",\n\t\t\t\t\t\t\"type\": \"address\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"internalType\": \"struct PeakDefiSale.ParticipationCreate[]\",\n\t\t\t\t\"name\": \"usersData\",\n\t\t\t\t\"type\": \"tuple[]\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setParticipatedExternal\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_registrationTimeStarts\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_registrationTimeEnds\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setRegistrationTime\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_token\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_tokenPriceInBUSD\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_amountOfTokensToSell\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_saleStart\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_saleEnd\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_tokensUnlockTime\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_minimumTokenDeposit\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"isBSCNetwork\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setSaleParams\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_saleStart\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_saleEnd\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setSaleTime\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"components\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\t\t\"type\": \"uint256\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\t\t\"name\": \"userWallet\",\n\t\t\t\t\t\t\"type\": \"address\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"internalType\": \"struct PeakDefiSale.UserStake[]\",\n\t\t\t\t\"name\": \"usersStake\",\n\t\t\t\t\"type\": \"tuple[]\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setUserDeposit\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"_unlockingTimes\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"_percents\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setVestingParams\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address[]\",\n\t\t\t\t\"name\": \"users\",\n\t\t\t\t\"type\": \"address[]\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tierId\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setWhitelistUsers\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"payable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_admin\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_allocationStaking\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"constructor\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"price\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"updateTokenPriceInBUSD\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"withdrawEarnings\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"withdrawLeftover\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"withdrawLeftOverUser\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"portionIds\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"withdrawMultiplePortions\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"portionId\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"withdrawTokens\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"addressToRoundRegisteredFor\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"admin\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"allocationStakingContract\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"contract IAllocationStaking\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"BUSDToken\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"contract IERC20Extented\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"userAddress\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tokenPercent\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"calculateAmountWithdrawingPortionPub\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"userAddress\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"getClaimedInfo\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool[]\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool[]\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"getVestingInfo\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"isParticipated\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"isWhitelisted\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"loteryWallets\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"numberOfParticipants\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"registration\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"registrationTimeStarts\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"registrationTimeEnds\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"numberOfRegistrants\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"sale\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"contract IERC20Extented\",\n\t\t\t\t\"name\": \"token\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"isCreated\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"earningsWithdrawn\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"leftoverWithdrawn\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tokenPriceInBUST\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amountOfTokensToSell\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"totalBUSDRaised\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"saleEnd\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"saleStart\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tokensUnlockTime\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"minimumTokenDeposit\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"configRunned\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"isBSCNetwork\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"tierIdToTier\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"participants\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tierWeight\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"BUSTDeposited\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"minToStake\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"maxToStake\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tokenForTier\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"tokensDeposited\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"totalTierWeight\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"unSoldToken\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"userToParticipation\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amountPaid\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"timeParticipated\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tierId\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"isTokenLeftWithdrawn\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"userToStakeInfo\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"userWallet\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"vestingPercentPerPortion\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"vestingPortionsUnlockTime\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"Whitelist\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"userAddress\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"userTierId\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"allowToBuy\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t}\n]`\n\nexport const TOKEN_ABI = `[\n\t{\n\t\t\"inputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"constructor\"\n\t},\n\t{\n\t\t\"anonymous\": false,\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"indexed\": true,\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"owner\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"indexed\": true,\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"spender\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"indexed\": false,\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"value\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"Approval\",\n\t\t\"type\": \"event\"\n\t},\n\t{\n\t\t\"anonymous\": false,\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"indexed\": true,\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"previousOwner\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"indexed\": true,\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"newOwner\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"OwnershipTransferred\",\n\t\t\"type\": \"event\"\n\t},\n\t{\n\t\t\"anonymous\": false,\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"indexed\": true,\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"from\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"indexed\": true,\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"to\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"indexed\": false,\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"value\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"Transfer\",\n\t\t\"type\": \"event\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"owner\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"spender\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"allowance\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"spender\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"approve\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"account\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"balanceOf\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"decimals\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint8\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint8\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"spender\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"subtractedValue\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"decreaseAllowance\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"getOwner\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"spender\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"addedValue\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"increaseAllowance\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"mint\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"name\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"string\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"string\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"owner\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"renounceOwnership\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"symbol\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"string\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"string\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"totalSupply\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"recipient\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"transfer\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"sender\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"recipient\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"transferFrom\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"newOwner\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"transferOwnership\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t}\n]`\n\nexport const REFERRAL_ABI = `[\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"_isContractActive\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"changeContractActive\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_moderator\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"changeModerator\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_updatePrice\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"changeUpdatePrice\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"claimReward\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_user\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_rewardDecrease\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_refferals\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"decreaseUserReward\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"tokenAddress\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"extrimalWithdraw\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"fundReward\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_user\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_rewardIncrease\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_refferals\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"increaseUserReward\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"requestUpdate\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"contract IERC20\",\n\t\t\t\t\"name\": \"_erc20\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setRewardToken\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address[]\",\n\t\t\t\t\"name\": \"_users\",\n\t\t\t\t\"type\": \"address[]\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"_rewards\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"_numberOfRefferal\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setUserReward\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_updateCommission\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"_isContractActive\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"constructor\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"get_contract_info\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"get_contract_info_admin\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"isContractActive\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"updateCommission\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"userInfo\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"reward\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"totalEarned\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"numberOfRefferal\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t}\n]`\n\nexport const FAKE_CONTRACT = `[\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"tierWeights\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"tierPoints\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"addTiers\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"calculateTokenForTier\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"depositTokens\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"tokenAddress\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"extrimalWithdraw\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amount\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"participate\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"payable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"registerForSale\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_registrationTimeStarts\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_registrationTimeEnds\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setRegistrationTime\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_token\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_saleOwner\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_tokenPriceInBUSD\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_amountOfTokensToSell\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_saleStart\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_saleEnd\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_tokensUnlockTime\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"_minimumTokenDeposit\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setSaleParams\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"_unlockingTimes\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"_percents\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setVestingParams\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address[]\",\n\t\t\t\t\"name\": \"users\",\n\t\t\t\t\"type\": \"address[]\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tierId\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setWhitelistUsers\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"payable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_admin\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_allocationStaking\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"constructor\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"price\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"updateTokenPriceInBUSD\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"withdrawEarnings\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"withdrawLeftover\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"portionIds\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"withdrawMultiplePortions\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"portionId\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"withdrawTokens\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"portionId\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tokenToWithdraw\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"withdrawTokensFirstPortion\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"addressToRoundRegisteredFor\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"admin\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"allocationStakingContract\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"contract IAllocationStaking\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"BUSDToken\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"contract IERC20Extented\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"userAddress\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tokenPercent\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"calculateAmountWithdrawingPortionPub\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"getVestingInfo\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256[]\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256[]\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"isParticipated\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"isWhitelisted\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"loteryWallets\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"numberOfParticipants\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"registration\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"registrationTimeStarts\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"registrationTimeEnds\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"numberOfRegistrants\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"sale\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"contract IERC20Extented\",\n\t\t\t\t\"name\": \"token\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"isCreated\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"earningsWithdrawn\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"leftoverWithdrawn\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"saleOwner\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tokenPriceInBUST\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amountOfTokensToSell\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"totalBUSDRaised\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"saleEnd\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"saleStart\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tokensUnlockTime\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"minimumTokenDeposit\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"configRunned\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"tierIdToTier\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"participants\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tierWeight\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"BUSTDeposited\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"minToStake\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"maxToStake\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tokenForTier\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"tokensDeposited\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"totalTierWeight\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"unSoldToken\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"userToParticipation\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"amountPaid\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"timeParticipated\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"tierId\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"isTokenLeftWithdrawn\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"vestingPercentPerPortion\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"vestingPortionsUnlockTime\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"Whitelist\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"userAddress\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"userTierId\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"allowToBuy\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t}\n]`","import { RpcProvider } from \"./rpc\";\nimport WalletConnectProvider from \"@walletconnect/ethereum-provider\";\n\nexport const rpcWalletConnectProvider = new WalletConnectProvider({\n rpc: {\n 56: RpcProvider\n },\n});","import { useWeb3React } from \"@web3-react/core\";\nimport { ethers, BigNumber, providers } from \"ethers\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { useEffect, useState } from \"react\";\nimport { SALE_ABI } from \"../../consts/abi\";\nimport { RpcProvider } from \"../../consts/rpc\";\nimport { rpcWalletConnectProvider } from \"../../consts/walletConnect\";\nimport { hooks, metaMask } from \"../../scenes/Header/ProviderDialog/Metamask\";\n\nconst useJSONContract = (contract_address, ABI) => {\n const { accounts, chainId } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const [contract, setContract] = useState(null);\n\n const updateContract = () => {\n const jsonProvider = new ethers.providers.JsonRpcProvider(RpcProvider);\n const jsonSaleContract = new ethers.Contract(\n contract_address,\n ABI,\n jsonProvider\n );\n setContract(jsonSaleContract);\n };\n\n useEffect(() => {\n if (!contract_address || contract_address==='0x') return;\n\n updateContract();\n }, [account, contract_address, ABI]);\n return { contract, updateContract };\n};\n\nexport default useJSONContract;\n","import { useEffect } from \"react\";\nimport { useState } from \"react\";\n\nexport const useSelectStakingVersion = () => {\n const [stakingVersion, setStakingVersion] = useState(\n parseInt(localStorage.getItem(\"stakingVersion\") ?? 1)\n );\n\n useEffect(() => {\n const storageData = localStorage.getItem(\"stakingVersion\");\n if (storageData) {\n setStakingVersion(parseInt(storageData));\n } else {\n localStorage.setItem(\"stakingVersion\", 1);\n window.dispatchEvent(new Event(\"storage\"));\n }\n\n const storageListener = (e) => {\n const storageData = localStorage.getItem(\"stakingVersion\");\n\n if (storageData) setStakingVersion(parseInt(storageData));\n };\n\n window.addEventListener(\"storage\", storageListener);\n\n return () => {\n window.removeEventListener(\"storage\", storageListener);\n };\n }, []);\n\n const toggleStakingVersion = () => {\n if (stakingVersion === 1) {\n switchToStakingVersion(2);\n } else {\n switchToStakingVersion(1);\n }\n };\n\n const switchToStakingVersion = (version) => {\n //setStakingVersion(version);\n localStorage.setItem(\"stakingVersion\", version);\n window.dispatchEvent(new Event(\"storage\"));\n };\n\n const switchToStakingV1 = () => {\n switchToStakingVersion(1);\n };\n\n const switchToStakingV2 = () => {\n switchToStakingVersion(2);\n };\n\n return {\n stakingVersion,\n toggleStakingVersion,\n switchToStakingV1,\n switchToStakingV2,\n };\n};\n","export const abi = [\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"_amount\",\n type: \"uint256\",\n },\n ],\n name: \"deposit\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"_amount\",\n type: \"uint256\",\n },\n ],\n name: \"fund\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"contract IERC20\",\n name: \"_erc20\",\n type: \"address\",\n },\n ],\n name: \"setStakingToken\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"_amount\",\n type: \"uint256\",\n },\n ],\n name: \"withdraw\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_user\",\n type: \"address\",\n },\n ],\n name: \"deposited\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"stakingStart\",\n type: \"uint256\",\n },\n ],\n name: \"getFeeInternal\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"amountToWithdraw\",\n type: \"uint256\",\n },\n ],\n name: \"getWithdrawFee\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"paidOut\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"pending\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"stakingPercent\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"totalDeposits\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"totalRewards\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"userInfo\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"stakingStart\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n];\n\nexport const stakingContractAddress =\n process.env.REACT_APP_STAKING_CONTRACT_ADDRESS;\n\nexport const abiV2 = [\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"blockReferralRewards\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"blockStakingRewards\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"timeStart\",\n type: \"uint256\",\n },\n ],\n name: \"changeUserStakingStart\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"claimReferralRewards\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: false,\n internalType: \"address\",\n name: \"user\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"ClaimReferralRewards\",\n type: \"event\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"_amount\",\n type: \"uint256\",\n },\n ],\n name: \"decreasRederralRewards\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"_amount\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"referrer\",\n type: \"address\",\n },\n ],\n name: \"deposit\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"tokenAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"extrimalWithdraw\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"_amount\",\n type: \"uint256\",\n },\n ],\n name: \"fund\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"harvest\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"_amount\",\n type: \"uint256\",\n },\n ],\n name: \"increaseRederralRewards\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"referralRewardsToStake\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: false,\n internalType: \"address\",\n name: \"user\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"ReferralRewardsToStake\",\n type: \"event\",\n },\n {\n inputs: [\n {\n internalType: \"uint256[]\",\n name: \"_referrallPercents\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"_referrallBreakPoints\",\n type: \"uint256[]\",\n },\n ],\n name: \"setReferralInfo\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256[]\",\n name: \"_commisionDays\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"_commisionPercent\",\n type: \"uint256[]\",\n },\n ],\n name: \"setStakingCommision\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"_stakingPercent\",\n type: \"uint256\",\n },\n ],\n name: \"setStakingPercent\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"contract IERC20\",\n name: \"_erc20\",\n type: \"address\",\n },\n ],\n name: \"setStakingToken\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"unBlockReferralRewards\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"unBlockStakingRewards\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"referralAddress\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"referrerAddress\",\n type: \"address\",\n },\n ],\n name: \"userAddReferral\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: false,\n internalType: \"address\",\n name: \"user\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n {\n indexed: false,\n internalType: \"address\",\n name: \"referrer\",\n type: \"address\",\n },\n ],\n name: \"UserDeposit\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: false,\n internalType: \"address\",\n name: \"user\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"UserHarvest\",\n type: \"event\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"referralAddress\",\n type: \"address\",\n },\n {\n internalType: \"address\",\n name: \"referrerAddress\",\n type: \"address\",\n },\n ],\n name: \"userRemoveReferral\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: false,\n internalType: \"address\",\n name: \"user\",\n type: \"address\",\n },\n {\n indexed: false,\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"UserWithdraw\",\n type: \"event\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"_amount\",\n type: \"uint256\",\n },\n ],\n name: \"withdraw\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"commisionDays\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"commisionPercent\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_user\",\n type: \"address\",\n },\n ],\n name: \"deposited\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"stakingStart\",\n type: \"uint256\",\n },\n ],\n name: \"getFeeInternal\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getStakingPercent\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"amountToWithdraw\",\n type: \"uint256\",\n },\n ],\n name: \"getWithdrawFee\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"paidOut\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"pending\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"referralBreakPoint\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"referralPercents\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"secondsPreYear\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"stakingPercent\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"stakingPercentChangeDate\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"totalDeposits\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"totalReferallRewards\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"totalRewards\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"userInfo\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"stakingStart\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"stakingRewardTime\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"referralReward\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"totalReferralRewards\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"referrer\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"referrals\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"harvest\",\n type: \"uint256\",\n },\n {\n internalType: \"bool\",\n name: \"isStakingBlocked\",\n type: \"bool\",\n },\n {\n internalType: \"bool\",\n name: \"isReferralBlocked\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n];\n\nexport const stakingContractAddressV2 =\n process.env.REACT_APP_STAKINGV2_CONTRACT_ADDRESS;\n","import useJSONContract from \"hooks/useJSONContract/useJSONContract\";\nimport { useSelectStakingVersion } from \"hooks/useSelectStakingVersion/useSelectStakingVersion\";\nimport {\n stakingContractAddress,\n stakingContractAddressV2,\n abiV2,\n abi,\n} from \"scenes/AllocationStaking/services/consts\";\n\nexport const useJSONStakingContract = () => {\n const { stakingVersion } = useSelectStakingVersion();\n\n const { contract, updateContract } = useJSONContract(\n stakingVersion === 1 ? stakingContractAddress : stakingContractAddressV2,\n stakingVersion === 1 ? abi : abiV2\n );\n\n return { updateContract, contract };\n};\n","import { useWeb3React } from \"@web3-react/core\";\nimport { ethers, BigNumber, providers } from \"ethers\";\nimport { useEffect, useState } from \"react\";\nimport { SALE_ABI } from \"../../consts/abi\";\nimport { rpcWalletConnectProvider } from \"../../consts/walletConnect\";\nimport {\n hooks,\n metaMask,\n walletConnect,\n walletConnectHooks,\n} from \"scenes/Header/ProviderDialog/Metamask\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport {RpcProvider} from '../../consts/rpc'\nconst defaultProvider = new ethers.providers.JsonRpcProvider(RpcProvider);\n\nexport const useProviderHook = () => {\n const { useProvider, useIsActive } = hooks;\n const { useProvider: useWalletConnectProvider } = walletConnectHooks;\n\n const isActive = useIsActive();\n\n const provider = useProvider();\n const walletConnectProvider = useWalletConnectProvider();\n\n const { accounts } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n const { ethereum } = window;\n\n \n\n if (isActive) {\n if(provider)\n return provider;\n } else {\n if(walletConnectProvider)\n return walletConnectProvider;\n }\n return defaultProvider\n\n return null;\n};\n","import { useWeb3React } from \"@web3-react/core\";\nimport { ethers, providers } from \"ethers\";\nimport { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport { rpcWalletConnectProvider } from \"../../consts/walletConnect\";\n\nimport {\n abi,\n abiV2,\n stakingContractAddress,\n stakingContractAddressV2,\n} from \"../../scenes/AllocationStaking/services/consts\";\nimport { hooks, metaMask } from \"../../scenes/Header/ProviderDialog/Metamask\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { useSelectStakingVersion } from \"hooks/useSelectStakingVersion/useSelectStakingVersion\";\n\nconst useStakingContract = () => {\n const { accounts } = useMergedProvidersState();\n const { stakingVersion } = useSelectStakingVersion();\n\n const account = accounts?.length > 0 ? accounts[0] : null;\n const [stakingContract, setStakingContract] = useState(null);\n const { ethereum } = window;\n const provider = useProviderHook();\n\n useEffect(() => {\n const signer = provider?.getSigner(account);\n\n setStakingContract(\n new ethers.Contract(\n stakingVersion === 1\n ? stakingContractAddress\n : stakingContractAddressV2,\n stakingVersion === 1 ? abi : abiV2,\n signer\n )\n );\n\n return () => {\n stakingContract?.removeAllListeners();\n };\n }, [ethereum, account, stakingVersion, provider]);\n\n return {\n stakingContract,\n };\n};\n\nexport default useStakingContract;\n","export const abi =\n[\n {\n \"inputs\": [],\n \"stateMutability\": \"nonpayable\",\n \"type\": \"constructor\"\n },\n {\n \"anonymous\": false,\n \"inputs\": [\n {\n \"indexed\": true,\n \"internalType\": \"address\",\n \"name\": \"owner\",\n \"type\": \"address\"\n },\n {\n \"indexed\": true,\n \"internalType\": \"address\",\n \"name\": \"spender\",\n \"type\": \"address\"\n },\n {\n \"indexed\": false,\n \"internalType\": \"uint256\",\n \"name\": \"value\",\n \"type\": \"uint256\"\n }\n ],\n \"name\": \"Approval\",\n \"type\": \"event\"\n },\n {\n \"anonymous\": false,\n \"inputs\": [\n {\n \"indexed\": true,\n \"internalType\": \"address\",\n \"name\": \"previousOwner\",\n \"type\": \"address\"\n },\n {\n \"indexed\": true,\n \"internalType\": \"address\",\n \"name\": \"newOwner\",\n \"type\": \"address\"\n }\n ],\n \"name\": \"OwnershipTransferred\",\n \"type\": \"event\"\n },\n {\n \"anonymous\": false,\n \"inputs\": [\n {\n \"indexed\": true,\n \"internalType\": \"address\",\n \"name\": \"from\",\n \"type\": \"address\"\n },\n {\n \"indexed\": true,\n \"internalType\": \"address\",\n \"name\": \"to\",\n \"type\": \"address\"\n },\n {\n \"indexed\": false,\n \"internalType\": \"uint256\",\n \"name\": \"value\",\n \"type\": \"uint256\"\n }\n ],\n \"name\": \"Transfer\",\n \"type\": \"event\"\n },\n {\n \"inputs\": [\n {\n \"internalType\": \"address\",\n \"name\": \"owner\",\n \"type\": \"address\"\n },\n {\n \"internalType\": \"address\",\n \"name\": \"spender\",\n \"type\": \"address\"\n }\n ],\n \"name\": \"allowance\",\n \"outputs\": [\n {\n \"internalType\": \"uint256\",\n \"name\": \"\",\n \"type\": \"uint256\"\n }\n ],\n \"stateMutability\": \"view\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [\n {\n \"internalType\": \"address\",\n \"name\": \"spender\",\n \"type\": \"address\"\n },\n {\n \"internalType\": \"uint256\",\n \"name\": \"amount\",\n \"type\": \"uint256\"\n }\n ],\n \"name\": \"approve\",\n \"outputs\": [\n {\n \"internalType\": \"bool\",\n \"name\": \"\",\n \"type\": \"bool\"\n }\n ],\n \"stateMutability\": \"nonpayable\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [\n {\n \"internalType\": \"address\",\n \"name\": \"account\",\n \"type\": \"address\"\n }\n ],\n \"name\": \"balanceOf\",\n \"outputs\": [\n {\n \"internalType\": \"uint256\",\n \"name\": \"\",\n \"type\": \"uint256\"\n }\n ],\n \"stateMutability\": \"view\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [],\n \"name\": \"decimals\",\n \"outputs\": [\n {\n \"internalType\": \"uint8\",\n \"name\": \"\",\n \"type\": \"uint8\"\n }\n ],\n \"stateMutability\": \"view\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [\n {\n \"internalType\": \"address\",\n \"name\": \"spender\",\n \"type\": \"address\"\n },\n {\n \"internalType\": \"uint256\",\n \"name\": \"subtractedValue\",\n \"type\": \"uint256\"\n }\n ],\n \"name\": \"decreaseAllowance\",\n \"outputs\": [\n {\n \"internalType\": \"bool\",\n \"name\": \"\",\n \"type\": \"bool\"\n }\n ],\n \"stateMutability\": \"nonpayable\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [],\n \"name\": \"getOwner\",\n \"outputs\": [\n {\n \"internalType\": \"address\",\n \"name\": \"\",\n \"type\": \"address\"\n }\n ],\n \"stateMutability\": \"view\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [\n {\n \"internalType\": \"address\",\n \"name\": \"spender\",\n \"type\": \"address\"\n },\n {\n \"internalType\": \"uint256\",\n \"name\": \"addedValue\",\n \"type\": \"uint256\"\n }\n ],\n \"name\": \"increaseAllowance\",\n \"outputs\": [\n {\n \"internalType\": \"bool\",\n \"name\": \"\",\n \"type\": \"bool\"\n }\n ],\n \"stateMutability\": \"nonpayable\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [\n {\n \"internalType\": \"uint256\",\n \"name\": \"amount\",\n \"type\": \"uint256\"\n }\n ],\n \"name\": \"mint\",\n \"outputs\": [\n {\n \"internalType\": \"bool\",\n \"name\": \"\",\n \"type\": \"bool\"\n }\n ],\n \"stateMutability\": \"nonpayable\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [],\n \"name\": \"name\",\n \"outputs\": [\n {\n \"internalType\": \"string\",\n \"name\": \"\",\n \"type\": \"string\"\n }\n ],\n \"stateMutability\": \"view\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [],\n \"name\": \"owner\",\n \"outputs\": [\n {\n \"internalType\": \"address\",\n \"name\": \"\",\n \"type\": \"address\"\n }\n ],\n \"stateMutability\": \"view\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [],\n \"name\": \"renounceOwnership\",\n \"outputs\": [],\n \"stateMutability\": \"nonpayable\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [],\n \"name\": \"symbol\",\n \"outputs\": [\n {\n \"internalType\": \"string\",\n \"name\": \"\",\n \"type\": \"string\"\n }\n ],\n \"stateMutability\": \"view\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [],\n \"name\": \"totalSupply\",\n \"outputs\": [\n {\n \"internalType\": \"uint256\",\n \"name\": \"\",\n \"type\": \"uint256\"\n }\n ],\n \"stateMutability\": \"view\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [\n {\n \"internalType\": \"address\",\n \"name\": \"recipient\",\n \"type\": \"address\"\n },\n {\n \"internalType\": \"uint256\",\n \"name\": \"amount\",\n \"type\": \"uint256\"\n }\n ],\n \"name\": \"transfer\",\n \"outputs\": [\n {\n \"internalType\": \"bool\",\n \"name\": \"\",\n \"type\": \"bool\"\n }\n ],\n \"stateMutability\": \"nonpayable\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [\n {\n \"internalType\": \"address\",\n \"name\": \"sender\",\n \"type\": \"address\"\n },\n {\n \"internalType\": \"address\",\n \"name\": \"recipient\",\n \"type\": \"address\"\n },\n {\n \"internalType\": \"uint256\",\n \"name\": \"amount\",\n \"type\": \"uint256\"\n }\n ],\n \"name\": \"transferFrom\",\n \"outputs\": [\n {\n \"internalType\": \"bool\",\n \"name\": \"\",\n \"type\": \"bool\"\n }\n ],\n \"stateMutability\": \"nonpayable\",\n \"type\": \"function\"\n },\n {\n \"inputs\": [\n {\n \"internalType\": \"address\",\n \"name\": \"newOwner\",\n \"type\": \"address\"\n }\n ],\n \"name\": \"transferOwnership\",\n \"outputs\": [],\n \"stateMutability\": \"nonpayable\",\n \"type\": \"function\"\n }\n]\n\nexport const tokenContractAddress = process.env.REACT_APP_TOKEN_CONTRACT_ADDRESS;\n","import { useWeb3React } from \"@web3-react/core\";\nimport { ethers, providers } from \"ethers\";\nimport { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport { rpcWalletConnectProvider } from \"../../consts/walletConnect\";\nimport {\n tokenContractAddress,\n abi as tokenAbi,\n} from \"../../scenes/AllocationStaking/components/StakeCard/services/consts\";\nimport { hooks, metaMask } from \"../../scenes/Header/ProviderDialog/Metamask\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst useTokenContract = () => {\n const { accounts, provider } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n const [tokenContract, setTokenContract] = useState(null);\n const { ethereum } = window;\n\n useEffect(() => {\n if (account && provider) {\n const signer = provider?.getSigner(account);\n\n if (signer) {\n setTokenContract(\n new ethers.Contract(tokenContractAddress, tokenAbi, signer)\n );\n }\n }\n }, [ethereum, account, provider]);\n\n return {\n tokenContract,\n };\n};\n\nexport default useTokenContract;\n","import { useQueries, useQuery } from \"@tanstack/react-query\";\nimport { setDecimal } from \"features/userWalletSlice\";\nimport { useJSONStakingContract } from \"hooks/useJSONStakingContract/useJSONStakingContract\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { useSelectStakingVersion } from \"hooks/useSelectStakingVersion/useSelectStakingVersion\";\nimport useStakingContract from \"hooks/useStakingContract/useStakingContract\";\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\nimport { useEffect } from \"react\";\nimport { useDispatch } from \"react-redux\";\n\nexport const useFetchMyStakingStats = () => {\n const { stakingContract } = useStakingContract();\n const { contract } = useJSONStakingContract();\n const { accounts } = useMergedProvidersState();\n const walletAddress = accounts[0];\n const { stakingVersion } = useSelectStakingVersion();\n\n return useQueries({\n queries: [\n {\n queryKey: [\n \"web3-userInfo\",\n stakingContract?.address,\n walletAddress,\n stakingVersion,\n accounts,\n contract,\n ],\n queryFn: () => {\n return stakingContract?.userInfo(walletAddress);\n },\n enabled: !!stakingContract && !!walletAddress,\n },\n {\n queryKey: [\"web3-stakingPercent\", contract?.address, stakingVersion],\n queryFn: () => {\n if (stakingVersion === 2) {\n return contract.getStakingPercent();\n }\n return contract.stakingPercent();\n },\n enabled: !!contract,\n },\n {\n queryKey: [\"web3-pending\", stakingContract?.address],\n queryFn: () => {\n return stakingContract.pending();\n },\n enabled: !!stakingContract,\n refetchInterval: 30000,\n },\n ],\n });\n};\n\nexport const useFetchTotalStakingStats = () => {\n const { contract } = useJSONStakingContract();\n\n return useQueries({\n queries: [\n {\n queryKey: [\"web3-json-totalDeposits\", contract?.address],\n queryFn: () => {\n return contract.totalDeposits();\n },\n enabled: !!contract,\n },\n {\n queryKey: [\"web3-json-paidOut\", contract?.address],\n queryFn: () => {\n return contract.paidOut();\n },\n enabled: !!contract,\n },\n ],\n });\n};\n\nexport const useFetchDecimals = () => {\n const { tokenContract } = useTokenContract();\n const { chainId } = useMergedProvidersState();\n\n return useQuery({\n queryKey: [\"web3-json-decimals\", tokenContract?.address, chainId],\n queryFn: () => {\n return tokenContract?.decimals();\n },\n\n initialData: 5,\n });\n};\n\nexport const useFetchWalletBalance = (walletAddress) => {\n const { tokenContract } = useTokenContract();\n\n return useQuery({\n queryKey: [\"web3-json-ballanceOf\", tokenContract?.address, walletAddress],\n queryFn: () => {\n console.log(\"REFETCH BALANCE\");\n return tokenContract?.balanceOf(walletAddress);\n },\n enabled: !!tokenContract,\n initialData: 0,\n });\n};\n","import React, { useEffect } from \"react\";\nimport classes from \"./Info.module.scss\";\nimport Arrow from \"../../../../resources/link_arrow.svg\";\nimport FirstImg from \"./images/first.svg\";\nimport SecondImg from \"./images/second.svg\";\nimport ThirdImg from \"./images/third.svg\";\nimport FourthImg from \"./images/fourth.svg\";\n\nimport FirstImgChecked from \"./images/first_checked.svg\";\nimport ThirdImgChecked from \"./images/third_checked.svg\";\nimport FourthImgChecked from \"./images/fourth_checked.svg\";\n\nimport { useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\n\nimport {\n Link,\n Button,\n Element,\n Events,\n animateScroll as scroll,\n scrollSpy,\n scroller,\n} from \"react-scroll\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport { metaMask, hooks } from \"../../../Header/ProviderDialog/Metamask\";\n\nimport { useSelector } from \"react-redux\";\nimport ErrorDialog from \"../../../ErrorDialog/ErrorDialog\";\n\nimport { getUserDataKYC } from \"../../../Header/API/blockpass\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport {\n useFetchDecimals,\n useFetchMyStakingStats,\n} from \"scenes/AllocationStaking/API/hooks\";\n\nfunction infoBlock(props, navigate) {\n return (\n navigate(props.link)}\n >\n
{props.title}
\n
{props.text}
\n
navigate(props.link)}>\n \"link\"\n
\n \n );\n}\n\nfunction participateBlock(props, navigate) {\n return (\n \n
\n
\n \"\"\n
\n
{props.title}
\n
{props.text}
\n
\n\n
\n {\n if (props.link.link === \"\" && !!props.link.onClick) {\n props.link.onClick();\n } else if (props.link.link === \"\") {\n return;\n }\n navigate(props.link.link);\n }}\n >\n {!!props.link.scrollTo && (\n \n {props.link.text}\n \n )}\n\n {!props.link.scrollTo && <>{props.link.text}}\n
\n \n \n );\n}\n\nconst Info = () => {\n const navigate = useNavigate();\n\n const { accounts } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n const [isVerified, setIsVerified] = useState(false);\n const [isPending, setIsPending] = useState(false);\n\n const userWalletAddress = account ?? \"\";\n\n const [{ data: userInfo }] = useFetchMyStakingStats();\n const stakingBalance = userInfo?.amount ?? 0;\n const { data: decimals } = useFetchDecimals();\n\n const [showError, setShowError] = useState(false);\n const [customMessage, setCustomMessage] = useState(\"\");\n\n useEffect(() => {\n getUserDataKYC(account)\n .then((response) => {\n if (response.data.data.status === \"approved\") {\n setIsVerified(true);\n } else {\n setIsVerified(false);\n setIsPending(true);\n }\n })\n .catch((error) => {\n setIsPending(false);\n setIsVerified(false);\n });\n\n setDataToShowParticipate([\n {\n img: stakingBalance > 0 ? ThirdImgChecked : ThirdImg,\n title: \"Allocation Staking\",\n text: \"By staking PeakDefi, you earn allocation in Sales. If you do not want to participate in one of our Sales, you can still benefit from staking.\",\n link: {\n link: \"/allocation-staking-v3\",\n text: \"Stake PEAK\",\n },\n },\n {\n img: isVerified ? FirstImgChecked : FirstImg,\n title: \"KYC\",\n text:\n \"In order to participate in Sales on PEAKDEFI Launchpad, you must KYC first.\" +\n \" Staking can also be performed without KYC.\",\n link: {\n link: \"\",\n onClick: () => {\n if (account && stakingBalance / 10 ** decimals >= 1000) {\n if (isVerified) {\n setShowError(true);\n setCustomMessage(\n \"You have already completed KYC registration process\"\n );\n } else if (isPending) {\n setShowError(true);\n setCustomMessage(\n \"Your KYC registration process is pending, please wait\"\n );\n } else {\n document.getElementById(\"blockpass-kyc-connect\").click();\n }\n } else if (account) {\n setShowError(true);\n setCustomMessage(\n \"You need to stake at least 1000 PEAK to be able to start the KYC process\"\n );\n } else {\n setShowError(true);\n setCustomMessage(\n \"You cannot start KYC process without connecting your wallet\"\n );\n }\n },\n text: \"Start the KYC Process\",\n },\n },\n /*{\n img: SecondImg,\n title: \"Verify Wallet\",\n text: \"Once you have registered and submitted your KYC, you must verify your wallet. This is the only wallet you will be able to use for sales.\",\n link: {\n link: \"\",\n onClick: () => {\n if (account && stakingBalance / (10 ** decimals) >= 1000) {\n if (isVerified) {\n setShowError(true);\n setCustomMessage(\"You have already verified your wallet\")\n } else if (isPending) {\n setShowError(true);\n setCustomMessage(\"Your wallet verification is pending, please wait\")\n } else {\n document.getElementById('blockpass-kyc-connect').click();\n }\n }\n else if (account) {\n setShowError(true);\n setCustomMessage(\"You need to stake at least 10000 PEAK to be able to verify your wallet\")\n }\n else {\n setShowError(true);\n setCustomMessage(\"Please connect your wallet before starting the verification process\")\n }\n },\n text: \"Verify Wallet\"\n }\n },*/\n {\n img: FourthImg,\n title: \"Whitelisting for Sale\",\n text:\n \"During the whitelisting period, you must confirm your interest in participating in one of our Sales.\" +\n \"Once whitelisting period closes, you will not be able to participate until another whitelisting period of\" +\n \" another project starts.\",\n link: {\n link: \"\",\n scrollTo: \"ongoingSale\",\n text: \"See our upcoming Sales\",\n },\n },\n ]);\n }, [account, stakingBalance, isVerified, decimals, isPending]);\n\n const [dataToShowInfo, setDataToShowInfo] = useState([\n {\n title: \"About\",\n text: \"Let's dig into PEAKDEFI Launchpad and what it stands for\",\n link: \"/about\",\n },\n {\n title: \"Tier System\",\n text: \"Get to know more about the Sale allocation system here\",\n link: \"/tier-system\",\n },\n {\n title: \"Stake\",\n text: \"Time for action! This guide enlights you on your blockchain investment path\",\n link: \"/allocation-staking-v3\",\n },\n ]);\n\n const [dataToShowParticipate, setDataToShowParticipate] = useState([]);\n\n return (\n
\n
\n {dataToShowInfo.map((data) => {\n return infoBlock(data, navigate);\n })}\n
\n\n
How to Participate
\n\n
\n {dataToShowParticipate.map((data) => {\n return participateBlock(data, navigate);\n })}\n
\n\n \n
\n );\n};\n\nexport default Info;\n","export default __webpack_public_path__ + \"static/media/test_img.beb0b6d2.svg\";","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const projectDetailsSlice = createSlice({\n name: \"projectDetails\",\n initialState: {\n bg_image: \"\",\n saleStatus: \"\",\n },\n\n reducers: {\n setBG: (state, action) => {\n return { ...state, bg_image: action.payload };\n },\n setSaleStatus: (state, action) => {\n return { ...state, saleStatus: action.payload };\n },\n },\n});\n\nexport const { setBG, setSaleStatus } = projectDetailsSlice.actions;\n\nexport default projectDetailsSlice.reducer;\n","import WalletConnectProvider from \"@walletconnect/ethereum-provider\";\nimport { ethers, providers } from \"ethers\";\nimport React, { useEffect, useMemo } from \"react\";\nimport { useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { SALE_ABI } from \"../../../../../../consts/abi\";\nimport { RpcProvider } from \"../../../../../../consts/rpc\";\nimport { setBG } from \"../../../../../../features/projectDetailsSlice\";\nimport classes from \"./IdoBlock.module.scss\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport useJSONContract from \"hooks/useJSONContract/useJSONContract\";\nfunction numberWithCommas(x) {\n if (!x) return 0;\n x = parseInt(x);\n return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\nfunction timeToDate(time) {\n let date = new Date(time * 1000);\n let hours = date.getHours();\n let minutes = \"0\" + date.getMinutes();\n let seconds = \"0\" + date.getSeconds();\n let formattedTime =\n hours + \":\" + minutes.substr(-2) + \":\" + seconds.substr(-2);\n return formattedTime;\n}\n\nfunction timeLeft(seconds) {\n let timeString = \"\";\n var d = Math.floor(seconds / (3600 * 24));\n var h = Math.floor((seconds % (3600 * 24)) / 3600);\n var m = Math.floor((seconds % 3600) / 60);\n var s = Math.floor(seconds % 60);\n if (d > 0) {\n return d + \" days \" + h + \"hours\";\n } else if (h > 0) {\n return h + \" hours \" + m + \" minutes\";\n } else if (m > 0 || s > 0) {\n return m + \":\" + s;\n } else {\n return \"Launched\";\n }\n}\n\nfunction numFormatter(num) {\n num = parseInt(num);\n if (num >= 999 && num < 1000000) {\n return (num / 1000).toFixed(1) + \"k\"; // convert to K for number from > 1000 < 1 million\n } else if (num >= 1000000) {\n return (num / 1000000).toFixed(1) + \"m\"; // convert to M for number from > 1 million\n } else if (num < 900) {\n return num; // if value < 1000, nothing to do\n }\n}\n\nfunction priceToFormatedPrice(price) {\n return \"$\" + price.toFixed(3);\n}\n\nexport function IdoBlock({ props }) {\n const provider = useProviderHook();\n const date = new Date().getTime() / 1000;\n const [seconds, setSeconds] = useState(\n props.timeline.sale_end - date < 0 ? 0 : props.timeline.sale_end - date\n );\n const dispatch = useDispatch();\n\n const [totalBUSDRaised, setTotalBUSDRaised] = useState(0);\n const [saleProgress, setSaleProgress] = useState(0);\n const { contract } = useJSONContract(props.sale_contract_address, SALE_ABI);\n\n let timer;\n\n const navigate = useNavigate();\n\n const updateCount = () => {\n timer =\n !timer &&\n setInterval(() => {\n setSeconds((prevCount) => prevCount - 1); // new\n }, 1000);\n };\n\n function get_token_sold() {\n let calculated_token = props.token.total_raise\n ? Math.ceil(props.token.total_raise)\n : Math.ceil(totalBUSDRaised);\n if (calculated_token > props.saleInfo.info.token_distribution) {\n return props.saleInfo.info.token_distribution;\n }\n return calculated_token;\n }\n\n const updateSaleData = async () => {\n const { ethereum } = window;\n\n //TODO: check if json contract works here\n if (seconds <= 0) {\n setTotalBUSDRaised(props.token.token_distribution * props.token.price);\n } else {\n try {\n console.log(\"contract\", contract);\n const sale = await contract.sale();\n setTotalBUSDRaised(sale.totalBUSDRaised / 10 ** 18);\n } catch (error) {\n console.log(\"Emm\", error);\n setTotalBUSDRaised(parseInt(0));\n }\n }\n };\n\n useEffect(() => {\n setSaleProgress(\n (100 * totalBUSDRaised) /\n props.token.price /\n props.token.token_distribution\n );\n }, [totalBUSDRaised]);\n\n useEffect(() => {\n updateCount();\n updateSaleData();\n\n // return () => clearInterval(timer)\n }, [contract]);\n\n useEffect(() => {\n if (!contract) return;\n }, [contract]);\n\n const start_date = props.saleInfo.start_date\n ? (\"0\" + props.saleInfo.start_date.getDate()).slice(-2) +\n \".\" +\n (\"0\" + (props.saleInfo.start_date.getMonth() + 1)).slice(-2) +\n \".\" +\n props.saleInfo.start_date.getFullYear()\n : \"\";\n console.log(\"🚀 ~ IdoBlock ~ props.saleInfo:\", props.saleInfo);\n\n const showTge = useMemo(() => {\n if (props.tge) return Date.now() < props.tge?.getTime();\n return false;\n }, [props.tge]);\n\n return (\n {\n if (props.id === -1) return false;\n if (props.title) {\n navigate(\n \"/project-details/\" +\n props.title?.toLowerCase() +\n (props.type ? \"/\" + props.type : \"\")\n );\n } else {\n navigate(\n \"/project-details/\" +\n props.token.name?.toLowerCase() +\n (props.type ? \"/\" + props.type : \"\")\n );\n }\n dispatch(setBG(props.bg_image));\n }}\n >\n
\n \n\n
\n
\n {false &&\n props.timeline.sale_start * 1000 < Date.now() &&\n props.timeline.sale_end * 1000 > Date.now() && (\n
In Progress
\n )}\n
\n
\n
\n\n
\n
\n
\n {props.token.name == \"PLAY\"\n ? \"Community sale\"\n : props.token.name == \"EYWA\"\n ? \"KOL Sale\"\n : props.token.name == \"Another-1\"\n ? \"Pre-sale\"\n : props.is_private_sale\n ? \"Private Sale\"\n : \"Public Sale\"}\n
\n {totalRaised(props.token, totalBUSDRaised)}\n
\n
\n {/*textToShow(\"Participants\", props.saleInfo.partisipants)*/}\n {textToShow(\"Start Date\", start_date)}\n {textToShow(\n \"Token Price\",\n isNaN(props.token.price)\n ? \"TBA\"\n : priceToFormatedPrice(props.token.price)\n )}\n
\n {progressBar(saleProgress)}\n
\n
\n
Time until Launch
\n
\n {showTge\n ? \"Sale completed - waiting for TGE\"\n : timeLeft(seconds)}\n
\n
\n
\n
\n
Token sold:
\n
\n {\" \"}\n {numFormatter(totalBUSDRaised / props.token.price) ??\n \"Sold out\"}{\" \"}\n
\n
\n
\n
Tokens for sale:
\n
\n {\" \"}\n {numFormatter(\n parseInt(props.saleInfo.info.token_distribution)\n )}{\" \"}\n
\n
\n
\n
\n
Sale Progress
\n
\n {\" \"}\n {isNaN(Math.round(saleProgress))\n ? 100\n : Math.round(saleProgress)}\n %\n
\n
\n
\n
\n
\n \n );\n}\n\nfunction tokenInfo(props) {\n return (\n
\n {props.name}\n
\n
{props.name}
\n
\n
\n );\n}\n\nfunction totalRaised(props, totalBUSDRaised) {\n return (\n
\n
{props.name}
\n
Total raised
\n
\n $\n {numberWithCommas(\n Math.round(\n isNaN(props.total_raise * props.price)\n ? Math.round(parseInt(totalBUSDRaised))\n : props.total_raise * props.price\n )\n )}\n /${numberWithCommas(Math.round(props.price * props.token_distribution))}\n
\n
\n );\n}\n\nfunction textToShow(text, value) {\n return (\n
\n
{text}
\n
{value}
\n
\n );\n}\n\nfunction progressBar(saleProgress) {\n return (\n
\n
\n
\n \n );\n}\n","export default __webpack_public_path__ + \"static/media/internet_logo.a30a43d4.png\";","import React, { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { setBG } from \"../../../../../../features/projectDetailsSlice\";\nimport classes from \"./UpcomingIdoBlock.module.scss\";\nimport InternetLogo from \"./resources/internet_logo.png\";\n\nfunction numberWithCommas(x) {\n if (!x) return 0;\n return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\nexport function UpcomingIdoBlock({ props }) {\n const [seconds, setSeconds] = useState(\n typeof props.saleInfo?.time_until_launch === \"string\"\n ? 0\n : props.saleInfo?.time_until_launch ?? 0\n );\n const dispatch = useDispatch();\n\n const [activeSection, setActiveSection] = useState(0);\n\n let timer;\n\n const navigate = useNavigate();\n\n const updateCount = () => {\n timer =\n !timer &&\n setInterval(() => {\n setSeconds((prevCount) => prevCount - 1); // new\n }, 1000);\n };\n\n useEffect(() => {\n updateCount();\n\n return () => clearInterval(timer);\n }, []);\n\n function numberWithCommas(x) {\n if (!x) return 0;\n return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n }\n\n var options = { year: \"numeric\", month: \"long\", day: \"numeric\" };\n return (\n
\n {!!props.blank_img && (\n \n

TBA

\n
\n )}\n\n {!props.blank_img && (\n <>\n {\n if (props.id != 1) {\n navigate(\"/project-details/\" + props.title);\n }\n }}\n >\n \n\n
{tokenInfo(props.token)}
\n \n\n
\n
\n
\n {props.token.name == \"PLAY\"\n ? \"Community sale\"\n : props.token.name == \"EYWA\"\n ? \"KOL Sale\"\n : props.title == \"Another-1\"\n ? \"Pre-sale\"\n : props.is_private_sale\n ? \"Private Sale\"\n : \"Public Sale\"}\n
\n
\n \n \n \n
\n {props.socials.map((link) => (\n \n \n \n ))}\n
\n\n
\n {\n setActiveSection(0);\n }}\n >\n Offering\n
\n\n {\n setActiveSection(1);\n }}\n >\n Description\n
\n \n\n {activeSection === 0 && (\n
\n
\n

{props.token.name}

\n
\n\n
\n {textToShow(\n \"Start Date\",\n props.timeline.show_text\n ? props.timeline.sale_timeline_text\n : new Date(\n props.timeline.registration_start * 1000\n ).toLocaleDateString(\"en-US\", options)\n )}\n
\n
\n
\n
\n
Tokens sold:
\n
TBA
\n
\n\n
\n
Tokens for sale:
\n
\n {/* TBA */}\n {numberWithCommas(\n parseInt(props.saleInfo.info.token_distribution)\n )}\n
\n
\n
\n
\n
\n )}\n\n {activeSection === 1 && (\n <>\n
\n

{props.token.name}

\n {props?.short_description?.split(\"/n\").map((row) => {\n return

{row}

;\n })}\n
\n \n )}\n \n
\n \n )}\n \n );\n}\n\nfunction tokenInfo(props) {\n return (\n
\n {props.name}\n {false && (\n
\n
{props.name}
\n
\n )}\n
\n );\n}\n\nfunction textToShow(text, value) {\n return (\n
\n
{text}
\n
{value}
\n
\n );\n}\n","import React, { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport classes from \"./OngoingIdo.module.scss\";\nimport { useDispatch } from \"react-redux\";\nimport { setBG } from \"../../../../../../features/projectDetailsSlice\";\nimport { SALE_ABI } from \"../../../../../../consts/abi\";\nimport { ethers } from \"ethers\";\nimport { RpcProvider } from \"../../../../../../consts/rpc\";\n\nfunction numberWithCommas(x) {\n if (!x) return 0;\n return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\nfunction timeToDate(time) {\n let date = new Date(time * 1000);\n let hours = date.getHours();\n let minutes = \"0\" + date.getMinutes();\n let seconds = \"0\" + date.getSeconds();\n let formattedTime =\n hours + \":\" + minutes.substr(-2) + \":\" + seconds.substr(-2);\n return formattedTime;\n}\n\nfunction timeLeft(seconds) {\n let timeString = \"\";\n var d = Math.floor(seconds / (3600 * 24));\n var h = Math.floor((seconds % (3600 * 24)) / 3600);\n var m = Math.floor((seconds % 3600) / 60);\n var s = Math.floor(seconds % 60);\n if (d > 0) {\n return d + \" days \" + h + \"hours\";\n } else if (h > 0) {\n return h + \" hours \" + m + \" minutes\";\n } else if (m > 0 || s > 0) {\n return m + \":\" + s;\n } else {\n return \"Launched\";\n }\n}\n\nfunction numFormatter(num) {\n num = parseInt(num);\n if (num > 999 && num < 1000000) {\n return (num / 1000).toFixed(1) + \"k\"; // convert to K for number from > 1000 < 1 million\n } else if (num >= 1000000) {\n return (num / 1000000).toFixed(1) + \"m\"; // convert to M for number from > 1 million\n } else if (num < 900) {\n return num; // if value < 1000, nothing to do\n }\n}\n\nfunction priceToFormatedPrice(price) {\n return \"$\" + price?.toFixed(3);\n}\n\nexport function OngoingIdo({ props }) {\n const [seconds, setSeconds] = useState(\n typeof props.saleInfo.time_until_launch === \"string\"\n ? 0\n : props.saleInfo.time_until_launch\n );\n let timer;\n\n const [totalBUSDRaised, setTotalBUSDRaised] = useState(0);\n const [saleProgress, setSaleProgress] = useState(0);\n\n const dispatch = useDispatch();\n\n const navigate = useNavigate();\n\n const updateCount = () => {\n timer =\n !timer &&\n setInterval(() => {\n setSeconds((prevCount) => prevCount - 1); // new\n }, 1000);\n };\n\n function get_token_sold() {\n let calculated_token = props.token.total_raise\n ? Math.ceil(props.token.total_raise)\n : Math.ceil(totalBUSDRaised);\n if (calculated_token > props.saleInfo.info.token_distribution) {\n return props.saleInfo.info.token_distribution;\n }\n return calculated_token;\n }\n\n const updateSaleData = async () => {\n const { ethereum } = window;\n try {\n const providerr = new ethers.providers.JsonRpcProvider(RpcProvider);\n\n const saleContract = new ethers.Contract(\n props.sale_contract_address,\n SALE_ABI,\n providerr\n );\n const sale = await saleContract.sale();\n\n setTotalBUSDRaised(sale.totalBUSDRaised / 10 ** 18);\n } catch (error) {\n setTotalBUSDRaised(parseInt(0));\n }\n };\n\n useEffect(() => {\n setSaleProgress(\n totalBUSDRaised /\n ((props.token.token_distribution * props.token.price) / 100)\n );\n }, [totalBUSDRaised]);\n\n useEffect(() => {\n updateCount();\n updateSaleData();\n\n // return () => clearInterval(timer)\n }, []);\n\n const start_date = props.saleInfo.start_date\n ? (\"0\" + props.saleInfo.start_date.getDate()).slice(-2) +\n \".\" +\n (\"0\" + (props.saleInfo.start_date.getMonth() + 1)).slice(-2) +\n \".\" +\n props.saleInfo.start_date.getFullYear()\n : \"\";\n\n return (\n {\n if (props.id === -1) return;\n navigate(\"/project-details/\" + props.title?.toLowerCase());\n dispatch(setBG(props.bg_image));\n }}\n >\n
\n \n\n
{tokenInfo(props.token)}
\n
\n\n
\n
\n {props.token.name == \"PLAY\"\n ? \"Community sale\"\n : props.token.name == \"EYWA\"\n ? \"KOL Sale\"\n : props.token.name == \"Another-1\"\n ? \"Pre-sale\"\n : props.is_private_sale\n ? \"Private Sale\"\n : \"Public Sale\"}\n
\n
\n {totalRaised(\n props.saleInfo,\n totalBUSDRaised,\n props.token,\n props.title\n )}\n
\n {/*textToShow(\"Participants\", props.saleInfo.partisipants)*/}\n {textToShow(\"Sale Begin\", start_date)}\n {textToShow(\n \"Token Price\",\n isNaN(props.saleInfo.sale_price)\n ? \"TBA\"\n : priceToFormatedPrice(props.saleInfo.sale_price)\n )}\n
\n
\n\n
\n\n
\n
\n
\n {/*
\n
Time until Launch
\n
{timeLeft(seconds)}
\n
*/}\n\n
\n
Tokens sold:
\n
\n {\" \"}\n {numFormatter(totalBUSDRaised / props.token.price)}{\" \"}\n
\n
\n
\n
Sale Progress
\n
\n {\" \"}\n {Math.floor(saleProgress)}%\n
\n
\n
\n
\n
\n
Tokens for Sale:
\n
\n {\" \"}\n {numFormatter(props.saleInfo.info.token_distribution)}{\" \"}\n
\n
\n\n {/*
\n
Sale Progress
\n
{Math.round(saleProgress)}%
\n\n
*/}\n
\n
\n\n {progressBar(saleProgress)}\n
\n
\n \n );\n}\n\nfunction tokenInfo(props) {\n return
;\n}\n\nfunction totalRaised(props, totalBUSDRaised, token, title) {\n return (\n
\n
{title}
\n
Total raised
\n
\n ${numberWithCommas(Math.round(totalBUSDRaised))}/$\n {numberWithCommas(\n Math.round(props.sale_price * props.info.token_distribution)\n )}\n
\n
\n );\n}\n\nfunction textToShow(text, value) {\n return (\n
\n
{text}
\n
{value}
\n
\n );\n}\n\nfunction progressBar(saleProgress) {\n return (\n
\n
\n
\n \n );\n}\n","import React from \"react\";\nimport classes from \"./TableHeader.module.scss\"\n\n\nexport function TableHeader(props) {\n return (\n
\n
Project Name
\n
Sale Token Price
\n
Current Price
\n
ATH
\n
ATH Sale ROI
\n
No. Participants
\n
Total Raised
\n
Total Tokens Sold
\n
Sale Ended At
\n
\n )\n}","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const adminPageSlice= createSlice({\n name: 'adminPage',\n initialState: {\n selectedIDO: null, \n toUpdate: false\n },\n \n reducers: {\n setSelectedIDO: (state, action)=>{\n return {...state, selectedIDO: action.payload}\n },\n\n setToUpdate: (state, action)=>{\n return {...state, toUpdate: action.payload}\n }\n }\n})\n\nexport const {setSelectedIDO, setToUpdate} = adminPageSlice.actions;\n\nexport default adminPageSlice.reducer;","import React from \"react\"\nimport { useDispatch } from \"react-redux\"; \nimport { setSelectedIDO } from \"../../../../../../features/adminPageSlice\";\nimport classes from \"./TableRow.module.scss\"\n\nfunction numberWithCommas(x) {\n return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\nfunction numFormatter(num) {\n if(num > 999 && num < 1000000){\n return (num/1000).toFixed(1) + 'K'; // convert to K for number from > 1000 < 1 million \n }else if(num > 1000000){\n return (num/1000000).toFixed(1) + 'M'; // convert to M for number from > 1 million \n }else if(num < 900){\n return num; // if value < 1000, nothing to do\n }\n}\n\nexport function TableRow(props) {\n const endAt = new Date(props.endAt*1000);\n const dispatch = useDispatch();\n return (\n
dispatch(setSelectedIDO({...props}))}>\n
\n {props.name}\n
\n
\n {props.name}\n
\n
\n {props.symbol}\n
\n
\n
\n
{'$'+props.idoPrice}
\n
{'$' + props.currentPrice.toFixed(3)}
\n
{'$' + props.ath.toFixed(3) }
\n
{ props.roi.toFixed(3) + 'x' }
\n
{ numFormatter(props.partisipants) }
\n
{ '$' + numberWithCommas(Math.round(props.totalRaised))}
\n
{numFormatter(Math.round(props.totalTokenSold))}
\n
{endAt.toLocaleString('en-US', {dateStyle: 'long'})}
\n
\n )\n}","export default __webpack_public_path__ + \"static/media/test_img.beb0b6d2.svg\";","import React from \"react\";\nimport classes from './ControlButton.module.scss'\n\nexport function Button(props) {\n return (\n { props.onClick(ev) }}>\n {props.text}\n \n )\n}","export default __webpack_public_path__ + \"static/media/filter_button.387bb316.svg\";","import axios from 'axios';\n\n\nexport function getIdos() {\n return axios.get(process.env.REACT_APP_API_URL + 'projects');\n}\n\nexport function getSingleIdo(id){\n return axios.get(process.env.REACT_APP_API_URL + 'projects/' + id)\n}\n\nexport function getSingleIdoByName(name){\n return axios.get(process.env.REACT_APP_API_URL + 'projects/by-name/' + name)\n}\n\n\nexport function getSingleProdIdoByName(name){\n return axios.get(process.env.REACT_APP_PROD_API_URL + 'projects/by-name/' + name)\n}","import React from \"react\";\nimport classes from \"./Table.module.scss\"\nimport { TableHeader } from \"./components/TableHeader/TableHeader\";\nimport { TableRow } from \"./components/TableRow/TableRow\";\nimport Img from './test_img.svg'\nimport { Button } from \"./components/ControlButton/ControlButton\";\nimport FilteButton from '../../../../resources/filter_button.svg'\n\nimport { useDispatch, useSelector } from 'react-redux';\n\nimport { getIdos } from './API/idos';\nimport { useEffect, useState } from \"react\";\n\nimport { setToUpdate } from '../../../../features/adminPageSlice';\n\nconst UpcomingTable = ({ upcoming, ongoing }) => {\n const [idos, setIDOs] = useState([]);\n const [activeType, setActiveType] = useState(-1);\n const [sorting, setSorting] = useState(1);\n const [rotateRate, setRotateRate] = useState(0);\n\n const dispatch = useDispatch();\n\n const toUpdate = useSelector(state => state.adminPage.toUpdate);\n\n const parseIdo = (img, symbol, name, idoPrice, currentPrice, ath, roi, partisipants, totalRaised, totalTokenSold, endAt, registrationStart, id, contract_address) => {\n return { img, symbol, name, idoPrice, currentPrice, ath, roi, partisipants, totalRaised, totalTokenSold, endAt, registrationStart, id, contract_address }\n }\n\n useEffect(() => {\n if (upcoming !== undefined) {\n getIdos().then((response) => {\n setIDOs(response.data.upcoming.map(e => {\n return parseIdo(e.logo_url, e.token.symbol, e.token.name, parseFloat(e.token.token_price_in_usd), parseFloat(e.token.current_token_price), parseFloat(e.token.all_time_high), parseFloat(e.token.current_token_price) / parseFloat(e.token.all_time_high), e.number_of_participants, e.token.total_raise, e.token.total_tokens_sold, e.timeline.sale_end, e.timeline.registration_start, e.id, e.contract_address)\n }));\n })\n\n }\n else if(!!ongoing){\n getIdos().then((response) => {\n setIDOs(response.data.ongoing.map(e => {\n return parseIdo(e.logo_url, e.token.symbol, e.token.name, parseFloat(e.token.token_price_in_usd), parseFloat(e.token.current_token_price), parseFloat(e.token.all_time_high), parseFloat(e.token.current_token_price) / parseFloat(e.token.all_time_high), e.number_of_participants, e.token.total_raise, e.token.total_tokens_sold, e.timeline.sale_end, e.timeline.registration_start, e.id, e.contract_address)\n }));\n });\n }\n else {\n getIdos().then((response) => {\n setIDOs(response.data.ended.map(e => {\n return parseIdo(e.logo_url, e.token.symbol, e.token.name, parseFloat(e.token.token_price_in_usd), parseFloat(e.token.current_token_price), parseFloat(e.token.all_time_high), parseFloat(e.token.current_token_price) / parseFloat(e.token.all_time_high), e.number_of_participants, e.token.total_raise, e.token.total_tokens_sold, e.timeline.sale_end, e.timeline.registration_start, e.id, e.contract_address)\n }));\n })\n\n }\n }, []);\n\n useEffect(() => {\n if (!toUpdate)\n return;\n\n if (upcoming !== undefined) {\n getIdos().then((response) => {\n setIDOs(response.data.upcoming.map(e => {\n return parseIdo(e.logo_url, e.token.symbol, e.token.name, parseFloat(e.token.token_price_in_usd), parseFloat(e.token.current_token_price), parseFloat(e.token.all_time_high), parseFloat(e.token.current_token_price) / parseFloat(e.token.all_time_high), e.number_of_participants, e.token.total_raise, e.token.total_tokens_sold, e.timeline.sale_end, e.timeline.registration_start, e.id)\n }));\n })\n dispatch(setToUpdate(false));\n }\n else {\n getIdos().then((response) => {\n setIDOs(response.data.ended.map(e => {\n return parseIdo(e.logo_url, e.token.symbol, e.token.name, parseFloat(e.token.token_price_in_usd), parseFloat(e.token.current_token_price), parseFloat(e.token.all_time_high), parseFloat(e.token.current_token_price) / parseFloat(e.token.all_time_high), e.number_of_participants, e.token.total_raise, e.token.total_tokens_sold, e.timeline.sale_end, e.timeline.registration_start, e.id)\n }));\n })\n dispatch(setToUpdate(false));\n }\n\n\n\n }, [toUpdate]);\n\n useEffect(() => {\n switch (activeType) {\n case 0:\n setIDOs([...idos].sort((a, b) => sorting * (a.endAt - b.endAt)))\n break;\n\n case 1:\n setIDOs([...idos].sort((a, b) => sorting * (a.roi - b.roi)))\n break;\n\n case 2:\n setIDOs([...idos].sort((a, b) => sorting * (a.totalRaised - b.totalRaised)))\n break;\n }\n }, [sorting]);\n\n return (<>\n
\n
\n {\n setActiveType(0);\n setIDOs(idos.sort((a, b) => sorting * (a.endAt - b.endAt)));\n }\n }\n />\n\n {\n setActiveType(1);\n setIDOs(idos.sort((a, b) => sorting * (a.roi - b.roi)));\n }}\n />\n\n {\n setActiveType(2);\n setIDOs(idos.sort((a, b) => sorting * (a.totalRaised - b.totalRaised)));\n }\n }\n />\n
\n {\n setRotateRate(rotateRate === 0 ? 180 : 0)\n setSorting(-1 * sorting);\n }}\n alt=\"\"\n src={FilteButton}\n />\n
\n
\n \n
\n {\n idos.map((ido, index) => {\n ido.color = index % 2 ? \"linear-gradient(rgb(10, 167, 245, 0.1) 0%, rgb(60, 231, 255, 0.1) 100%)\" : \"#FFFFFF\"\n return TableRow(ido)\n })\n }\n
\n );\n}\n\nexport default UpcomingTable;\n","import axios from \"axios\";\n\nexport function getUpcomingIdos() {\n return axios.get(process.env.REACT_APP_API_URL + \"projects\");\n}\n\nexport function getCompletedPRODIdos() {\n return axios.get(process.env.REACT_APP_PROD_API_URL + \"projects\");\n}\n\nexport function getMyIdos(walletAddress) {\n return axios.get(\n process.env.REACT_APP_API_URL + `projects?wallet=${walletAddress}`\n );\n}\n","export default __webpack_public_path__ + \"static/media/card_1.3cfea2f5.png\";","export default __webpack_public_path__ + \"static/media/card_2.437275e7.png\";","import { InjectedConnector } from \"@web3-react/injected-connector\";\n\n// Other possible connectors\nimport { WalletConnectConnector } from \"@web3-react/walletconnect-connector\";\nimport { RpcProvider } from \"./consts/rpc\";\n// import { WalletLinkConnector } from '@web3-react/walletlink-connector';\n// import { LedgerConnector } from '@web3-react/ledger-connector';\n// import { BscConnector } from '@binance-chain/bsc-connector';\nimport { WalletConnect } from \"@web3-react/walletconnect-v2\";\n\nexport const injected = new InjectedConnector({\n supportedChainIds: process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\").map(\n (e) => parseInt(e)\n ),\n});\n\nexport const walletconnect = new WalletConnect({\n defaultChainId: parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]\n ),\n options: {\n projectId: \"2e23d1f33aa1cdaabcfbff7168090b36\",\n chains: process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\").map((e) =>\n parseInt(e)\n ),\n optionalChains: process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\").map(\n (e) => parseInt(e)\n ),\n showQrModal: true,\n },\n});\n\n// refer to https://github.com/NoahZinsmeister/web3-react\n// for all available connectors\n","export default __webpack_public_path__ + \"static/media/LogoMeta.0355c989.svg\";","export default __webpack_public_path__ + \"static/media/Vector.4f809dc1.svg\";","export default __webpack_public_path__ + \"static/media/Pattern.e4e1443b.svg\";","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const tourSlice = createSlice({\n name: \"tourSlice\",\n initialState: {\n currentStep: 0,\n isShowingTour: false,\n isNextStepBlocked: false,\n isPreviousStepBlocked: true,\n },\n\n reducers: {\n nextStep: (state, action) => {\n return { ...state, currentStep: state.currentStep + 1 };\n },\n prevStep: (state, action) => {\n return { ...state, currentStep: state.currentStep - 1 };\n },\n setStep: (state, action) => {\n return { ...state, currentStep: action.payload };\n },\n openTour: (state, action) => {\n return { ...state, isShowingTour: true };\n },\n closeTour: (state, action) => {\n return { ...state, isShowingTour: false };\n },\n blockNextStep: (state, action) => {\n return { ...state, isNextStepBlocked: true };\n },\n unblockNextStep: (state, action) => {\n return { ...state, isNextStepBlocked: false };\n },\n blockPreviousStep: (state, action) => {\n return { ...state, isPreviousStepBlocked: true };\n },\n unblockPreviousStep: (state, action) => {\n return { ...state, isPreviousStepBlocked: false };\n },\n },\n});\n\nexport const {\n prevStep,\n nextStep,\n setStep,\n openTour,\n closeTour,\n blockNextStep,\n unblockNextStep,\n blockPreviousStep,\n unblockPreviousStep,\n} = tourSlice.actions;\n\nexport default tourSlice.reducer;\n","import { current } from \"@reduxjs/toolkit\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport { useCallback, useState } from \"react\";\nimport { useEffect } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useDispatch } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport {\n nextStep,\n setStep,\n openTour as globalStateOpenTour,\n closeTour as globalStateCloseTour,\n blockNextStep,\n unblockNextStep,\n blockPreviousStep,\n unblockPreviousStep,\n prevStep,\n} from \"../../features/tourSlice\";\nimport { stakingContractAddress } from \"../../scenes/AllocationStaking/services/consts\";\nimport { getUserDataKYC } from \"../../scenes/Header/API/blockpass\";\nimport useStakingContract from \"../useStakingContract/useStakingContract\";\nimport useTokenContract from \"../useTokenContract/useTokenContract\";\nimport { hooks, metaMask } from \"../../scenes/Header/ProviderDialog/Metamask\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport {\n useFetchDecimals,\n useFetchMyStakingStats,\n} from \"scenes/AllocationStaking/API/hooks\";\n\nconst useMainTour = () => {\n const dispatch = useDispatch();\n const navigate = useNavigate();\n const { stakingContract } = useStakingContract();\n const { tokenContract } = useTokenContract();\n\n const { accounts } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n const [allowance, setAllowance] = useState(0);\n\n const [{ data: userInfo }] = useFetchMyStakingStats();\n const balance = userInfo?.amount ?? 0;\n\n const [isPending, setIsPending] = useState(false);\n const [showVerify, setShowVerify] = useState(false);\n\n useEffect(() => {\n const handler = async () => {\n const res = await tokenContract.allowance(\n account,\n stakingContractAddress\n );\n\n setAllowance(parseInt(res.toString()));\n };\n if (tokenContract && account) handler();\n }, [account, tokenContract, stakingContractAddress]);\n\n const { data: decimals } = useFetchDecimals();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(async () => {\n if (account === undefined) return;\n\n const handler = async () => {\n if (balance / 10 ** decimals < 10000) {\n //if balance is lower than 1000 PEAK do not let user pass KYC verification\n setShowVerify(false);\n return;\n }\n\n try {\n await getUserDataKYC(account)\n .then((response) => {\n if (response.data.data.status === \"approved\") {\n setShowVerify(false);\n } else {\n setIsPending(true);\n setShowVerify(true);\n }\n })\n .catch((error) => {\n setIsPending(false);\n setShowVerify(true);\n });\n } catch (error) {\n setShowVerify(true);\n }\n };\n\n handler();\n }, [account, balance]);\n\n useEffect(() => {\n if (currentStep <= 2 && account) {\n goToStep(3);\n }\n }, [account]);\n\n const goToNextStep = () => {\n dispatch(nextStep());\n };\n\n const goToErrorFallbackStep = () => {};\n\n const goToPrevStep = () => {\n dispatch(prevStep());\n };\n\n const goToStep = (step) => {\n dispatch(setStep(step));\n };\n\n const openTour = () => {\n dispatch(globalStateOpenTour());\n if (account) {\n goToStep(3);\n } else {\n goToStep(0);\n }\n };\n\n const closeTour = () => {\n dispatch(globalStateCloseTour());\n };\n\n const blockPropagation = () => {\n dispatch(blockNextStep());\n };\n\n const unblockPropagation = () => {\n dispatch(unblockNextStep());\n };\n\n const blockReverse = () => {\n dispatch(blockPreviousStep());\n };\n\n const unblockReverse = () => {\n dispatch(unblockPreviousStep());\n };\n\n const isPreviousStepBlocked = useSelector(\n (state) => state.tourSlice.isPreviousStepBlocked\n );\n\n const isNextStepBlocked = useSelector(\n (state) => state.tourSlice.isNextStepBlocked\n );\n\n const isTourOpen = useSelector((state) => state.tourSlice.isShowingTour);\n\n const currentStep = useSelector((state) => state.tourSlice.currentStep);\n const [localCurrentStep, setLocalCurrentStep] = useState(0);\n useEffect(() => {\n setLocalCurrentStep(currentStep);\n }, [currentStep]);\n\n useEffect(() => {\n }, [localCurrentStep]);\n\n const nextStepHandler = () => {\n if (localCurrentStep === 3) {\n if (allowance > balance) {\n goToStep(6);\n } else {\n goToNextStep();\n }\n } else if (localCurrentStep === 8) {\n goToStep(10);\n } else {\n goToNextStep();\n }\n };\n\n const prevStepHandler = () => {\n if (!isPreviousStepBlocked) {\n if (currentStep === 6) {\n goToStep(3);\n } else if (currentStep === 10) {\n goToStep(8);\n } else {\n goToPrevStep();\n }\n }\n };\n\n const tourSteps = [\n {\n selector: '[data-tut=\"connect_button\"]',\n content:\n \"Connect your wallet and select the Binance Smart Chain network. If you are using Metamask, make sure that your wallet is unlocked.\",\n },\n {\n selector: '[data-tut=\"select_provider\"]',\n content: \"Choose your wallet provider.\",\n mutationObservables: ['[data-tut=\"select_provider\"]'],\n highlightedSelectors: ['[data-tut=\"select_provider\"]'],\n resizeObservables: ['[data-tut=\"select_provider\"]'],\n },\n {\n selector: \".walletconnect-qrcode__image\",\n content: \"Scan the QR code with your wallet app.\",\n mutationObservables: [\".walletconnect-qrcode__image\"],\n highlightedSelectors: [\".walletconnect-qrcode__image\"],\n },\n {\n selector: '[data-tut=\"staking__input\"]',\n content:\n \"Enter the amount of PEAK tokens you would like to stake (to be able to get a guaranteed allocation for our Sales, you need to stake at least 10,000 $PEAK).\",\n highlightedSelectors: ['[data-tut=\"staking__input\"]'],\n resizeObservables: ['[data-tut=\"staking__input\"]'],\n action: () => {\n blockReverse();\n navigate(\"/allocation-staking\");\n },\n },\n {\n selector: '[data-tut=\"stake_card_button\"]',\n content: \"Approve your entered amount of $PEAK.\",\n mutationObservables: ['[data-tut=\"stake_card_button\"]'],\n highlightedSelectors: ['[data-tut=\"stake_card_button\"]'],\n action: () => {\n unblockReverse();\n },\n },\n {\n selector: \".Toastify__toast-container\",\n content:\n \"Approve the transaction in your wallet (you need a small amount of BNB for transaction fees) and wait until the transaction is completed. \",\n mutationObservables: [\".Toastify__toast-container\"],\n highlightedSelectors: [\".Toastify__toast-container\"],\n resizeObservables: [\".Toastify__toast-containerƒ\"],\n action: () => {\n blockPropagation();\n blockReverse();\n },\n },\n {\n selector: '[data-tut=\"stake_card_button\"]',\n content: \"Click the ‘Stake PEAK’ button to confirm.\",\n observe: '[data-tut=\"stake_card_button\"]',\n mutationObservables: ['[data-tut=\"stake_card_button\"]'],\n highlightedSelectors: ['[data-tut=\"stake_card_button\"]'],\n resizeObservables: ['[data-tut=\"stake_card_button\"]'],\n action: () => {\n blockPropagation();\n unblockReverse();\n },\n },\n {\n selector: '[data-tut=\"stake_dialog\"]',\n mutationObservables: ['[data-tut=\"stake_dialog\"]'],\n highlightedSelectors: ['[data-tut=\"stake_dialog\"]'],\n content: (\n <>\n Please be aware that your penalty fee will be reset. Visit{\" \"}\n \n https://documents.peakdefi.com\n {\" \"}\n for more information. Tick the box and click ‘Stake PEAK’ to proceed.)\n \n ),\n resizeObservables: ['[data-tut=\"stake_dialog\"]'],\n action: () => {\n blockReverse();\n blockPropagation();\n },\n },\n {\n selector: \".Toastify__toast-container\",\n content:\n \"Approve the transaction in your wallet (you need a small amount of BNB for transaction fees) and wait until the transaction is completed. \",\n mutationObservables: [\".Toastify__toast-container\"],\n highlightedSelectors: [\".Toastify__toast-container\"],\n resizeObservables: [\".Toastify__toast-containerƒ\"],\n action: () => {\n blockPropagation();\n blockReverse();\n },\n },\n {\n selector: \".Toastify__toast-container\",\n content:\n \"Seems like something went wrong. You can restart the tour later and complete the transaction\",\n mutationObservables: [\".Toastify__toast-container\"],\n highlightedSelectors: [\".Toastify__toast-container\"],\n resizeObservables: [\".Toastify__toast-containerƒ\"],\n action: () => {\n blockReverse();\n unblockPropagation();\n },\n },\n {\n selector: '[data-tut=\"KYC\"]',\n content: \"Start the KYC Verification process here.\",\n mutationObservables: ['[data-tut=\"KYC\"]'],\n highlightedSelectors: ['[data-tut=\"KYC\"]'],\n resizeObservables: ['[data-tut=\"KYC\"]'],\n action: () => {\n navigate(\"/\");\n if (!showVerify || isPending) {\n unblockPropagation();\n }\n blockReverse();\n },\n },\n {\n selector: '[data-tut=\"projects_section\"]',\n content: \"Take a look at all upcoming and ongoing Sales.\",\n mutationObservables: ['[data-tut=\"projects_section\"]'],\n highlightedSelectors: ['[data-tut=\"projects_section\"]'],\n resizeObservables: ['[data-tut=\"projects_section\"]'],\n action: () => {\n unblockPropagation();\n unblockReverse();\n navigate(\"/\");\n },\n },\n {\n selector: '[data-tut=\"gitbook_section\"]',\n content: (\n <>\n Have a look at our Gitbook to get more details on how to use our\n platform.\n \n (PLEASE REFER TO{\" \"}\n \n https://documents.peakdefi.com\n \n )\n \n \n ),\n action: () => {\n unblockReverse();\n },\n mutationObservables: ['[data-tut=\"gitbook_section\"]'],\n highlightedSelectors: ['[data-tut=\"gitbook_section\"]'],\n resizeObservables: ['[data-tut=\"gitbook_section\"]'],\n },\n ];\n\n return {\n goToNextStep,\n goToStep,\n currentStep,\n tourSteps,\n closeTour,\n openTour,\n isTourOpen,\n blockPropagation,\n unblockPropagation,\n isNextStepBlocked,\n nextStepHandler,\n isPreviousStepBlocked,\n prevStepHandler,\n };\n};\n\nexport default useMainTour;\n","import { Dialog, DialogContent, DialogTitle, IconButton } from \"@mui/material\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport classes from \"./OtherWalletsDetected.module.scss\";\n\nconst OtherWalletsDetected = ({ isOpen, onClose }) => {\n return (\n \n \n

Conflicting extensions detected

\n \n \n \n
\n \n

\n We detected other wallet extensions installed in your browser. Due to\n incompatibility between MetaMask and other wallet providers, you\n cannot connect your wallet.\n

\n

\n To connect your wallet go to your browser's extensions manager and\n disable other cryptocurrency wallets.\n

\n
\n \n
\n
\n \n );\n};\n\nexport default OtherWalletsDetected;\n","import { Dialog } from \"@mui/material\";\nimport classes from \"./ProviderDialog.module.scss\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport { injected, walletconnect } from \"../../../connector\";\nimport MetamaskLogo from \"../../../resources/LogoMeta.svg\";\nimport WalletConnectLogo from \"../../../resources/Vector.svg\";\nimport Pattern from \"../../../resources/Pattern.svg\";\nimport { useDispatch } from \"react-redux\";\nimport { nextStep } from \"../../../features/tourSlice\";\nimport useMainTour from \"../../../hooks/useMainTour/useMainTour\";\nimport { useEffect, useState } from \"react\";\nimport { ethers } from \"ethers\";\nimport OtherWalletsDetected from \"../components/OtherWalletsDetected/OtherWalletsDetected\";\nimport { metaMask, hooks, walletConnect, walletConnectHooks } from \"./Metamask\";\nimport { LocalConvenienceStoreOutlined } from \"@mui/icons-material\";\nimport { toast } from \"react-toastify\";\n\nconst ProviderDialog = ({ show, setShow }) => {\n const { activate, deactivate, account } = useWeb3React();\n const { nextStepHandler } = useMainTour();\n\n const [isOWDDialogOpen, setIsOWDDialogOpen] = useState(false);\n\n const dispatch = useDispatch();\n\n const connectWallet = async () => {\n const { ethereum } = window;\n if (ethereum.detected && ethereum.detected.some((e) => e.isMetaMask)) {\n //TELL THE USER YOU HAVE OTHER EXTENSIONS ENABLED\n setIsOWDDialogOpen(true);\n } else {\n activate(injected);\n }\n };\n\n return (\n <>\n setShow(false)}>\n
\n
Select provider
\n
\n {\n if (window.ethereum) {\n // connectWallet();\n metaMask.activate(injected);\n setShow(false);\n } else {\n window.open(\n \"https://metamask.app.link/dapp/launchpad.peakdefi.com/\"\n );\n }\n }}\n >\n \n \n\n {\n setTimeout(() => {\n walletConnect\n .connectEagerly()\n .then((data) => {\n toast.success(\"Wallet connected successfully\");\n })\n .catch((error) => {\n walletConnect\n .activate()\n .then((data) => {\n toast.success(\"Wallet connected successfully\");\n })\n .catch((error) => {\n toast.error(\n \"Your wallet app does not have supported chains\"\n );\n });\n });\n }, 500);\n setShow(false);\n nextStepHandler();\n }}\n >\n \n \n
\n \"\"\n
\n
\n\n setIsOWDDialogOpen(false)}\n />\n \n );\n};\n\nexport default ProviderDialog;\n","import React, { useEffect, useState } from \"react\";\nimport classes from \"./IDO.module.scss\";\nimport TestImg from \"./test_img.svg\";\nimport { IdoBlock } from \"./components/IdoBlock/IdoBlock\";\nimport { UpcomingIdoBlock } from \"./components/UpcomingIdoBlock/UpcomingIdoBlock\";\nimport { OngoingIdo } from \"./components/OngoingIdo/OngoingIdo\";\nimport Table from \"../Table/Table\";\nimport {\n getUpcomingIdos,\n getCompletedPRODIdos,\n getMyIdos,\n} from \"./API/upcomingIDOs\";\nimport { useNavigate } from \"react-router-dom\";\nimport { CircularProgress } from \"@mui/material\";\nimport {\n Link,\n Button,\n Element,\n Events,\n animateScroll as scroll,\n scrollSpy,\n scroller,\n} from \"react-scroll\";\n\nimport BlurredTBA1 from \"../IDOBlock/images/card_1.png\";\nimport BlurredTBA2 from \"../IDOBlock/images/card_2.png\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport { metaMask, hooks } from \"../../../Header/ProviderDialog/Metamask\";\n\nimport ProviderDialog from \"../../../Header/ProviderDialog/ProviderDialog\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst IDO = ({ props }) => {\n const { chainId, accounts } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const [idos, setIdos] = useState([]);\n const [isLoading, setIsLoading] = useState(false);\n const [upcomingIdos, setUpcomingIdos] = useState([]);\n const [endedIdos, setEndedIdos] = useState([]);\n const [ongoingIdos, setOngoingIdos] = useState([]);\n const [myIdos, setMyIdos] = useState([]);\n const navigate = useNavigate();\n const [displayIndex, setDisplayIndex] = useState(0);\n const [showProviderDialog, setShowProviderDialog] = useState(false);\n\n const showMobileCompleted = window.innerWidth < 1000; //set to true if you want to return completed Sales tab on the main screen\n\n useEffect(() => {\n setIsLoading(true);\n getUpcomingIdos().then((response) => {\n setIsLoading(false);\n setUpcomingIdos([\n ...response.data.upcoming.map((e) => {\n return {\n id: e.id,\n title: e.title,\n sale_contract_address: e.contract_address,\n is_private_sale: e.is_private_sale,\n heading_text: e.heading_text,\n website: e.website_url,\n socials: e.socials,\n short_description: e.short_description,\n token: {\n name: e.token.name,\n symbol: e.token.symbol,\n img: e.logo_url,\n price: parseFloat(e.token.token_price_in_usd),\n token_distribution: parseInt(e.token.token_distribution),\n },\n saleInfo: {\n totalRaised: e.target_raised,\n raised: parseFloat(e.token.total_raise).toFixed(2),\n partisipants: e.number_of_participants,\n start_date: new Date(e.timeline.sale_start * 1000),\n token_price: e.current_price,\n time_until_launch: e.time_until_launch,\n end_date: e.timeline.sale_ends,\n\n info: {\n time_until_launch: null,\n token_sold: Math.round(parseFloat(e.token.total_tokens_sold)),\n token_distribution: e.token.token_distribution,\n sale_progres: e.percent_raised,\n },\n },\n bg_image: e.project_detail.project_bg,\n timeline: e.timeline,\n };\n }),\n { blank_img: BlurredTBA1 },\n { blank_img: BlurredTBA2 },\n ]);\n\n setOngoingIdos(\n response.data.ongoing.map((e) => {\n return {\n id: e.id,\n sale_contract_address: e.contract_address,\n is_private_sale: e.is_private_sale,\n title: e.title,\n token: {\n name: e.token.name,\n symbol: e.token.symbol,\n img: e.logo_url,\n price: parseFloat(e.token.token_price_in_usd),\n token_distribution: parseInt(e.token.token_distribution),\n },\n saleInfo: {\n totalRaised: e.target_raised,\n raised: parseFloat(e.token.total_raise).toFixed(2),\n partisipants: e.number_of_participants,\n start_date: new Date(e.timeline.sale_start * 1000),\n token_price: e.current_price,\n time_until_launch: e.time_until_launch,\n end_date: e.timeline.sale_ends,\n sale_price: e.token.token_price_in_usd\n ? e.token.token_price_in_usd\n : 0,\n\n info: {\n time_until_launch: null,\n token_sold: Math.round(parseFloat(e.token.total_tokens_sold)),\n token_distribution: e.token.token_distribution,\n sale_progres: e.percent_raised,\n },\n },\n bg_image: e.project_detail.project_bg,\n timeline: e.timeline,\n };\n })\n );\n\n setIdos(\n response.data.upcoming.map((e) => {\n return {\n id: e.id,\n socials: e.socials,\n website: e.website_url,\n heading_text: e.heading_text,\n is_private_sale: e.is_private_sale,\n token: {\n name: e.token.name,\n symbol: e.token.symbol,\n img: e.logo_url,\n price: parseFloat(e.token.current_token_price),\n },\n saleInfo: {\n totalRaised: e.target_raised,\n raised: parseFloat(e.token.total_raise).toFixed(2),\n partisipants: e.number_of_participants,\n start_date: new Date(e.timeline.sale_start * 1000),\n token_price: e.current_price,\n time_until_launch: e.time_until_launch,\n end_date: e.timeline.sale_ends,\n\n info: {\n time_until_launch: null,\n token_sold: Math.round(parseFloat(e.token.total_tokens_sold)),\n token_distribution: e.token.token_distribution,\n sale_progres: e.percent_raised,\n },\n },\n bg_image: e.project_detail.project_bg,\n timeline: e.timeline,\n };\n })\n );\n });\n\n getCompletedPRODIdos().then((response) => {\n setEndedIdos(\n response.data.ended.map((e) => {\n return {\n id: e.id,\n sale_contract_address: e.contract_address,\n is_private_sale: e.is_private_sale,\n token: {\n name: e.token.name,\n symbol: e.token.symbol,\n img: e.logo_url,\n price: parseFloat(e.token.token_price_in_usd),\n token_distribution: parseInt(e.token.token_distribution),\n total_raise: e.token.token_distribution,\n },\n saleInfo: {\n totalRaised: e.target_raised,\n raised: parseFloat(e.token.token_distribution).toFixed(2),\n partisipants: e.number_of_participants,\n start_date: new Date(e.timeline.sale_start * 1000),\n token_price: e.current_price,\n time_until_launch: e.time_until_launch,\n end_date: e.timeline.sale_ends,\n\n info: {\n time_until_launch: null,\n token_sold: Math.round(parseFloat(e.token.token_distribution)),\n token_distribution: e.token.token_distribution,\n sale_progres: e.percent_raised,\n },\n },\n bg_image: e.project_detail.project_bg,\n timeline: e.timeline,\n tge: e.project_detail.tge\n ? new Date(e.project_detail.tge)\n : undefined,\n };\n })\n );\n });\n }, []);\n\n useEffect(() => {\n if (account) {\n getMyIdos(account).then((response) => {\n setMyIdos(\n response.data.user_idos.map((e) => {\n return {\n id: e.id,\n sale_contract_address: e.contract_address,\n is_private_sale: e.is_private_sale,\n token: {\n name: e.token.name,\n symbol: e.token.symbol,\n img: e.logo_url,\n price: parseFloat(e.token.token_price_in_usd),\n token_distribution: parseInt(e.token.token_distribution),\n total_raise: e.token.token_distribution,\n },\n saleInfo: {\n totalRaised: e.target_raised,\n raised: parseFloat(e.token.token_distribution).toFixed(2),\n partisipants: e.number_of_participants,\n start_date: new Date(e.timeline.sale_start * 1000),\n token_price: e.current_price,\n time_until_launch: e.time_until_launch,\n end_date: e.timeline.sale_ends,\n\n info: {\n time_until_launch: null,\n token_sold: Math.round(\n parseFloat(e.token.token_distribution)\n ),\n token_distribution: e.token.token_distribution,\n sale_progres: e.percent_raised,\n },\n },\n bg_image: e.project_detail.project_bg,\n timeline: e.timeline,\n };\n })\n );\n if (displayIndex === 2) {\n setIdos(\n response.data.user_idos.map((e) => {\n return {\n id: e.id,\n sale_contract_address: e.contract_address,\n is_private_sale: e.is_private_sale,\n token: {\n name: e.token.name,\n symbol: e.token.symbol,\n img: e.logo_url,\n price: parseFloat(e.token.token_price_in_usd),\n token_distribution: parseInt(e.token.token_distribution),\n total_raise: e.token.total_raise,\n },\n saleInfo: {\n totalRaised: e.target_raised,\n raised: parseFloat(e.token.total_raise).toFixed(2),\n partisipants: e.number_of_participants,\n start_date: new Date(e.timeline.sale_start * 1000),\n token_price: e.current_price,\n time_until_launch: e.time_until_launch,\n end_date: e.timeline.sale_ends,\n\n info: {\n time_until_launch: null,\n token_sold: Math.round(\n parseFloat(e.token.total_tokens_sold)\n ),\n token_distribution: e.token.token_distribution,\n sale_progres: e.percent_raised,\n },\n },\n bg_image: e.project_detail.project_bg,\n timeline: e.timeline,\n };\n })\n );\n }\n });\n } else {\n setMyIdos([]);\n if (displayIndex === 2) {\n setIdos([]);\n }\n }\n }, [account]);\n\n return (\n
\n \n {ongoingIdos.length > 0 && (\n
\n

Ongoing Sales

\n\n
\n {ongoingIdos.map((ido_data, index) => {\n if (window.screen.width <= 1000) {\n return (\n \n );\n }\n\n return (\n \n );\n })}\n
\n
\n )}\n
\n\n
\n {\n setIdos([...upcomingIdos]);\n setDisplayIndex(0);\n }}\n className={\n displayIndex === 0 ? classes.menuElementActive : classes.menuElement\n }\n >\n Upcoming Sales\n
\n
\n {!showMobileCompleted && (\n {\n setIdos([...endedIdos]);\n setDisplayIndex(1);\n }}\n className={\n displayIndex === 1\n ? classes.menuElementActive\n : classes.menuElement\n }\n >\n Completed Sales\n
\n \n )}\n\n {\n setIdos([...myIdos]);\n setDisplayIndex(2);\n }}\n className={\n displayIndex === 2 ? classes.menuElementActive : classes.menuElement\n }\n >\n Your Sales\n \n \n \n\n \n {displayIndex !== 0 && (\n <>\n {idos.map((ido_data, index) => {\n return (\n \n );\n })}\n
\n {idos.length === 0 && account &&

No Sales to display

}\n {idos.length === 0 && !account && (\n
\n

\n Connect your wallet to view Sales you have participated in\n

\n {\n setShowProviderDialog(true);\n }}\n >\n Connect Wallet\n \n
\n )}\n
\n \n )}\n\n {displayIndex === 0 &&\n [...upcomingIdos].map((ido_data, index) => {\n return (\n \n );\n })}\n \n\n {showMobileCompleted && (\n <>\n
\n
\n Completed Sales\n
\n
\n
\n \n {endedIdos.length === 0 && (\n
\n {isLoading && }\n {!isLoading &&

No Sales to display

}\n
\n )}\n\n {endedIdos.map((ido_data, index) => {\n return (\n \n );\n })}\n \n \n )}\n \n \n );\n};\n\nexport default IDO;\n","export default __webpack_public_path__ + \"static/media/pancakeswap.a2bf1f88.svg\";","export default __webpack_public_path__ + \"static/media/uniswap.2153b9d7.svg\";","export default __webpack_public_path__ + \"static/media/appsushi.d486684c.png\";","export default __webpack_public_path__ + \"static/media/pin.13c651a7.png\";","import { useState } from \"react\";\n\nimport classes from \"./BuyPeak.module.scss\";\nimport PancakeLogo from \"./resources/pancakeswap.svg\";\nimport AppSushiLogo from \"./resources/appsushi.png\";\nimport HitBtc from \"./resources/pin.png\";\nimport UniswapLogo from \"./resources/uniswap.svg\";\nimport OneInchLogo from \"./resources/oneinch.svg\";\nimport BalancerLogo from \"./resources/balancer.svg\";\nimport ProbitLogo from \"./resources/probit.svg\";\nimport BiBoxLogo from \"./resources/bibox.svg\";\nimport Mexc from \"./resources/mexc1.png\";\nimport CoinMarketCapLogo from \"./resources/company-logo-coinmarketcap.svg\";\n\nconst BuyPeak = () => {\n const [exchanges, setExchanges] = useState([\n // {\n // link: \"https://www.mexc.com/exchange/PEAK_USDT\",\n // icon: Mexc,\n // },\n\n // {\n // link: 'https://www.bibox.com/zh/exchange/basic/PEAK_USDT',\n // icon: BiBoxLogo\n // },\n // {\n // link: 'https://balancer.exchange/#/swap',\n // icon: BalancerLogo\n // },\n\n // {\n // link: 'https://1inch.exchange/',\n // icon: OneInchLogo\n // },\n\n {\n link: \"https://pancakeswap.finance/swap\",\n icon: PancakeLogo,\n },\n\n {\n link: \"https://app.uniswap.org/#/swap?outputCurrency=0x633eE3fbE5ffc05bD44Ecd8240732fF9ef9Dee1d&chain=mainnet\",\n icon: UniswapLogo,\n },\n\n // {\n // link: \"https://hitbtc.com/peak-to-btc\",\n // icon: HitBtc,\n // },\n ]);\n\n return (\n
\n

Supported exchanges to buy PEAK:

\n
\n {exchanges.map((e) => (\n \n \n \n ))}\n
\n
\n );\n};\n\nexport default BuyPeak;\n","export default __webpack_public_path__ + \"static/media/oneinch.c8ba783d.svg\";","export default __webpack_public_path__ + \"static/media/balancer.65bb8216.svg\";","export default __webpack_public_path__ + \"static/media/probit.923a64e5.svg\";","export default __webpack_public_path__ + \"static/media/bibox.50885fba.svg\";","export default __webpack_public_path__ + \"static/media/mexc1.01bd3a5e.png\";","export default __webpack_public_path__ + \"static/media/company-logo-coinmarketcap.b4e9bf26.svg\";","export default __webpack_public_path__ + \"static/media/logo_white.04a9962b.svg\";","import classes from './GiveawayPanel.module.scss'\nimport Dialog from '@mui/material/Dialog';\nimport { makeStyles } from '@material-ui/core/styles';\nimport DialogActions from '@mui/material/DialogActions';\nimport Button from '@mui/material/Button';\nimport Logo from '../../../../resources/logo_white.svg'\n\n\nconst useStyles = makeStyles(theme => ({\n dialogPaper: {\n\n minWidth: '50vw'\n },\n}));\n\nconst GiveAwayPanel = ({ show, setShow }) => {\n return (\n \n
\n
\n \n
\n\n\n
\n

Win 650'000 PEAK tokens

\n

And be among the first to use Peakdefi Launchpad

\n
\n \n \n
\n\n
\n \n
\n
\n
\n\n\n \n );\n}\n\nexport default GiveAwayPanel;","export default __webpack_public_path__ + \"static/media/arrow.83f507e7.svg\";","export default __webpack_public_path__ + \"static/media/WHUFC-Crest_21-Full-Colour_RGB.ecd2a0bd.png\";","export default __webpack_public_path__ + \"static/media/ArrowRight.b1104a9c.svg\";","import classes from './KOL.module.scss'\nimport ArrowRight from './../../images/ArrowRight.svg'\n\nconst KOL = ({title, subtitle, icon, ctaText, link, mainText}) => {\n return (
\n
\n
\n \n
\n

{title}

\n

{subtitle}

\n
\n
\n\n
window.open(link, \"_blank\")}>\n {ctaText}\n \n
\n
\n
\n

{mainText}

\n
\n
);\n}\n \nexport default KOL;","export default __webpack_public_path__ + \"static/media/Instagram.44cb8516.svg\";","export default __webpack_public_path__ + \"static/media/YouTube.228b4311.svg\";","import KOL from './components/KOL/KOL';\nimport classes from './KOLs.module.scss'\n\nimport Instagram from './images/Instagram.svg';\nimport YouTube from './images/YouTube.svg';\n\nconst KOLs = () => {\n\n const kols = [\n {\n title: 'altcoindaily',\n subtitle: '502k Followers',\n icon: Instagram,\n ctaText: 'Go to Post',\n link: 'https://www.instagram.com/p/Cc0gi4XN-N-/',\n mainText: <>TAKEOFF
AT
PEAKDEFI\n },\n\n {\n title: 'Crypto Grizzly',\n subtitle: '200k Followers',\n icon: YouTube,\n ctaText: 'Go to Video',\n link: 'https://www.youtube.com/watch?v=9AmOloZ_g0I',\n mainText: 'PEAKDEFI is the #1 defi ecosystem to grow your wealth!!'\n },\n\n {\n title: 'AJC',\n subtitle: '75k Followers',\n icon: YouTube,\n ctaText: 'Go to Video',\n link: 'https://www.youtube.com/watch?v=YRiaB5C1hdE',\n mainText: 'PEAKDEFI is the next big crypto project!'\n }\n ]\n\n return (
\n

Influencers about Us

\n
\n {\n kols.map(kol =>\n \n )\n }\n
\n
);\n}\n\nexport default KOLs;","export default __webpack_public_path__ + \"static/media/EbookCrypto.d6a07ac7.png\";","import { useEffect } from \"react\";\n\nconst useScript = (url, callback) => {\n useEffect(() => {\n const script = document.createElement(\"script\");\n\n script.src = url;\n script.type = \"text/javascript\";\n script.defer = true;\n\n document.body.appendChild(script);\n\n callback?.();\n\n return () => {\n document.body.removeChild(script);\n };\n }, [url]);\n};\n\nexport default useScript;\n","import { FaCheck } from \"react-icons/fa\";\nimport classes from \"./EbookBanner.module.scss\";\nimport EbookCrpyto from \"./images/EbookCrypto.png\";\nimport { forwardRef, useEffect, useState, useImperativeHandle } from \"react\";\nimport Backdrop from \"@mui/material/Backdrop\";\nimport zIndex from \"@mui/material/styles/zIndex\";\nimport { CircularProgress } from \"@mui/material\";\nimport useScript from \"../../../../hooks/useScript/useScript\";\n\nfunction getWindowSize() {\n const { innerWidth, innerHeight } = window;\n return { innerWidth, innerHeight };\n}\n\nconst EbookBanner = forwardRef((props, ref) => {\n const [showingPopup, setShowingPopup] = useState(false);\n const [addedScript, setAddedScript] = useState();\n\n const [windowSize, setWindowSize] = useState(getWindowSize());\n\n useEffect(() => {\n if (windowSize > 800) {\n const wrappers = document.getElementsByClassName(\"grwf2-wrapper\");\n if (wrappers.length > 0) {\n wrappers[0].style =\n \"position: fixed !important; display:\" +\n (showingPopup ? \"block\" : \"none\") +\n \";\";\n }\n }\n });\n\n useEffect(() => {\n function handleWindowResize() {\n setWindowSize(getWindowSize());\n }\n\n window.addEventListener(\"resize\", handleWindowResize);\n\n const observer = new MutationObserver((event) => {\n const wrappers = document.getElementsByClassName(\n \"grwf2-wrapper wf2-embedded\"\n );\n if (wrappers.length > 0) {\n if (!wrappers[0].style.position.includes(\"fixed\")) {\n if (windowSize < 800) {\n wrappers[0].style = \"position: fixed !important; display: flex\";\n } else {\n wrappers[0].style = `display: flex;\n justify-content: center;\n position: fixed !important;\n top: 5%;\n left: -8%;`;\n }\n }\n }\n });\n\n const body = document.querySelector(\"body\");\n\n const config = {\n attributes: true,\n childList: true,\n subtree: true,\n };\n observer.observe(body, config);\n\n return () => {\n window.removeEventListener(\"resize\", handleWindowResize);\n };\n }, []);\n\n useEffect(() => {\n const wrappers = document.getElementsByClassName(\"grwf2-wrapper\");\n if (wrappers.length > 0) {\n if (windowSize < 800) {\n wrappers[0].style =\n \"position: fixed !important; display:\" +\n (showingPopup ? \"block\" : \"none\") +\n \";\";\n } else {\n wrappers[0].style = `display: ${showingPopup ? \"flex\" : \"none\"};\n justify-content: center;\n position: fixed !important;\n top: 5%;\n left: -8%;`;\n }\n }\n }, [showingPopup]);\n\n const activateScript = () => {\n const boxes = document.getElementById(\"sendx-modal-fLasrVpAxU7jL2RJuE4PZ6\");\n if (false) {\n boxes.forEach((box) => {\n box.style.display = \"block\";\n box.style.position = \"fixed !important\";\n });\n } else {\n const wrappers = document.getElementById(\n \"sendx-modal-fLasrVpAxU7jL2RJuE4PZ6\"\n );\n if (wrappers) {\n wrappers.classList = \"animated slideInUp\";\n wrappers.style = \"display: block\";\n wrappers.childNodes[1].childNodes[3].style = `top: ${\n (windowSize.innerHeight - 404) / 2\n }px !important; left: ${\n (windowSize.innerWidth - 600) / 2\n }px !important; display: block !important;`;\n\n // if (windowSize < 800) {\n // wrappers.style = 'position: fixed !important; display:' + (showingPopup ? 'block' : 'none') + ';';\n // }\n // else {\n // console.log('showingPopup',showingPopup)\n // // wrappers.style = `\n // // position: fixed !important;\n // // top: 50%;\n // // left: 50%;\n // // transform: translate(-50%, -50%);`;\n // }\n }\n }\n };\n\n useImperativeHandle(ref, () => ({\n getAlert() {\n activateScript();\n },\n hideAlert() {\n handleClickAway();\n },\n }));\n\n // useEffect(() => {\n // Object.keys(window).forEach((key) => {\n // if (/^on/.test(key)) {\n // window.addEventListener(key.slice(2), (event) => {\n // console.log(event);\n // });\n // }\n // });\n // }, []);\n\n const handleClickAway = () => {\n setShowingPopup(false);\n //document.body.removeChild(addedScript);\n console.log(\"CLICK AWAY EVENT \");\n\n //removing the popup\n //potential issues as i'm accessing dom directly and removing div with the popup\n const boxes = document.querySelectorAll(\".grwf2-wrapper\");\n boxes.forEach((box) => {\n box.style.display = \"none\";\n });\n };\n\n return (\n
\n \n {\"Book\n
\n

Free 5 Steps Checklist

\n
\n
\n
\n \n
\n

Recognize the best Sale projects in 5 easy steps

\n
\n
\n
\n \n
\n

Don't miss 100X opportunities any more

\n
\n
\n \n
\n \n\n theme.zIndex.drawer + 1 }}\n >\n \n \n
\n );\n});\n\nexport default EbookBanner;\n","import { useEffect, useState } from \"react\";\nimport classes from \"./MainScreen.module.scss\";\nimport InfoBlock from \"./components/InfoBlock/Info\";\nimport IDO from \"./components/IDOBlock/IDO\";\nimport { useNavigate } from \"react-router-dom\";\nimport BuyPeak from \"./components/BuyPeak/BuyPeak\";\nimport GiveAwayPanel from \"./../Header/components/GiveawayPanel/GiveawayPanel\";\nimport { AnimationOnScroll } from \"react-animation-on-scroll\";\nimport AlertsPanel from \"./components/AlertsPanel/AlertsPanel\";\nimport WestHamUnitedLogo from \"./images/WHUFC-Crest_21-Full-Colour_RGB.png\";\nimport KOLs from \"./components/KOLs/KOLs\";\nimport EbookBanner from \"./components/EbookBanner/EbookBanner\";\n\nconst MainScreen = () => {\n const [mainText, setMainText] = useState(<>Join the next crypto unicorns.);\n const navigate = useNavigate();\n\n const [showGiveaway, setShowGiveaway] = useState(false);\n\n return (\n
\n
\n {mainText}\n {/*
\n
\n
PEAKDEFI is the official DeFi
\n
asset management partner of:
\n
\n\n \n
*/}\n
\n
\n {/*
{ navigate('/sales') }}>\n Launchpad\n
*/}\n\n {/*
setShowGiveaway(true)}>\n Win 500'000 PEAK\n
\n\n
{ navigate(\"/admin-panel\") }}>\n Admin panel\n
*/}\n
\n \n\n \n \n \n \n\n \n \n \n\n {/* \n \n */}\n\n
\n \n
\n\n \n
\n );\n};\n\nexport default MainScreen;\n","export default __webpack_public_path__ + \"static/media/confetti.b75c0626.png\";","import Button from '@mui/material/Button';\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport { useEffect } from 'react';\n\nimport classes from './DialogBase.module.scss';\n\nconst DialogBase = ({ show, setShow, message, icon, buttonText }) => {\n const handleClose = () => {\n setShow(false);\n }\n return (<>\n handleClose()}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n fullWidth={true}\n maxWidth={'md'}\n >\n
\n \n
\n \n\n
\n\n
\n
handleClose()}>\n \n
\n \n );\n}\n\nexport default DialogBase;","import React, { useState, useEffect } from \"react\";\nimport classes from \"./MainInfo.module.scss\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport { BigNumber, ethers } from \"ethers\";\n\nimport { SALE_ABI, TOKEN_ABI } from \"../../../../consts/abi\";\n\nimport { useSelector } from \"react-redux\";\nimport { getUserDataKYC } from \"../../../Header/API/blockpass\";\nimport { toast } from \"react-toastify\";\n\nimport { providers } from \"ethers\";\nimport WalletConnectProvider from \"@walletconnect/ethereum-provider\";\n\nimport { RpcProvider } from \"../../../../consts/rpc\";\nimport Tooltip from \"@mui/material/Tooltip\";\nimport ErrorDialog from \"../../../ErrorDialog/ErrorDialog\";\nimport Confetti from \"../../../../resources/confetti.png\";\nimport DialogBase from \"../../../DialogBase/DialogBase\";\nimport { rpcWalletConnectProvider } from \"../../../../consts/walletConnect\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { useFetchDecimals } from \"scenes/AllocationStaking/API/hooks\";\n\nconst tokenContractAddress = \"0x0e457F76280AC83cB41389a2c9fc99e366b41f2b\";\n\nexport function MainInfo(props) {\n const { activate, deactivate, account, error } = useWeb3React();\n const [saleContract, setSaleContract] = useState();\n const [tokenContract, setTokenContract] = useState();\n\n const [amount, setAmount] = useState(0);\n const { accounts } = useMergedProvidersState();\n\n const userWalletAddress = accounts[0] ?? \"\";\n const { data: decimals } = useFetchDecimals();\n const [allowance, setAllowance] = useState(0);\n const [isRegistered, setIsRegistered] = useState(false);\n const [showVerify, setShowVerify] = useState(false);\n const [maxAmount, setMaxAmount] = useState(2500);\n const [isParticipated, setIsParticipated] = useState(false);\n const [depositedAmount, setDepositedAmount] = useState(200000);\n const [totalBUSDRaised, setTotalBUSDRaised] = useState(200000);\n const [inputWarning, setInputWarning] = useState(false);\n\n const [showError, setShowError] = useState(false);\n const [errorMessage, setErrorMessage] = useState(\"\");\n\n const [showMessage, setShowMessage] = useState(false);\n const [message, setMessage] = useState(\"\");\n const [messageIcon, setMessageIcon] = useState(Confetti);\n\n const { id } = props.ido ?? 0;\n const provider = useProviderHook();\n useEffect(() => {}, [isRegistered]);\n\n useEffect(async () => {\n const { ethereum } = window;\n if (userWalletAddress && ethereum) {\n let signer = await provider?.getSigner();\n\n const lsaleContract = new ethers.Contract(\n props.ido.contract_address,\n SALE_ABI,\n signer\n );\n setSaleContract(lsaleContract);\n isRegisteredCheck(lsaleContract);\n\n lsaleContract\n .isParticipated(userWalletAddress)\n .then((response) => {\n setIsParticipated(response);\n })\n .catch((error) => {});\n\n lsaleContract\n .userToParticipation(userWalletAddress)\n .then((response) => {\n setDepositedAmount(Math.round(response.amountPaid / 10 ** 18));\n })\n .catch((error) => {});\n\n lsaleContract\n .sale()\n .then((response) => {\n setTotalBUSDRaised(response.totalBUSDRaised / 10 ** 18);\n })\n .catch((error) => {});\n\n const ltokenContract = new ethers.Contract(\n tokenContractAddress,\n TOKEN_ABI,\n signer\n );\n setTokenContract(ltokenContract);\n\n ltokenContract\n .allowance(userWalletAddress, props.ido.contract_address)\n .then((response) => {\n setAllowance(parseInt(response.toString()));\n })\n .catch((erorr) => {});\n } else if (userWalletAddress) {\n const web3Provider = new providers.Web3Provider(rpcWalletConnectProvider);\n const signer = web3Provider.getSigner();\n\n const lsaleContract = new ethers.Contract(\n props.ido.contract_address,\n SALE_ABI,\n signer\n );\n\n lsaleContract\n .isParticipated(userWalletAddress)\n .then((response) => {\n setIsParticipated(response);\n })\n .catch((error) => {});\n\n lsaleContract\n .userToParticipation(userWalletAddress)\n .then((response) => {\n setDepositedAmount(Math.round(response.amountPaid / 10 ** 18));\n })\n .catch((error) => {});\n\n lsaleContract\n .sale()\n .then((response) => {\n setTotalBUSDRaised(response.totalBUSDRaised / 10 ** 18);\n })\n .catch((error) => {});\n\n setSaleContract(lsaleContract);\n isRegisteredCheck(lsaleContract);\n\n const ltokenContract = new ethers.Contract(\n tokenContractAddress,\n TOKEN_ABI,\n signer\n );\n setTokenContract(ltokenContract);\n\n ltokenContract\n .allowance(userWalletAddress, props.ido.contract_address)\n .then((response) => {\n setAllowance(parseInt(response.toString()));\n })\n .catch((erorr) => {});\n }\n }, [userWalletAddress, props.ido.contract_address]);\n\n useEffect(async () => {\n try {\n await getUserDataKYC(account)\n .then((response) => {\n if (response.data.data.status === \"approved\") {\n setShowVerify(false);\n } else {\n setShowVerify(true);\n }\n })\n .catch((error) => {\n setShowVerify(true);\n });\n } catch (error) {\n setShowVerify(true);\n }\n }, [account]);\n\n useEffect(() => {\n loadBlockpassWidget();\n });\n\n const loadBlockpassWidget = () => {\n const blockpass = new window.BlockpassKYCConnect(\n \"peakdefi_launchpad_c0f15\", // service client_id from the admin console\n {\n env: \"prod\",\n refId: account,\n }\n );\n blockpass.startKYCConnect();\n };\n\n const registerForSale = async () => {\n try {\n saleContract\n .registerForSale()\n .then((res) => {\n const transaction = res.wait().then((tran) => {\n setIsRegistered(true);\n });\n\n toast.promise(transaction, {\n pending: \"Registration pending\",\n success: \"Registration completed\",\n error: \"Registration failed\",\n });\n })\n .catch((error) => {\n if (error.data.message.includes(\"Need to stake minimum\")) {\n setShowError(true);\n setErrorMessage(\n \"You need to stake minimum amount of 10000 PEAK before registering for sale\"\n );\n }\n });\n\n //alert(\"Hash \" + result.hash)\n } catch (error) {}\n };\n\n const isRegisteredCheck = (lSaleContract) => {\n if (lSaleContract === undefined) return;\n\n lSaleContract\n .isWhitelisted()\n .then((res) => {\n setIsRegistered(res);\n })\n .catch((error) => {});\n };\n\n const participateSale = async () => {\n if (isParticipated) {\n return;\n }\n\n try {\n if (amount < 10) {\n setShowError(true);\n setErrorMessage(\n \"You cannot deposit less than 10 USDT tokens on this sale\"\n );\n } else {\n const roundedAmount = 2 * Math.floor(amount / 2);\n if (roundedAmount !== amount) {\n setAmount(roundedAmount);\n\n setShowError(true);\n setErrorMessage(\n \"You cannot buy an odd amount of tokens. Your deposit was lowered to the nearest even amount.\"\n );\n }\n //TODO change to BUSD decimals\n let bigAmount = BigNumber.from(Math.round(roundedAmount * 100)).mul(\n BigNumber.from(10).pow(props.ido.token.decimals - 2)\n );\n saleContract\n .participate(bigAmount)\n .then((res) => {\n const transactipon = res.wait().then((tran) => {\n setShowMessage(true);\n setMessage(\n `Congratulations! You have just made a deposit of ${roundedAmount} USDT`\n );\n\n setIsParticipated(true);\n setDepositedAmount(roundedAmount);\n });\n\n toast.promise(transactipon, {\n pending: \"Transaction pending\",\n success: \"Token purchase successful\",\n error: \"Transaction failed\",\n });\n })\n .catch((error) => {\n toast.error(\n <>\n {\"Request failed: \"}\n
\n {error.error.message}\n \n );\n });\n }\n } catch (error) {}\n };\n\n const approve = async () => {\n try {\n tokenContract\n .approve(props.ido.contract_address, ethers.constants.MaxUint256)\n .then((response) => {\n let transaction = response.wait().then((tran) => {\n setAllowance(ethers.constants.MaxUint256);\n });\n\n toast.promise(transaction, {\n pending: \"Approval request pending\",\n success: \"New amount approved\",\n error: \"Transaction failed\",\n });\n });\n } catch (error) {}\n };\n\n if (props.ido === undefined) return <>;\n return (\n
\n
\n {window.innerWidth <= 1000 && (\n
\n \n
\n )}\n\n
{props.title}
\n\n
\n {props.media.map((media, id) => {\n return (\n \n {\" \"}\n \"\"{\" \"}\n \n );\n })}\n
\n {/*false ?\n
\n
\n
You need to complete KYC process before participating in a sale
\n
\n\n {window.innerWidth > 1000 &&\n
\n {props.media.map((media, id) => {\n return \"\" \n })}\n
\n }\n\n
\n :\n
\n\n {\n (\n (props.ido.timeline.sale_end > Date.now() / 1000 &&\n props.ido.timeline.registration_start < Date.now() / 1000 &&\n (!isRegistered || props.ido.timeline.sale_start > Date.now() / 1000))\n ||\n (props.ido.timeline.sale_start < Date.now() / 1000 &&\n props.ido.timeline.sale_end > Date.now() / 1000 &&\n isRegistered)\n )\n &&\n\n
\n\n {props.ido.timeline.sale_end > Date.now() / 1000\n && props.ido.timeline.registration_start < Date.now() / 1000\n && (!isRegistered || props.ido.timeline.sale_start > Date.now() / 1000)\n && {\n if (!isRegistered)\n registerForSale()\n }}\n style={ isRegistered ? {\n backgroundColor: '#ffd24d',\n whiteSpace: 'nowrap'\n } : {} }\n >\n {isRegistered ? 'Whitelisted' : 'Get Whitelisted'}\n }\n {props.ido.timeline.sale_start < Date.now() / 1000 && props.ido.timeline.sale_end > Date.now() / 1000 && isRegistered &&\n
\n\n\n {props.ido.timeline.sale_start < Date.now() / 1000 && props.ido.timeline.sale_end > Date.now() / 1000 &&\n\n
\n {false &&
setAmount(maxAmount)}>MAX
}\n\n \n {\n setAmount(parseFloat(e.target.value));\n }}\n onFocus={() => {\n setInputWarning(true);\n }}\n\n onBlur={() => {\n setInputWarning(false);\n }}\n\n />\n \n \n
\n\n\n }\n\n {allowance >= amount &&\n <>\n \n { participateSale() }}\n style={{\n backgroundColor: isParticipated ? '#bfff80' : '#ffd24d',\n whiteSpace: 'nowrap'\n }}\n >\n {isParticipated ? \"Your deposit\" : \"Buy Tokens\"}\n \n \n \n }\n\n {(allowance < amount || isNaN(amount)) &&\n { approve() }}\n style={{ backgroundColor: '#ffd24d' }}\n >\n Approve\n \n }\n
\n }\n
\n }\n
*/}\n
\n\n \n \n
\n );\n}\n","export default __webpack_public_path__ + \"static/media/warning.1622617a.png\";","import Button from '@mui/material/Button';\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport { useEffect } from 'react';\nimport ErrorIcon from './resources/warning.png'\nimport { useNavigate } from 'react-router-dom'\n\nimport classes from './ErrorDialog.module.scss';\n\nconst ErrorDialog = ({ show, customMessage, message, setError }) => {\n\n const navigate = useNavigate();\n const handleClose = () => {\n setError(false);\n }\n\n const handleStaking = () => {\n setError(false);\n navigate('/allocation-staking');\n }\n\n return (<>\n handleClose()}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n fullWidth={true}\n maxWidth={'xs'}\n\n >\n
\n \n
\n \n {!!customMessage && !!message && <>\n

\n {customMessage}\n

\n {/*original message(removed) */}\n\n {/*

Original message:

\n

\n {message + \"\"}\n

*/}\n }\n\n {/* purely original message(removed) */}\n {!customMessage && false && <>\n

\n {message}\n

\n }\n\n {!message &&\n

\n {customMessage}\n

\n }\n
\n
handleStaking()}>\n \n
\n \n );\n}\n\nexport default ErrorDialog;","export default __webpack_public_path__ + \"static/media/warning.1622617a.png\";","import Button from '@mui/material/Button';\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport { useEffect } from 'react';\nimport ErrorIcon from './resources/warning.png'\n\nimport classes from './ErrorDialog.module.scss';\n\nconst ConfimrationDialog = ({ show, message, setError, callback }) => {\n const handleClose = () => {\n setError(false);\n }\n\n return (<>\n {handleClose()}}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n fullWidth={true}\n maxWidth={'xs'}\n\n >\n
\n \n
\n \n\n

\n {message}\n

\n
\n\n
{callback()}}>\n \n
\n
{handleClose()}}>\n \n
\n \n );\n}\n\nexport default ConfimrationDialog;","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const thankYouSlice = createSlice({\n name: 'thankYouPage',\n initialState: {\n register: false,\n deposit: false,\n staking: false,\n projectName: '',\n amount: 0\n },\n\n reducers: {\n setDeposit: (state, action) => {\n return {\n ...state,\n register: false,\n deposit: true,\n staking: false,\n projectName: action.payload.projectName,\n amount: action.payload.amount\n }\n },\n\n setRegister: (state, action) => {\n return {\n ...state,\n register: true,\n deposit: false,\n staking: false,\n projectName: action.payload.projectName\n }\n },\n\n setStaking: (state, action) => {\n return {\n ...state,\n register: false,\n deposit: false,\n staking: true,\n amount: action.payload\n }\n }\n }\n})\n\nexport const { setDeposit, setRegister, setStaking } = thankYouSlice.actions;\n\nexport default thankYouSlice.reducer;","export default __webpack_public_path__ + \"static/media/internet_logo.a30a43d4.png\";","export const kycBypassers = [\n \"0xe4727db0D9eF3cA11b9D177c2E92f63b512993A5\",\n \"0xAfB12C7CFA66D7eB824Da1CB55fFf64BB6bE7C18\",\n \"0xC12a149a86dd2B4C7a1D9703D90037fBBaaD3E64\",\n \"0xe4727db0D9eF3cA11b9D177c2E92f63b512993A5\"\n]; ","export default __webpack_public_path__ + \"static/media/arrowRight.279a2190.svg\";","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const whitelistTourSlice = createSlice({\n name: \"whitelistTourSlice\",\n initialState: {\n currentStep: 0,\n isShowingTour: false,\n isNextStepBlocked: false,\n isPreviousStepBlocked: true,\n },\n\n reducers: {\n nextStep: (state, action) => {\n return { ...state, currentStep: state.currentStep + 1 };\n },\n prevStep: (state, action) => {\n return { ...state, currentStep: state.currentStep - 1 };\n },\n setStep: (state, action) => {\n return { ...state, currentStep: action.payload };\n },\n openTour: (state, action) => {\n return { ...state, isShowingTour: true };\n },\n closeTour: (state, action) => {\n return { ...state, isShowingTour: false };\n },\n blockNextStep: (state, action) => {\n return { ...state, isNextStepBlocked: true };\n },\n unblockNextStep: (state, action) => {\n return { ...state, isNextStepBlocked: false };\n },\n blockPreviousStep: (state, action) => {\n return { ...state, isPreviousStepBlocked: true };\n },\n unblockPreviousStep: (state, action) => {\n return { ...state, isPreviousStepBlocked: false };\n },\n },\n});\n\nexport const {\n nextStep,\n prevStep,\n setStep,\n openTour,\n closeTour,\n blockNextStep,\n unblockNextStep,\n blockPreviousStep,\n unblockPreviousStep,\n} = whitelistTourSlice.actions;\n\nexport default whitelistTourSlice.reducer;\n","import { useWeb3React } from \"@web3-react/core\";\nimport { useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useDispatch } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport {\n nextStep,\n setStep,\n openTour as globalStateOpenTour,\n closeTour as globalStateCloseTour,\n blockNextStep,\n unblockNextStep,\n prevStep,\n blockPreviousStep,\n unblockPreviousStep,\n} from \"../../features/whitelistTourSlice\";\nimport { stakingContractAddress } from \"../../scenes/AllocationStaking/services/consts\";\nimport useStakingContract from \"../useStakingContract/useStakingContract\";\nimport useTokenContract from \"../useTokenContract/useTokenContract\";\nimport { hooks, metaMask } from \"../../scenes/Header/ProviderDialog/Metamask\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst useWhitelistTour = () => {\n const dispatch = useDispatch();\n const navigate = useNavigate();\n const { stakingContract } = useStakingContract();\n const { tokenContract } = useTokenContract();\n\n const { accounts } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n const [allowance, setAllowance] = useState(0);\n const balance = useSelector((state) => state.staking.balance);\n\n const goToNextStep = () => {\n dispatch(nextStep());\n };\n const goToPrevStep = () => {\n dispatch(prevStep());\n };\n\n const goToStep = (step) => {\n dispatch(setStep(step));\n };\n\n const openTour = () => {\n dispatch(globalStateOpenTour());\n };\n\n const setUserIsRegistered = () => {\n goToStep(2);\n };\n\n const closeTour = () => {\n dispatch(globalStateCloseTour());\n };\n\n const blockPropagation = () => {\n dispatch(blockNextStep());\n };\n\n const unblockPropagation = () => {\n dispatch(unblockNextStep());\n };\n\n const blockReverse = () => {\n dispatch(blockPreviousStep());\n };\n\n const unblockReverse = () => {\n dispatch(unblockPreviousStep());\n };\n\n const isNextStepBlocked = useSelector(\n (state) => state.whitelistTourSlice.isNextStepBlocked\n );\n\n const isTourOpen = useSelector(\n (state) => state.whitelistTourSlice.isShowingTour\n );\n\n const currentStep = useSelector(\n (state) => state.whitelistTourSlice.currentStep\n );\n\n const nextStepHandler = () => {\n if (currentStep === 1) {\n goToStep(3);\n } else {\n goToNextStep();\n }\n };\n\n const prevStepHandler = () => {\n if (!isPreviousStepBlocked) {\n goToPrevStep();\n }\n };\n\n const isPreviousStepBlocked = useSelector(\n (state) => state.whitelistTourSlice.isPreviousStepBlocked\n );\n\n const tourSteps = [\n {\n selector: '[data-tut=\"whlitelist_button\"]',\n content: \"Get started by whitelisting for this sale.\",\n },\n {\n selector: \".Toastify__toast-container\",\n content: \"Wait until the whitelisting transaction is completed.\",\n mutationObservables: [\".Toastify__toast-container\"],\n highlightedSelectors: [\".Toastify__toast-container\"],\n resizeObservables: [\".Toastify__toast-containerƒ\"],\n action: () => {\n blockPropagation();\n },\n },\n {\n selector: \".Toastify__toast-container\",\n content:\n \"Whitelist transaction failed, please try taking tour again later\",\n mutationObservables: [\".Toastify__toast-container\"],\n highlightedSelectors: [\".Toastify__toast-container\"],\n resizeObservables: [\".Toastify__toast-containerƒ\"],\n action: () => {\n blockPropagation();\n blockPreviousStep();\n },\n },\n {\n selector: '[data-tut=\"whlitelist_button\"]',\n content:\n \"You have now been successfully whitelisted, once the sale starts you can deposit your $BUSD. \",\n },\n ];\n\n return {\n goToNextStep,\n goToStep,\n currentStep,\n tourSteps,\n closeTour,\n openTour,\n isTourOpen,\n blockPropagation,\n unblockPropagation,\n isNextStepBlocked,\n nextStepHandler,\n setUserIsRegistered,\n blockReverse,\n unblockReverse,\n isPreviousStepBlocked,\n prevStepHandler,\n };\n};\n\nexport default useWhitelistTour;\n","import { createSlice } from \"@reduxjs/toolkit\";\nimport { boolean } from \"yup/lib/locale\";\n\nexport const depositTourSlice = createSlice({\n name: \"depositTourSlice\",\n initialState: {\n currentStep: 0,\n isShowingTour: false,\n isNextStepBlocked: false,\n isApproved: false,\n isPreviousStepBlocked: true,\n },\n\n reducers: {\n nextStep: (state, action) => {\n return { ...state, currentStep: state.currentStep + 1 };\n },\n prevStep: (state, action) => {\n return { ...state, currentStep: state.currentStep - 1 };\n },\n setStep: (state, action) => {\n return { ...state, currentStep: action.payload };\n },\n openTour: (state, action) => {\n return { ...state, isShowingTour: true };\n },\n closeTour: (state, action) => {\n return { ...state, isShowingTour: false };\n },\n blockNextStep: (state, action) => {\n return { ...state, isNextStepBlocked: true };\n },\n unblockNextStep: (state, action) => {\n return { ...state, isNextStepBlocked: false };\n },\n setIsApproved: (state, action) => {\n return { ...state, isApproved: action.payload };\n },\n blockPreviousStep: (state, action) => {\n return { ...state, isPreviousStepBlocked: true };\n },\n unblockPreviousStep: (state, action) => {\n return { ...state, isPreviousStepBlocked: false };\n },\n },\n});\n\nexport const {\n nextStep,\n prevStep,\n setStep,\n openTour,\n closeTour,\n blockNextStep,\n unblockNextStep,\n setIsApproved,\n blockPreviousStep,\n unblockPreviousStep,\n} = depositTourSlice.actions;\n\nexport default depositTourSlice.reducer;\n","import { useEffect } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useDispatch } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport {\n nextStep,\n setStep,\n openTour as globalStateOpenTour,\n closeTour as globalStateCloseTour,\n blockNextStep,\n unblockNextStep,\n setIsApproved,\n blockPreviousStep,\n unblockPreviousStep,\n prevStep,\n} from \"../../features/depositTourSlice\";\n\nconst useDepositTour = (isApproved) => {\n const dispatch = useDispatch();\n const navigate = useNavigate();\n\n const goToNextStep = () => {\n dispatch(nextStep());\n };\n const goToStep = (step) => {\n dispatch(setStep(step));\n };\n\n const globalIsApproved = useSelector(\n (state) => state.depositTourSlice.isApproved\n );\n\n useEffect(() => {\n dispatch(setIsApproved(isApproved));\n }, [isApproved]);\n\n const openTour = () => {\n goToStep(0);\n dispatch(globalStateOpenTour());\n };\n\n const amountIsApproved = () => {\n goToStep(2);\n };\n\n const closeTour = () => {\n dispatch(globalStateCloseTour());\n };\n\n const blockPropagation = () => {\n dispatch(blockNextStep());\n };\n\n const unblockPropagation = () => {\n dispatch(unblockNextStep());\n };\n\n const blockReverse = () => {\n dispatch(blockPreviousStep());\n };\n\n const unblockReverse = () => {\n dispatch(unblockPreviousStep());\n };\n\n const isNextStepBlocked = useSelector(\n (state) => state.depositTourSlice.isNextStepBlocked\n );\n\n const isPreviousStepBlocked = useSelector(\n (state) => state.depositTourSlice.isPreviousStepBlocked\n );\n\n const isTourOpen = useSelector(\n (state) => state.depositTourSlice.isShowingTour\n );\n\n const currentStep = useSelector(\n (state) => state.depositTourSlice.currentStep\n );\n\n const nextStepHandler = () => {\n debugger;\n if (currentStep === 0 && globalIsApproved) {\n goToStep(2);\n } else if (currentStep === 5) {\n navigate(-1);\n } else {\n goToNextStep();\n }\n };\n\n const tourSteps = [\n {\n selector: '[data-tut=\"all-ido-inputs\"]',\n mutationObservables: ['[data-tut=\"all-ido-inputs\"]'],\n highlightedSelectors: ['[data-tut=\"all-ido-inputs\"]'],\n resizeObservables: ['[data-tut=\"all-ido-inputs\"]'],\n content: \"Enter the amount of $USDT you would like to deposit.\",\n },\n {\n selector: '[data-tut=\"deposit-approve-button\"]',\n content:\n \"Click this button twice to approve and deposit the $USDT amount you just entered.\",\n action: () => {\n blockPropagation();\n },\n },\n {\n selector: '[data-tut=\"ido-deposit-button\"]',\n mutationObservables: ['[data-tut=\"ido-deposit-button\"]'],\n highlightedSelectors: ['[data-tut=\"ido-deposit-button\"]'],\n resizeObservables: ['[data-tut=\"ido-deposit-button\"]'],\n content:\n \"Click this button twice to approve and deposit the $USDT amount you just entered.\",\n action: () => {\n blockPropagation();\n },\n },\n {\n selector: \".Toastify__toast-container\",\n content: \"Wait until the transaction is completed.\",\n mutationObservables: [\".Toastify__toast-container\"],\n highlightedSelectors: [\".Toastify__toast-container\"],\n resizeObservables: [\".Toastify__toast-container\"],\n action: () => {\n blockPropagation();\n },\n },\n {\n selector: \".Toastify__toast-container\",\n content: \"Something went wrong. Please try again later\",\n mutationObservables: [\".Toastify__toast-container\"],\n highlightedSelectors: [\".Toastify__toast-container\"],\n resizeObservables: [\".Toastify__toast-container\"],\n action: () => {\n blockPropagation();\n },\n },\n {\n selector: '[data-tut=\"success-deposit-screen\"]',\n mutationObservables: ['[data-tut=\"success-deposit-screen\"]'],\n highlightedSelectors: ['[data-tut=\"success-deposit-screen\"]'],\n resizeObservables: ['[data-tut=\"success-deposit-screen\"]'],\n content:\n \"You have successfully deposited tokens, click next to return to project details page and view the sum you deposited\",\n action: () => {\n unblockPropagation();\n },\n },\n {\n selector: '[data-tut=\"all-ido-inputs\"]',\n content: \"View the sum you just deposited.\",\n },\n ];\n\n const goToPrevStep = () => {\n dispatch(prevStep());\n };\n\n const prevStepHandler = () => {\n goToPrevStep();\n };\n\n return {\n goToNextStep,\n goToStep,\n goToPrevStep,\n currentStep,\n tourSteps,\n closeTour,\n openTour,\n isTourOpen,\n blockPropagation,\n unblockPropagation,\n blockReverse,\n unblockReverse,\n isNextStepBlocked,\n isPreviousStepBlocked,\n nextStepHandler,\n amountIsApproved,\n prevStepHandler,\n };\n};\n\nexport default useDepositTour;\n","export const admins = {\n \"55\": \"0x90D9bEC17bE3804Cabe5dA25166cD7d81a014cEf\",\n \"another-1\": \"0x98672607C75C4A6c021c9867d055C9954Ec7a62d\",\n};\n","export const abi = [\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_admin\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"_saleAmount\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n inputs: [],\n name: \"admin\",\n outputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"tokenPercent\",\n type: \"uint256\",\n },\n ],\n name: \"calculateAmountWithdrawingPortionPub\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"depositTokens\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"tokenAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"extrimalWithdraw\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getClaimedInfo\",\n outputs: [\n {\n internalType: \"bool[]\",\n name: \"\",\n type: \"bool[]\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getVestingInfo\",\n outputs: [\n {\n internalType: \"uint256[]\",\n name: \"\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"\",\n type: \"uint256[]\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"saleAmount\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"saleToken\",\n outputs: [\n {\n internalType: \"contract IERC20Extented\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"userWallet\",\n type: \"address\",\n },\n ],\n internalType: \"struct Distribution.UserTokens[]\",\n name: \"usersStake\",\n type: \"tuple[]\",\n },\n ],\n name: \"setUserDeposit\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256[]\",\n name: \"_unlockingTimes\",\n type: \"uint256[]\",\n },\n {\n internalType: \"uint256[]\",\n name: \"_percents\",\n type: \"uint256[]\",\n },\n ],\n name: \"setVestingParams\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tokensDeposited\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"userToParticipation\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"userTokens\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"vestingPercentPerPortion\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n name: \"vestingPortionsUnlockTime\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256[]\",\n name: \"portionIds\",\n type: \"uint256[]\",\n },\n ],\n name: \"withdrawMultiplePortions\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"uint256\",\n name: \"portionId\",\n type: \"uint256\",\n },\n ],\n name: \"withdrawTokens\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n];\n\nexport const distribution_contract_address =\n \"0xbBA337fb2DD1C8293BDca287607ff51081D178b4\";\n","import { useWeb3React } from \"@web3-react/core\";\nimport { ethers, BigNumber, providers } from \"ethers\";\nimport { useEffect, useState } from \"react\";\nimport { SALE_ABI } from \"../../consts/abi\";\nimport { rpcWalletConnectProvider } from \"../../consts/walletConnect\";\nimport {\n distribution_contract_address,\n abi,\n} from \"../useDepositSaleTokens/consts\";\nimport { hooks, metaMask } from \"../../scenes/Header/ProviderDialog/Metamask\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst useDistributionContract = (sale_distribution_contract_address) => {\n const { accounts, chainId } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const { ethereum } = window;\n const provider = useProviderHook();\n const [distributionContract, setDistributionContract] = useState(null);\n\n const updateDistributionContract = () => {\n const signer = provider?.getSigner();\n setDistributionContract(\n new ethers.Contract(sale_distribution_contract_address, abi, signer)\n );\n };\n\n useEffect(() => {\n if (sale_distribution_contract_address && account) {\n updateDistributionContract();\n }\n }, [sale_distribution_contract_address, account, chainId]);\n\n return { distributionContract, updateDistributionContract };\n};\n\nexport default useDistributionContract;\n","import { useWeb3React } from \"@web3-react/core\";\nimport { ethers, BigNumber, providers } from \"ethers\";\nimport { useEffect, useState } from \"react\";\nimport { SALE_ABI } from \"../../consts/abi\";\nimport { rpcWalletConnectProvider } from \"../../consts/walletConnect\";\nimport { hooks, metaMask } from \"../../scenes/Header/ProviderDialog/Metamask\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst useSaleContract = (contract_address) => {\n const { accounts } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n const { ethereum } = window;\n const provider = useProviderHook();\n const [saleContract, setSaleContract] = useState(null);\n\n const updateSaleContract = () => {\n const signer = provider?.getSigner();\n setSaleContract(new ethers.Contract(contract_address, SALE_ABI, signer));\n };\n\n useEffect(() => {\n if (!contract_address || contract_address === \"0x\") return;\n\n updateSaleContract();\n }, [ethereum, account, contract_address]);\n\n return { saleContract, updateSaleContract };\n};\n\nexport default useSaleContract;\n","import { useWeb3React } from \"@web3-react/core\";\nimport { ethers, providers } from \"ethers\";\nimport { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport { rpcWalletConnectProvider } from \"../../consts/walletConnect\";\nimport {\n tokenContractAddress,\n abi as tokenAbi,\n} from \"../../scenes/AllocationStaking/components/StakeCard/services/consts\";\nimport { hooks, metaMask } from \"../../scenes/Header/ProviderDialog/Metamask\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst useSaleTokenContract = (sale_token_contract_address) => {\n const { accounts, chainId } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const [tokenContract, setTokenContract] = useState(null);\n const { ethereum } = window;\n const provider = useProviderHook();\n\n useEffect(() => {\n if (!sale_token_contract_address || sale_token_contract_address === \"0x\") {\n return;\n }\n\n const signer = provider?.getSigner();\n setTokenContract(\n new ethers.Contract(sale_token_contract_address, tokenAbi, signer)\n );\n }, [ethereum, account, sale_token_contract_address, chainId]);\n\n return {\n tokenContract,\n };\n};\n\nexport default useSaleTokenContract;\n","export default __webpack_public_path__ + \"static/media/polygon.28482b91.svg\";","import classes from \"./NetworkInfoSection.module.scss\";\nimport polygonLogo from \"./assets/polygon.svg\";\n\nconst NetfowrkInfoSection = ({ network }) => {\n const logos = {\n polygon: polygonLogo,\n };\n\n return (\n
\n
\n

Distribution Network

\n \n
\n
\n );\n};\n\nexport default NetfowrkInfoSection;\n","import web3 from \"web3\";\nimport { toast } from \"react-toastify\";\nimport { useEffect, useState } from \"react\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { Dialog } from \"@material-ui/core\";\nimport { DialogContent } from \"@mui/material\";\nimport classes from \"./WhitelistNetworkSwitcher.module.scss\";\n\nconst WhitelistNetworkSwitcher = ({ isWhitelist }) => {\n const { chainId, accounts } = useMergedProvidersState();\n const [isOpen, setIsOpen] = useState(false);\n\n const onChangeNetwork = async (desiredNetworkID) => {\n if (window.ethereum.networkVersion !== desiredNetworkID) {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{ chainId: web3.utils.toHex(desiredNetworkID) }],\n });\n\n setIsOpen(false);\n } catch (err) {\n // This error code indicates that the chain has not been added to MetaMask\n if (err.code === 4902) {\n toast.error(\n \"The Polygon network was not connected to your wallet provider. To continue please add Polygon network to your wallet provider\"\n );\n }\n }\n }\n };\n\n useEffect(() => {\n if (!chainId) {\n return;\n }\n if (\n accounts &&\n chainId !==\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]) &&\n isWhitelist\n ) {\n //onChangeNetwork(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]);\n setIsOpen(true);\n }\n }, [chainId, isWhitelist]);\n\n return (\n <>\n {\n setIsOpen(false);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n fullWidth={true}\n maxWidth={\"sm\"}\n >\n \n

\n You are not whitelisted for this project. If you intend to get\n whitelisted please switch to BNB Smart Chain Network\n

\n
\n {\n onChangeNetwork(\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0])\n );\n }}\n >\n \n \n \n \n );\n};\n\nexport default WhitelistNetworkSwitcher;\n","export const getTierValues = (name) => {\n if (name === \"bit rivals\") {\n return [200, 550, 950, 2100, 4200, 7500];\n }\n if (name === \"edge video ai\") {\n return [200, 550, 950, 2100, 4200, 7500];\n }\n\n return [55, 120, 200, 300, 500, 850];\n};\n","import { useEffect, useState } from \"react\";\n\nfunction timeLeft(seconds) {\n var d = Math.floor(seconds / (3600 * 24));\n var h = Math.floor((seconds % (3600 * 24)) / 3600);\n var m = Math.floor((seconds % 3600) / 60)\n .toString()\n .padStart(2, 0);\n var s = Math.floor(seconds % 60)\n .toString()\n .padStart(2, \"0\");\n if (d > 0) {\n return d + \" days, \" + h + \" h, \" + m + \" mins\";\n } else if (h > 0) {\n return h + \" hours \" + m + \" minutes\";\n } else if (m > 0 || s > 0) {\n return m + \":\" + s;\n } else {\n return \"Unlocked\";\n }\n}\n\nconst SaleStartCountdown = ({ sale_start_date }) => {\n const [secondsLeft, setSecondsLeft] = useState(\n Math.floor((sale_start_date?.getTime() ?? 0) - Date.now()) / 1000\n );\n\n useEffect(() => {\n const timer = setInterval(() => {\n setSecondsLeft((secondsLeft) => secondsLeft - 1);\n\n if (secondsLeft < 0) {\n clearInterval(timer);\n }\n }, 1000);\n\n return () => {\n clearInterval(timer);\n };\n }, [sale_start_date]);\n\n return (\n \n Time until sale starts: {timeLeft(secondsLeft)}\n \n );\n};\n\nexport default SaleStartCountdown;\n","import React, { useState, useEffect, useMemo } from \"react\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport { metaMask, hooks } from \"../../../Header/ProviderDialog/Metamask\";\n\nimport { BigNumber, ethers } from \"ethers\";\n\nimport { SALE_ABI, TOKEN_ABI } from \"../../../../consts/abi\";\n\nimport { useSelector, useDispatch } from \"react-redux\";\nimport { getUserDataKYC } from \"../../../Header/API/blockpass\";\nimport { toast } from \"react-toastify\";\n\nimport { providers } from \"ethers\";\nimport WalletConnectProvider from \"@walletconnect/ethereum-provider\";\n\nimport { RpcProvider } from \"../../../../consts/rpc\";\nimport Tooltip from \"@mui/material/Tooltip\";\nimport ErrorDialog from \"../../../ErrorDialog/ErrorDialog\";\nimport ErrorDialogStake from \"./ErrorDialog/ErrorDialog\";\nimport Confetti from \"../../../../resources/confetti.png\";\nimport ErrorImg from \"./ErrorDialog/resources/warning.png\";\nimport DialogBase from \"../../../DialogBase/DialogBase\";\n\nimport classes from \"./IdoBlock.module.scss\";\nimport ConfimrationDialog from \"../../../ConfirmationDialog/ConfirmationDialog\";\n\nimport { setDeposit, setRegister } from \"./../../../../features/thankYouSlice\";\n\nimport InternetLogo from \"./images/internet_logo.png\";\nimport web3 from \"web3\";\n\nimport { useNavigate, useParams } from \"react-router-dom\";\n\nimport KeyboardArrowDownIcon from \"@mui/icons-material/KeyboardArrowDown\";\nimport KeyboardArrowUpIcon from \"@mui/icons-material/KeyboardArrowUp\";\nimport ArrowRight from \"./images/arrowRight.svg\";\nimport { kycBypassers } from \"../../../../consts/kyc\";\nimport { rpcWalletConnectProvider } from \"../../../../consts/walletConnect\";\nimport useWhitelistTour from \"../../../../hooks/useWhitelistTour/useWhitelistTour\";\nimport useDepositTour from \"../../../../hooks/useDepositTour/useDepositTour\";\nimport { setSaleStatus } from \"../../../../features/projectDetailsSlice\";\nimport { saveParticipation } from \"./API/deposit\";\nimport { admins } from \"../../helpers/adminsList\";\nimport { useDepositSaleTokens } from \"../../../../hooks/useDepositSaleTokens/useDepostSaleTokens\";\nimport useJSONContract from \"../../../../hooks/useJSONContract/useJSONContract\";\nimport NetfowrkInfoSection from \"../NetworkInfoSection/NetworkInfoSection\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport useSaleContract from \"hooks/useSaleContract/useSaleContract\";\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\nimport {\n useFetchDecimals,\n useFetchMyStakingStats,\n} from \"scenes/AllocationStaking/API/hooks\";\nimport WhitelistNetworkSwitcher from \"../WhitelistNetworkSwitcher/WhitelistNetworkSwitcher\";\nimport tierJSON from \"./services/tier.json\";\nimport { getTierValues } from \"./services/heplers\";\nimport { CircularProgress } from \"@mui/material\";\nimport SaleStartCountdown from \"../SaleStartCountdown/SaleStartCountdown\";\n\nfunction numberWithCommas(x) {\n return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\nfunction timeToDate(time) {\n let date = new Date(time * 1000);\n let hours = date.getHours();\n let minutes = \"0\" + date.getMinutes();\n let seconds = \"0\" + date.getSeconds();\n let formattedTime =\n hours + \":\" + minutes.substr(-2) + \":\" + seconds.substr(-2);\n return formattedTime;\n}\n\nfunction timeLeft(seconds) {\n let timeString = \"\";\n var d = Math.floor(seconds / (3600 * 24));\n var h = Math.floor((seconds % (3600 * 24)) / 3600);\n var m = Math.floor((seconds % 3600) / 60);\n var s = Math.floor(seconds % 60);\n if (d > 0) {\n return d + \" days, \" + h + \" h, \" + m + \" mins\";\n } else if (h > 0) {\n return h + \" hours \" + m + \" minutes\";\n } else if (m > 0 || s > 0) {\n return m + \":\" + s;\n } else {\n return \"Launched\";\n }\n}\n\nfunction priceToFormatedPrice(price) {\n return \"$\" + price;\n}\n\nconst tokenContractAddress = process.env.REACT_APP_BUSD_TOKEN_ADDRESS;\n\nconst IdoBlock = ({ idoInfo, ido, media, projectName }) => {\n const {\n goToNextStep: goToWhitelistTourNextStep,\n setUserIsRegistered,\n goToStep: goToWhitelistStep,\n } = useWhitelistTour();\n\n const params = useParams();\n\n const [isRegistered, setIsRegistered] = useState(false);\n const [isRegistrationPending, setIsRegistrationPending] = useState(false);\n\n const [depositedAmount, setDepositedAmount] = useState(0);\n\n const [{ data: userInfo }] = useFetchMyStakingStats();\n const stakingBalance = userInfo?.amount ?? 0;\n\n const { contract: jsonContract } = useJSONContract(\n ido.contract_address,\n SALE_ABI\n );\n const provider = useProviderHook();\n\n const { accounts, chainId = 56 } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n //const [saleContract, setSaleContract] = useState();\n const { saleContract } = useSaleContract(ido.contract_address);\n\n const [tokenContract, setTokenContract] = useState();\n\n const [amount, setAmount] = useState(0);\n const userWalletAddress = account;\n const { data: decimals } = useFetchDecimals();\n const [allowance, setAllowance] = useState(0);\n const [showVerify, setShowVerify] = useState(false);\n const [maxAmount, setMaxAmount] = useState(2500);\n const [isParticipated, setIsParticipated] = useState(false);\n const [totalBUSDRaised, setTotalBUSDRaised] = useState(0);\n const [inputWarning, setInputWarning] = useState(false);\n const [userTier, setUserTier] = useState();\n const [isLotteryWinner, setIsLotteryWinner] = useState(false);\n\n const [showError, setShowError] = useState(false);\n const [showErrorStake, setShowErrorStake] = useState(false);\n const [errorMessage, setErrorMessage] = useState(\"\");\n\n const [showMessage, setShowMessage] = useState(false);\n const [message, setMessage] = useState(\"\");\n const [messageIcon, setMessageIcon] = useState(Confetti);\n\n const [showConfirm, setShowConfirm] = useState(false);\n const [callback, setCallback] = useState();\n const [confirmMessage, setConfirmMessage] = useState(\"\");\n\n const [sloganCollapsed, setSloganCollapsed] = useState(true);\n\n const dispatch = useDispatch();\n const navigate = useNavigate();\n const depositTour = useDepositTour(allowance > amount);\n\n const {\n isTokensDeposited,\n allow: distributionAllow,\n allowance: distributionAllowance,\n depositTokens: distributionDepositTokens,\n distributionContract,\n } = useDepositSaleTokens(\n ido.token.token_address,\n \"0xbBA337fb2DD1C8293BDca287607ff51081D178b4\",\n account === admins[projectName]\n );\n\n useEffect(() => {\n if (!!saleContract && userWalletAddress) {\n saleContract\n .Whitelist(userWalletAddress)\n .then((response) => {\n setUserTier(parseInt(response.userTierId.toString()));\n if (response.userTierId == 0) setIsLotteryWinner(true);\n })\n .catch((error) => {\n console.log(error);\n });\n }\n }, [saleContract, isRegistered, userWalletAddress]);\n\n // useEffect(async () => {\n // try {\n // await getUserDataKYC(account).then(response => {\n // if (response.data.data.status === \"approved\") {\n // setShowVerify(false);\n // } else {\n // setShowVerify(true);\n // }\n // }).catch(error => {\n // setShowVerify(true);\n // })\n // } catch (error) {\n // setShowVerify(true);\n // }\n // }, [account])\n\n useEffect(() => {\n if (saleContract) {\n isRegisteredCheck(saleContract);\n }\n }, [saleContract]);\n\n useEffect(() => {\n const callBack = async () => {\n const { ethereum } = window;\n if (userWalletAddress && ethereum) {\n let signer = await provider?.getSigner();\n\n const jsonProvider = new ethers.providers.JsonRpcProvider(RpcProvider);\n\n const ltokenContract = new ethers.Contract(\n tokenContractAddress,\n TOKEN_ABI,\n signer\n );\n setTokenContract(ltokenContract);\n\n ltokenContract\n ?.allowance(userWalletAddress, ido.contract_address)\n .then((response) => {\n setAllowance(parseInt(response.toString()));\n })\n .catch((erorr) => {});\n } else if (userWalletAddress) {\n const web3Provider = new providers.Web3Provider(\n rpcWalletConnectProvider\n );\n const signer = web3Provider.getSigner();\n\n const ltokenContract = new ethers.Contract(\n tokenContractAddress,\n TOKEN_ABI,\n signer\n );\n setTokenContract(ltokenContract);\n\n ltokenContract\n ?.allowance(userWalletAddress, ido.contract_address)\n .then((response) => {\n setAllowance(parseInt(response.toString()));\n })\n .catch((erorr) => {});\n } else {\n const usaleContract = new ethers.Contract(\n ido.contract_address,\n SALE_ABI,\n provider\n );\n\n usaleContract\n .sale()\n .then((response) => {\n setTotalBUSDRaised(response.totalBUSDRaised / 10 ** 18);\n })\n .catch((error) => {});\n }\n\n jsonContract\n .isParticipated(userWalletAddress)\n .then((response) => {\n setIsParticipated(response && account);\n })\n .catch((error) => {});\n\n jsonContract\n .userToParticipation(userWalletAddress)\n .then((response) => {\n setDepositedAmount(Math.round(response.amountPaid / 10 ** 18));\n })\n .catch((error) => {});\n\n jsonContract\n .sale()\n .then((response) => {\n setTotalBUSDRaised(response.totalBUSDRaised / 10 ** 18);\n })\n .catch((error) => {});\n\n isRegisteredCheck();\n\n if (ido.id == 13) {\n setShowMessage(true);\n setMessage(`

Due to bad actors (launchpads) that dumped the FRAG token during the TGE, we refunded all our investors.\n On top of that, we negotiated with Fragmint that they will airdrop 20% of each investor's individual allocation of their re-launched version of the FRAG token.\n

\n

\n In order to access your FRAG tokens, make sure to add their token to your wallet: 0x1a73308d8eeb3c1a2b771e9ace73508c52706b76\n

\n

The free Fragmint airdrop will be vested over 10 months. This means that 2% of the original Sale investment will be airdropped to the investor's wallet every month. The first airdrop was already made at the end of November 2022.

`);\n setMessageIcon(ErrorImg);\n }\n };\n\n if (jsonContract) {\n callBack();\n }\n }, [userWalletAddress, ido.contract_address, jsonContract, account]);\n\n const addToken = async () => {\n const { ethereum } = window;\n if (ido.token && ethereum) {\n try {\n // wasAdded is a boolean. Like any RPC method, an error may be thrown.\n const wasAdded = await ethereum.request({\n method: \"wallet_watchAsset\",\n params: {\n type: \"ERC20\", // Initially only supports ERC20, but eventually more!\n options: {\n address: ido.token.token_address, // The address that the token is at.\n symbol: ido.token.symbol.replaceAll(\"$\", \"\"), // A ticker symbol or shorthand, up to 5 chars.\n decimals: ido.token.decimals, // The number of decimals in the token\n image: ido.token.logo_url, // A string url of the token logo\n },\n },\n });\n } catch (error) {}\n }\n };\n\n const isRegisteredCheck = (lSaleContract) => {\n if (jsonContract === undefined) return;\n\n jsonContract\n .Whitelist(account)\n .then((res) => {\n setIsRegistered(res.userAddress === account);\n })\n .catch((error) => {});\n };\n\n const registerForSale = async () => {\n setIsRegistrationPending(true);\n try {\n saleContract\n .registerForSale()\n .then((res) => {\n const transaction = res\n .wait()\n .then((tran) => {\n setIsRegistrationPending(false);\n setIsRegistered(true);\n goToWhitelistStep(3);\n dispatch(setRegister({ projectName: idoInfo.token.name }));\n navigate(\"/thank-you-register\");\n depositTour.nextStepHandler();\n })\n .error(() => {\n goToWhitelistStep(2);\n depositTour.goToNextStep(4);\n });\n\n toast.promise(transaction, {\n pending: \"Registration pending\",\n success: \"Registration completed\",\n error: \"Registration failed\",\n });\n })\n .catch((error) => {\n if (error?.data?.message.includes(\"Need to stake minimum\")) {\n setShowErrorStake(true);\n setErrorMessage(\n \"You need to stake minimum amount of 1000 PEAK before registering for sale\"\n );\n }\n });\n\n //alert(\"Hash \" + result.hash)\n } catch (error) {\n setIsRegistrationPending(false);\n }\n };\n\n const actualSaleRequest = async () => {\n const roundedAmount = 2 * Math.floor(amount / 2);\n let bigAmount = BigNumber.from(Math.round(roundedAmount * 100)).mul(\n BigNumber.from(10).pow(16)\n );\n saleContract\n .participate(bigAmount)\n .then((res) => {\n depositTour.goToNextStep();\n const transactipon = res\n .wait()\n .then((tran) => {\n saveParticipation(ido.id, account);\n setMessageIcon(Confetti);\n depositTour.goToStep(5);\n setShowMessage(true);\n setMessage(\n `Congratulations! You have just made a deposit of ${roundedAmount} USDT`\n );\n\n setIsParticipated(true);\n setDepositedAmount(roundedAmount);\n\n dispatch(\n setDeposit({\n projectName: idoInfo.token.name,\n amount: roundedAmount,\n })\n );\n navigate(\"/thank-you-deposit\");\n })\n .catch(() => {\n depositTour.goToNextStep(4);\n });\n\n toast.promise(transactipon, {\n pending: \"Deposit transaction pending\",\n success: \"Depost transaction successful\",\n error: \"Approval transaction failed\",\n });\n })\n .catch((error) => {\n toast.error(\n <>\n {\"Request failed: \"}\n
\n {error?.data?.message}\n \n );\n });\n };\n\n const participateSale = async () => {\n if (isParticipated) {\n return;\n }\n\n try {\n if (amount < 10) {\n setShowError(true);\n setErrorMessage(\n \"You cannot deposit less than 10 USDT tokens on this sale\"\n );\n } else {\n const roundedAmount = 2 * Math.floor(amount / 2);\n if (roundedAmount !== amount) {\n setAmount(roundedAmount);\n\n setShowError(true);\n setErrorMessage(\n \"You cannot buy an odd amount of tokens. Your deposit was lowered to the nearest even amount.\"\n );\n } else {\n actualSaleRequest();\n }\n //TODO change to BUSD decimals\n\n // setCallback(() => actualSaleRequest());\n // setConfirmMessage(\"Confirm token purchase\");\n // setShowConfirm(true);\n }\n } catch (error) {}\n };\n\n const approve = async () => {\n try {\n tokenContract\n .approve(ido.contract_address, ethers.constants.MaxUint256)\n .then((response) => {\n let transaction = response\n .wait()\n .then((tran) => {\n try {\n setAllowance(ethers.constants.MaxUint256);\n } catch (error) {}\n depositTour.goToNextStep();\n })\n .catch(() => {\n depositTour.goToStep(4);\n });\n\n toast.promise(transaction, {\n pending: \"Approval transaction pending\",\n success: \"Approval transaction successfull\",\n error: \"Approval transaction failed\",\n });\n });\n } catch (error) {}\n };\n\n useEffect(() => {\n if (isRegistered) {\n setUserIsRegistered();\n }\n }, [isRegistered]);\n\n useEffect(() => {\n if (amount > 0) {\n depositTour.unblockPropagation();\n } else {\n depositTour.blockPropagation();\n }\n }, [amount]);\n\n const isAllowedToParticipate =\n (!showVerify || kycBypassers.some((e) => e === account)) &&\n ((ido.timeline.sale_end > Date.now() / 1000 &&\n ido.timeline.registration_start < Date.now() / 1000 &&\n (!isRegistered || ido.timeline.sale_start > Date.now() / 1000)) ||\n (ido.timeline.sale_start < Date.now() / 1000 &&\n ido.timeline.sale_end > Date.now() / 1000 &&\n isRegistered));\n\n const isWhitelistStage =\n ido.timeline.sale_end > Date.now() / 1000 &&\n ido.timeline.registration_start < Date.now() / 1000 &&\n ido.timeline.sale_start > Date.now() / 1000;\n\n const isDepositStage =\n ido.timeline.sale_start < Date.now() / 1000 &&\n ido.timeline.sale_end > Date.now() / 1000;\n\n const hasSaleStarted = ido.timeline.sale_start < Date.now() / 1000;\n\n useEffect(() => {\n if (isDepositStage) {\n dispatch(setSaleStatus(\"deposit\"));\n } else if (isWhitelistStage) {\n dispatch(setSaleStatus(\"whitelist\"));\n } else if (ido.timeline.sale_end < Date.now() / 1000 && isParticipated) {\n dispatch(setSaleStatus(\"claim\"));\n } else {\n dispatch(setSaleStatus(\"\"));\n }\n }, [isWhitelistStage, isDepositStage, isParticipated, ido]);\n\n useEffect(() => {}, [distributionAllowance, distributionContract]);\n\n const onChangeNetwork = async (desiredNetworkID) => {\n if (window.ethereum.networkVersion !== desiredNetworkID) {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{ chainId: web3.utils.toHex(desiredNetworkID) }],\n });\n } catch (err) {\n // This error code indicates that the chain has not been added to MetaMask\n if (err.code === 4902) {\n toast.error(\n \"The Polygon network was not connected to your wallet provider. To continue please add Polygon network to your wallet provider\"\n );\n }\n }\n }\n };\n\n const tierByWallet = useMemo(() => {\n if (!account) {\n return 0;\n }\n\n if (projectName?.toLowerCase() === \"bit rivals\") {\n return userTier;\n }\n\n return tierJSON[account?.toLowerCase() ?? \"\"] ?? 0;\n }, [account, userTier, projectName]);\n\n if (ido === undefined) return <>;\n\n return (\n
\n \n\n
\n {ido.title == \"PLAY TOKEN\"\n ? \"Community sale\"\n : ido.title == \"EYWA\"\n ? \"KOL Sale\"\n : ido.title == \"Another-1\"\n ? \"Pre-sale\"\n : ido.is_private_sale\n ? \"Private Sale\"\n : \"Public sale\"}\n
\n
\n
\n \n
\n
{ido.title}
\n
{idoInfo.token.symbol}
\n
\n \n \n \n {media.map((media, id) => {\n return (\n \n {\" \"}\n \"\"{\" \"}\n \n );\n })}\n
\n
\n
\n\n {priceDetail(idoInfo.token)}\n
\n \n {\" \"}\n {ido.heading_text + \".\"}\n {ido.heading_text.length > 100 && (\n setSloganCollapsed(!sloganCollapsed)}\n >\n {sloganCollapsed ? \"Read More\" : \"Show less\"}{\" \"}\n {sloganCollapsed ? (\n \n ) : (\n \n )}\n
\n )}\n \n {/* TODO: REMOVE HARDCODED VALUE */}\n {(projectName === \"another-1\" || projectName === \"eywa\") && (\n \n )}\n
\n {projectName !== \"another-1\" && projectName !== \"eywa\" && (\n
\n )}\n {/* TODO: REMOVE CONDITION */}\n \n {progressBar(idoInfo.saleInfo)}\n {launchDetaid(idoInfo.saleInfo, totalBUSDRaised, ido, chainId)}\n
\n\n
\n {/* {isLotteryWinner && depositedAmount === 0 && (\n
\n

Lottery Winner!

\n
\n )} */}\n
\n {ido.token.token_address !== \"\" &&\n ido.token.token_address !== \"0x\" && (\n \n {\n addToken();\n }}\n >\n Add Token to Metamask\n \n
\n )}\n {(isAllowedToParticipate || true) && (\n // && depositedAmount === 0\n <>\n
\n {isWhitelistStage && !isDepositStage && (\n {\n if (!isRegistered) {\n registerForSale();\n }\n }}\n >\n {!isRegistrationPending && isRegistered\n ? \"Whitelisted\"\n : \"Get Whitelisted\"}\n {isRegistrationPending && (\n \n )}\n \n )}\n\n {!hasSaleStarted && isRegistered && (\n \n )}\n\n {!isWhitelistStage &&\n !isRegistered &&\n ido.timeline.registration_start < Date.now() / 1000 && (\n
\n Whitelisting stage has ended for this sale\n
\n )}\n {isDepositStage && !isRegistered && (\n
\n {\" \"}\n You are not whitelisted for this Sale!{\" \"}\n
\n )}\n {isDepositStage && isRegistered && (\n
\n {isDepositStage && (\n
\n {false && (\n setAmount(maxAmount)}\n >\n MAX\n
\n )}\n\n \n {\n setAmount(parseFloat(e.target.value));\n }}\n onFocus={() => {\n setInputWarning(true);\n }}\n onBlur={() => {\n setInputWarning(false);\n }}\n />\n \n \n
\n )}\n\n {allowance >= amount * 10 ** 18 && (\n <>\n {\n participateSale();\n }}\n style={{\n // backgroundColor: isParticipated ? '#bfff80' : '#ffd24d',\n whiteSpace: \"nowrap\",\n }}\n data-tut={\"ido-deposit-button\"}\n >\n {isParticipated ? \"Your Deposit\" : \"Deposit Tokens\"}\n \n \n )}\n\n {(allowance < amount * 10 ** 18 || isNaN(amount)) && (\n {\n approve();\n }}\n // style={{ backgroundColor: '#ffd24d' }}\n data-tut={\"deposit-approve-button\"}\n >\n Approve\n \n )}\n
\n )}\n
\n \n )}\n {account === admins[projectName] && (\n
\n {chainId ===\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1] //check if user is connected to the right network to interact with the sale contract\n ) ? (\n
\n {!isTokensDeposited && distributionAllowance > 0 && (\n <>\n {\n distributionDepositTokens();\n }}\n style={{\n // backgroundColor: isParticipated ? '#bfff80' : '#ffd24d',\n whiteSpace: \"nowrap\",\n }}\n data-tut={\"ido-deposit-button\"}\n >\n Deposit Sale Tokens\n \n \n )}\n\n {isTokensDeposited && (\n

You have already deposited tokens

\n )}\n\n {distributionAllowance === 0 && (\n {\n distributionAllow();\n }}\n data-tut={\"deposit-approve-button\"}\n >\n Approve\n \n )}\n
\n ) : (\n <>\n {/* {\n onChangeNetwork(\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\n \",\"\n )[1]\n )\n );\n }}\n >\n Switch to Polygon Network\n */}\n \n )}\n
\n )}\n\n {showVerify && !kycBypassers.some((e) => e === account) && (\n
\n {stakingBalance > 1000 ? (\n

Please complete the KYC verification process

\n ) : (\n

\n You have to stake at least a 1000 PEAK tokens in order to\n participate in sales.{\" \"}\n navigate(\"/allocation-staking\")}>\n Go to staking\n \n

\n )}\n
\n )}\n \n {isDepositStage && account && isRegistered && (\n
\n
\n Minimum Deposit:{\" \"}\n 10 USDT\n
\n
\n
\n Maximum Deposit:{\" \"}\n unlimited\n
\n
\n Your estimated allocation based on your current TIER level:\n \n From ${getTierValues(projectName?.toLowerCase())[tierByWallet]}{\" \"}\n to $\n {getTierValues(projectName?.toLowerCase())[tierByWallet] * 4}\n \n
\n
\n For a higher allocation amount, we recommend to upgrade your TIER\n level.\n
\n
\n )}\n\n {/* {\n <>\n
\n\n
\n
\n

Tier Level

\n

{userTier}

\n
\n\n {depositedAmount > 0 &&\n
\n

Your Allocation

\n

{depositedAmount}

\n
\n }\n\n\n
\n \n } */}\n \n \n \n \n \n \n );\n};\n\nexport default IdoBlock;\n\nfunction priceDetail(props) {\n return (\n
\n
Price
\n
${props.price}
\n
\n );\n}\n\nfunction textToShow(text, value) {\n return (\n
\n
{text}
\n
{value}
\n
\n );\n}\n\nfunction progressBar(props) { \n return (\n
\n
\n
\n
\n
\n\n \n

\n Sale {Math.min(Math.round(props.info.sale_progres), 100)}%\n

\n \n \n );\n}\n\nfunction RoundDetail({\n time_left,\n current_round,\n ido,\n show_text,\n sale_timeline_text,\n}) {\n let timer;\n const [iTimeLeft, setITimeLeft] = useState(time_left);\n\n const updateCount = () => {\n timer =\n !timer &&\n setInterval(() => {\n setITimeLeft((prevCount) => prevCount - 1); // new\n }, 1000);\n };\n\n const roundNamesMapper = (roundName) => {\n if (roundName === \"Registration round\") {\n return \"Whitelisting\";\n } else if (roundName === \"Sale round\") {\n return \"Sale\";\n }\n\n return roundName;\n };\n\n useEffect(() => {\n updateCount();\n\n return () => clearInterval(timer);\n }, []);\n\n return (\n
\n
\n
\n
Time left
\n
\n
\n
\n {\" \"}\n {roundNamesMapper(current_round)}{\" \"}\n
\n
\n {\" \"}\n {show_text ? sale_timeline_text : timeLeft(iTimeLeft)}{\" \"}\n
\n
\n
\n );\n}\n\nfunction launchDetaid(props, totalBUSDRaised, ido, chainId) {\n return (\n
\n
\n
Tokens for Sale
\n {props.info.time_until_launch === \"Launched\" && (\n
Total Raise
\n )}\n
\n
\n
\n {\" \"}\n {numberWithCommas(props.info.token_distribution)}{\" \"}\n
\n {props.info.time_until_launch === \"Launched\" && (\n
\n {\" \"}\n $\n {chainId === 56\n ? numberWithCommas(\n ido?.token?.read_from_db\n ? parseInt(\n parseInt(ido?.token?.token_distribution) *\n ido?.token?.token_price_in_usd\n ).toFixed(2)\n : props.totalRaised.toFixed(2)\n )\n : parseInt(\n Math.round(\n parseInt(ido?.token?.token_distribution) *\n ido?.token?.token_price_in_usd\n ).toFixed(2)\n )}\n
\n )}\n
\n
\n );\n}\n","import { useWeb3React } from \"@web3-react/core\";\nimport { ethers } from \"ethers\";\nimport { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport { toast } from \"react-toastify\";\nimport useDistributionContract from \"../useDistributionContract/useDistributionContract\";\nimport useSaleContract from \"../useSaleContract/useSaleContract\";\nimport useSaleTokenContract from \"../useSaleTokenContract/useSaleTokenContract\";\nimport useTokenContract from \"../useTokenContract/useTokenContract\";\nimport { hooks, metaMask } from \"../../scenes/Header/ProviderDialog/Metamask\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nexport const useDepositSaleTokens = (\n sale_token_address,\n sale_distribution_contract_address,\n isAdmin\n) => {\n const { accounts, chainId } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const [allowance, setAllowance] = useState(0);\n const [isTokensDeposited, setIsTokensDeposited] = useState(false);\n\n const { distributionContract, updateDistributionContract } =\n useDistributionContract(sale_distribution_contract_address);\n\n const { tokenContract } = useSaleTokenContract(sale_token_address);\n\n useEffect(() => {\n if (\n chainId !==\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1]) || //we are indexing the second chain because sale contracts use different network\n !account ||\n !tokenContract ||\n !account ||\n !sale_distribution_contract_address ||\n sale_distribution_contract_address === \"\" ||\n account === \"\" ||\n !isAdmin\n ) {\n return;\n }\n fetchIsTokensDeposited();\n\n tokenContract\n .allowance(account, sale_distribution_contract_address)\n .then((response) => {\n setAllowance(parseInt(response.toString()));\n });\n }, [\n chainId,\n account,\n tokenContract,\n sale_distribution_contract_address,\n isAdmin,\n ]);\n\n useEffect(() => {\n if (!distributionContract || !isAdmin) {\n return;\n }\n updateDistributionContract();\n }, [chainId, isAdmin]);\n\n const depositTokens = () => {\n distributionContract\n .depositTokens()\n .then((res) => {\n const transactipon = res.wait().then(() => {\n fetchIsTokensDeposited();\n });\n toast.promise(transactipon, {\n pending: \"Deposit transaction pending\",\n success: \"Depost transaction successful\",\n error: \"Deposit transaction failed\",\n });\n })\n .catch((error) => {\n toast.error(\n <>\n {\"Request failed: \"}\n
\n {error?.data?.message}\n \n );\n });\n };\n\n const allow = () => {\n tokenContract\n .approve(sale_distribution_contract_address, ethers.constants.MaxUint256)\n .then((res) => {\n let tran = res.wait().then((transaction) => {\n setAllowance(ethers.constants.MaxUint256);\n });\n\n toast.promise(tran, {\n pending: \"Approval pending\",\n success: \"Approval successful\",\n error: \"Approval failed\",\n });\n });\n };\n\n const fetchIsTokensDeposited = () => {\n distributionContract.tokensDeposited().then((res) => {\n setIsTokensDeposited(res);\n });\n };\n\n return {\n isTokensDeposited,\n distributionContract,\n allowance,\n allow,\n depositTokens,\n };\n};\n","import axios from \"axios\";\n\nexport function saveParticipation(ido_id, wallet) {\n return axios.post(process.env.REACT_APP_API_URL + \"save-participation\", {\n ido: ido_id,\n wallet: wallet,\n });\n}\n","import React from \"react\";\nimport classes from \"./ControlButton.module.scss\";\n\nexport function ControlButton(props) {\n return (\n \n {\" \"}\n {props.text}{\" \"}\n \n );\n}\n","export default __webpack_public_path__ + \"static/media/link_img.dd598639.svg\";","import React from \"react\";\nimport ContentCopyIcon from \"@mui/icons-material/ContentCopy\";\nimport { toast } from \"react-toastify\";\n\nimport classes from \"./TableRow.module.scss\";\nimport LinkImg from \"./link_img.svg\";\n\nexport function TableRow(props) {\n return (\n <>\n
\n
{props.text}
\n
\n {props.link && props.link.url !== \"\"\n ? renderLink(props.link)\n : props.info}\n {!!props.link && props.link.url === \"\" && renderAddress(props.link)}\n
\n
\n
\n \n );\n}\n\nfunction renderLink(props) {\n return (\n \n
\n \"Link\"\n
\n \n {props.text}\n
\n \n );\n}\n\nfunction renderAddress(props) {\n const copiedToClipboard = () =>\n toast.info(\"Address copied to clipboard\", {\n icon: ({ theme, type }) => (\n \n ),\n position: \"bottom-left\",\n autoClose: 5000,\n hideProgressBar: false,\n closeOnClick: true,\n pauseOnHover: true,\n draggable: true,\n progress: undefined,\n });\n\n return (\n
\n {\n navigator.clipboard.writeText(props.text);\n copiedToClipboard();\n }}\n >\n {props.text === \"0x\"\n ? \"0x...\"\n : props.text.replace(props.text.substring(5, 38), \"...\")}\n
\n \n );\n}\n","import React from \"react\";\nimport classes from \"./TableHeader.module.scss\"\n\n\nexport function TableHeader(props) {\n return (\n
\n
Allocation No.
\n
Vested %
\n
Token Amount
\n
Allocation unlock In
\n
\n \n Claim all available Allocations\n \n
\n
\n )\n}","import React, { useEffect, useState } from \"react\";\nimport classes from \"./TableRow.module.scss\";\nimport { Button } from \"../../../ControlButton/ControlButton\";\n\nfunction timeLeft(seconds) {\n let timeString = \"\";\n var d = Math.floor(seconds / (3600 * 24));\n var h = Math.floor((seconds % (3600 * 24)) / 3600);\n var m = Math.floor((seconds % 3600) / 60);\n var s = Math.floor(seconds % 60);\n if (d > 0) {\n return d + \" days, \" + h + \" h, \" + m + \" mins\";\n } else if (h > 0) {\n return h + \" hours \" + m + \" minutes\";\n } else if (m > 0 || s > 0) {\n return m + \":\" + s;\n } else {\n return \"Unlocked\";\n }\n}\nconst TableRow = (props, onClick) => {\n const [secondsLeft, setSecondsLeft] = useState(\n props.portion - Math.round(Date.now() / 1000)\n );\n const [buttonActive, setButtonActive] = useState(!props.claimed);\n\n useEffect(() => {\n const timer = setInterval(() => {\n setSecondsLeft((secondsLeft) => secondsLeft - 1);\n }, 1000);\n\n return () => {\n clearInterval(timer);\n };\n }, []);\n\n return (\n
\n \n {\" \"}\n {props.id + 1}{\" \"}\n
\n \n {\" \"}\n {props.vested}{\" \"}\n \n \n {\" \"}\n {props.amount}{\" \"}\n \n \n {timeLeft(secondsLeft)}\n \n \n {secondsLeft <= 0 && (\n \n {props.claimed ? \"Claimable\" : \"Claimed\"}\n \n )}\n\n {secondsLeft > 0 &&

Locked

}\n \n \n );\n};\n\nexport default TableRow;\n","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const claimTourSlice = createSlice({\n name: \"claimTourSlice\",\n initialState: {\n currentStep: 0,\n isShowingTour: false,\n isNextStepBlocked: false,\n isPreviousStepBlocked: true,\n },\n\n reducers: {\n nextStep: (state, action) => {\n return { ...state, currentStep: state.currentStep + 1 };\n },\n prevStep: (state, action) => {\n return { ...state, currentStep: state.currentStep - 1 };\n },\n setStep: (state, action) => {\n return { ...state, currentStep: action.payload };\n },\n openTour: (state, action) => {\n return { ...state, isShowingTour: true };\n },\n closeTour: (state, action) => {\n return { ...state, isShowingTour: false };\n },\n blockNextStep: (state, action) => {\n return { ...state, isNextStepBlocked: true };\n },\n unblockNextStep: (state, action) => {\n return { ...state, isNextStepBlocked: false };\n },\n setIsApproved: (state, action) => {\n return { ...state, isApproved: action.payload };\n },\n blockPreviousStep: (state, action) => {\n return { ...state, isPreviousStepBlocked: true };\n },\n unblockPreviousStep: (state, action) => {\n return { ...state, isPreviousStepBlocked: false };\n },\n },\n});\n\nexport const {\n nextStep,\n prevStep,\n setStep,\n openTour,\n closeTour,\n blockNextStep,\n unblockNextStep,\n setIsApproved,\n blockPreviousStep,\n unblockPreviousStep,\n} = claimTourSlice.actions;\n\nexport default claimTourSlice.reducer;\n","export default __webpack_public_path__ + \"static/media/test_img.beb0b6d2.svg\";","import { useEffect } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useDispatch } from \"react-redux\";\nimport {\n nextStep,\n setStep,\n openTour as globalStateOpenTour,\n closeTour as globalStateCloseTour,\n blockNextStep,\n unblockNextStep,\n setIsApproved,\n prevStep,\n blockPreviousStep,\n unblockPreviousStep,\n} from \"../../features/claimTourSlice\";\n\nconst useClaimTour = (isApproved) => {\n const dispatch = useDispatch();\n\n const goToNextStep = () => {\n dispatch(nextStep());\n };\n\n const goToPrevStep = () => {\n dispatch(prevStep());\n };\n\n const goToStep = (step) => {\n dispatch(setStep(step));\n };\n\n const globalIsApproved = useSelector(\n (state) => state.claimTourSlice.isApproved\n );\n\n useEffect(() => {\n dispatch(setIsApproved(isApproved));\n }, [isApproved]);\n\n const openTour = () => {\n goToStep(0);\n dispatch(globalStateOpenTour());\n unblockPropagation();\n };\n\n const amountIsApproved = () => {\n goToStep(2);\n };\n\n const closeTour = () => {\n dispatch(globalStateCloseTour());\n };\n\n const blockPropagation = () => {\n dispatch(blockNextStep());\n };\n\n const unblockPropagation = () => {\n dispatch(unblockNextStep());\n };\n\n const isNextStepBlocked = useSelector(\n (state) => state.claimTourSlice.isNextStepBlocked\n );\n\n const isPreviousStepBlocked = useSelector(\n (state) => state.claimTourSlice.isPreviousStepBlocked\n );\n\n const isTourOpen = useSelector((state) => state.claimTourSlice.isShowingTour);\n\n const currentStep = useSelector((state) => state.claimTourSlice.currentStep);\n\n const nextStepHandler = () => {\n goToNextStep();\n };\n\n const prevStepHandler = () => {\n goToPrevStep();\n };\n\n const blockReverse = () => {\n dispatch(blockPreviousStep());\n };\n\n const unblockReverse = () => {\n dispatch(unblockPreviousStep());\n };\n\n const tourSteps = [\n {\n selector: '[data-tut=\"your_allocations_control_button\"]',\n mutationObservables: ['[data-tut=\"your_allocations_control_button\"]'],\n highlightedSelectors: ['[data-tut=\"your_allocations_control_button\"]'],\n resizeObservables: ['[data-tut=\"your_allocations_control_button\"]'],\n content: \"Click on the allocations tab to view all your allocations.\",\n action: () => {\n blockPropagation();\n blockPreviousStep();\n },\n },\n {\n selector: '[data-tut=\"allocations-table\"]',\n mutationObservables: ['[data-tut=\"allocations-table\"]'],\n highlightedSelectors: ['[data-tut=\"allocations-table\"]'],\n resizeObservables: ['[data-tut=\"allocations-table\"]'],\n content: \"Here you can see all your allocations.\",\n action: () => {\n unblockPropagation();\n unblockPreviousStep();\n },\n },\n {\n selector: '[data-tut=\"claim-all-portions\"]',\n mutationObservables: ['[data-tut=\"claim-all-portions\"]'],\n highlightedSelectors: ['[data-tut=\"claim-all-portions\"]'],\n resizeObservables: ['[data-tut=\"claim-all-portions\"]'],\n content: \"Click here to claim all available allocations.\",\n action: () => {\n unblockPreviousStep();\n blockPropagation();\n },\n },\n {\n selector: \".Toastify__toast-container\",\n content: \"Wait until the claim transaction is completed.\",\n mutationObservables: [\".Toastify__toast-container\"],\n highlightedSelectors: [\".Toastify__toast-container\"],\n resizeObservables: [\".Toastify__toast-container\"],\n action: () => {\n blockPropagation();\n blockPreviousStep();\n },\n },\n {\n selector: \".Toastify__toast-container\",\n content: \"Looks like something went wrong, please try taking the tour later\",\n mutationObservables: [\".Toastify__toast-container\"],\n highlightedSelectors: [\".Toastify__toast-container\"],\n resizeObservables: [\".Toastify__toast-container\"],\n action: () => {\n blockPropagation();\n blockPreviousStep();\n },\n },\n {\n selector: '[data-tut=\"allocations-table\"]',\n mutationObservables: ['[data-tut=\"allocations-table\"]'],\n highlightedSelectors: ['[data-tut=\"allocations-table\"]'],\n resizeObservables: ['[data-tut=\"allocations-table\"]'],\n content: \"Congratulations! You have successfully claimed your portions!\",\n action: () => {\n blockPreviousStep();\n },\n },\n ];\n\n return {\n goToNextStep,\n goToStep,\n currentStep,\n tourSteps,\n closeTour,\n openTour,\n isTourOpen,\n blockPropagation,\n unblockPropagation,\n isNextStepBlocked,\n nextStepHandler,\n amountIsApproved,\n prevStepHandler,\n blockReverse,\n unblockReverse,\n isPreviousStepBlocked,\n };\n};\n\nexport default useClaimTour;\n","import React, { useEffect, useState } from \"react\";\nimport classes from \"./Table.module.scss\";\nimport { TableHeader } from \"./components/TableHeader/TableHeader\";\nimport TableRow from \"./components/TableRow/TableRow\";\nimport Img from \"./test_img.svg\";\nimport { ethers, BigNumber } from \"ethers\";\nimport { SALE_ABI } from \"../../../../consts/abi\";\nimport { useSelector } from \"react-redux\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport { metaMask, hooks } from \"../../../Header/ProviderDialog/Metamask\";\n\nimport { providers } from \"ethers\";\nimport WalletConnectProvider from \"@walletconnect/ethereum-provider\";\n\nimport { RpcProvider } from \"../../../../consts/rpc\";\nimport { rpcWalletConnectProvider } from \"../../../../consts/walletConnect\";\nimport { toast } from \"react-toastify\";\nimport useClaimTour from \"../../../../hooks/useClaimTour/useClaimTour\";\nimport useSaleContract from \"../../../../hooks/useSaleContract/useSaleContract\";\nimport { Tooltip } from \"@mui/material\";\nimport web3 from \"web3\";\nimport useDistributionContract from \"../../../../hooks/useDistributionContract/useDistributionContract\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst decimalCount = (num) => {\n // Convert to String\n const numStr = String(num);\n // String Contains Decimal\n if (numStr.includes(\".\")) {\n return numStr.split(\".\")[1].length;\n }\n // String Does Not Contain Decimal\n return 0;\n};\n\nfunction timeLeft(seconds) {\n let timeString = \"\";\n var d = Math.floor(seconds / (3600 * 24));\n var h = Math.floor((seconds % (3600 * 24)) / 3600);\n var m = Math.floor((seconds % 3600) / 60);\n var s = Math.floor(seconds % 60);\n if (d > 0) {\n return false;\n } else if (h > 0) {\n return false;\n } else if (m > 0 || s > 0) {\n return false;\n } else {\n return true;\n }\n}\n\nconst Table = ({ onClick, mainIdo }) => {\n const { accounts, chainId } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const claimTour = useClaimTour();\n\n const [isClaimable, setIsClaimable] = useState(true);\n const [claimableIds, setClaimableIds] = useState([]);\n const [info, setInfo] = useState([]);\n\n const { saleContract, updateSaleContract } = useSaleContract(\n mainIdo.contract_address\n );\n\n const { distributionContract } = useDistributionContract(\n \"0x2335d4B08C894855029A81050B59b0454fEeaE5D\" //TO DO: replace with real values\n );\n\n const userWalletAddress = account;\n const decimals = 18;\n const timeOffset = 44100;\n\n useEffect(() => {\n if (mainIdo === undefined || !saleContract) return;\n\n const power =\n Math.max(\n ...mainIdo.project_detail.vesting_percent.map((e) => decimalCount(e))\n ) > 18\n ? 18\n : Math.max(\n ...mainIdo.project_detail.vesting_percent.map((e) =>\n decimalCount(e)\n )\n );\n\n const handler = async () => {\n let data = [];\n let claimableData = [];\n try {\n data = await distributionContract.getClaimedInfo(userWalletAddress);\n } catch (error) {}\n\n let local_info = [];\n for (const [\n index,\n value,\n ] of mainIdo.project_detail.vesting_percent.entries()) {\n const isClaimed = !!data[index];\n\n let amount = \"Calculating...\";\n try {\n const rawPortionData =\n await distributionContract.calculateAmountWithdrawingPortionPub(\n userWalletAddress,\n value * 100\n );\n amount = parseFloat(\n parseFloat(rawPortionData / 10 ** decimals).toFixed(10)\n );\n } catch (error) {}\n\n if (\n !isClaimed &&\n timeLeft(\n mainIdo.project_detail.vesting_time[index] +\n //TODO: REPLACE WITH AN ACTUAL VALUE\n timeOffset -\n Math.round(Date.now() / 1000)\n )\n )\n claimableData.push(index);\n\n local_info.push({\n id: index,\n vested: value + \"%\",\n amount: amount,\n claimed: !isClaimed,\n //TODO remove timeOffset\n portion: mainIdo.project_detail.vesting_time[index] + timeOffset,\n claimable: false,\n });\n }\n setClaimableIds(claimableData);\n setInfo(local_info);\n };\n\n handler();\n }, [mainIdo, distributionContract, account]);\n\n const claimAllAvailablePortions = async (ids) => {\n debugger;\n let result = await distributionContract.withdrawMultiplePortions(\n claimableIds\n );\n\n const transaction = result\n .wait()\n .then(() => {\n claimTour.goToStep(5);\n })\n .catch(() => {\n claimTour.goToStep(4);\n });\n\n toast.promise(transaction, {\n pending: \"Transaction pending\",\n success: {\n render() {\n let local_info = info.map((value, index) => {\n if (claimableIds.includes(index)) {\n value.claimed = false;\n }\n return value;\n });\n setInfo(local_info);\n return \"Claim request completed\";\n },\n autoClose: 1,\n },\n error: \"Transaction failed\",\n });\n };\n\n const onChangeNetwork = async (desiredNetworkID) => {\n if (window.ethereum.networkVersion !== desiredNetworkID) {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{ chainId: web3.utils.toHex(desiredNetworkID) }],\n });\n } catch (err) {\n // This error code indicates that the chain has not been added to MetaMask\n if (err.code === 4902) {\n toast.error(\n \"The Polygon network was not connected to your wallet provider. To continue please add Polygon network to your wallet provider\"\n );\n }\n }\n }\n };\n\n const isBSCSpecific =\n (mainIdo?.token?.name ?? \"\")?.toLowerCase() === \"octavia\";\n\n const isPolygonNetworkUsed =\n chainId ===\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1]);\n\n const isBSCNetworkUsed =\n chainId ===\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]);\n\n return (\n <>\n
\n {info.length > 1 && isClaimable && (\n
\n
\n {info.filter((e) => {\n return e.claimable;\n }).length > 0 && (\n \n \n Claim all available Allocations\n
\n \n )}\n
\n
\n )}\n \n {!isPolygonNetworkUsed && !isBSCSpecific && (\n
\n {\n onChangeNetwork(\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1]\n )\n );\n updateSaleContract();\n }}\n >\n Switch to Polygon Network\n \n
\n )}\n\n {!isBSCNetworkUsed && isBSCSpecific && (\n
\n {\n onChangeNetwork(\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]\n )\n );\n updateSaleContract();\n }}\n >\n Switch to BSC Network\n \n
\n )}\n\n {((isPolygonNetworkUsed && !isBSCSpecific) ||\n (isBSCNetworkUsed && isBSCSpecific)) && (\n <>\n {isClaimable &&\n info.map((ido, index) => {\n ido.color =\n index % 2\n ? \"linear-gradient(rgb(10, 167, 245, 0.1) 0%, rgb(60, 231, 255, 0.1) 100%)\"\n : \"#FFFFFF\";\n return (\n {\n onClick(id);\n }}\n />\n );\n })}\n {info.length === 0 && (\n

\n You have not made any allocations yet.\n

\n )}\n {!isClaimable && (\n

\n You don't have any claimable portions yet.\n

\n )}\n \n )}\n \n \n );\n};\n\nexport default Table;\n","export const ABI_WITHDRAW_DAILY = [\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_admin\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"_vestingTimeStart\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_vestingTimeEnd\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_tgePercent\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_tgeDate\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n ],\n name: \"AddressEmptyCode\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n ],\n name: \"AddressInsufficientBalance\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"tokenAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"extrimalWithdraw\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"FailedInnerCall\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"token\",\n type: \"address\",\n },\n ],\n name: \"SafeERC20FailedOperation\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"token\",\n type: \"address\",\n },\n ],\n name: \"setToken\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"userWallet\",\n type: \"address\",\n },\n ],\n internalType: \"struct Distribution.UserTokens[]\",\n name: \"usersStake\",\n type: \"tuple[]\",\n },\n ],\n name: \"setUserDeposit\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"withdrawTokens\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"withdrawTokensTGE\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"admin\",\n outputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getClaimedInfo\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getTokensTGE\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getWithdrawDays\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getWithdrawTokens\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"isUserDataSeted\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"saleToken\",\n outputs: [\n {\n internalType: \"contract IERC20Extented\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tgeDate\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tgePercent\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"userToParticipation\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"userTokens\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"tokenClaimDate\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"amountClaimed\",\n type: \"uint256\",\n },\n {\n internalType: \"bool\",\n name: \"isTgeClaimed\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"vestingTimeEnd\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"vestingTimeStart\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n];\n","import { ethers } from \"ethers\";\nimport { useEffect, useState } from \"react\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { ABI_WITHDRAW_DAILY } from \"./consts\";\n\nconst useWithdrawDailyContract = (sale_withdraw_daliy_contract_address) => {\n const { accounts, chainId } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const provider = useProviderHook();\n const [withdrawDailyContract, setWithdrawDailyContract] = useState(null);\n\n const updateWithdrawDailyContract = () => {\n const signer = provider?.getSigner();\n setWithdrawDailyContract(\n new ethers.Contract(sale_withdraw_daliy_contract_address, ABI_WITHDRAW_DAILY, signer)\n );\n };\n\n useEffect(() => {\n if (sale_withdraw_daliy_contract_address && account) {\n updateWithdrawDailyContract();\n }\n }, [sale_withdraw_daliy_contract_address, account, chainId]);\n\n return { withdrawDailyContract, updateWithdrawDailyContract };\n};\n\nexport default useWithdrawDailyContract;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\n\nexport const useFetchavToParticipationInfo = (\n walletAddress,\n hurricaneContract\n) => {\n const { tokenContract } = useTokenContract();\n\n return useQuery({\n queryKey: [\n \"available-tokens-withdraw-element\",\n tokenContract?.address,\n walletAddress,\n hurricaneContract?.address,\n ],\n queryFn: () => {\n return hurricaneContract.userToParticipation(walletAddress);\n },\n enabled: !!hurricaneContract && !!walletAddress,\n initialData: [\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n ],\n });\n};\n\nexport const useFetchToParticipationInfoFromSale = (\n walletAddress,\n saleContract\n) => {\n const { tokenContract } = useTokenContract();\n return useQuery({\n queryKey: [\n \"available-tokens-withdraw-element\",\n tokenContract?.address,\n walletAddress,\n saleContract?.address,\n ],\n queryFn: () => {\n return saleContract?.userToParticipation(walletAddress);\n },\n enabled: !!saleContract && !!walletAddress,\n initialData: {\n data: [],\n },\n });\n};\n","import classes from \"./WithdrawDaily.module.scss\";\nimport React, { useState, useEffect, useCallback, useMemo } from \"react\";\nimport useWithdrawDailyContract from \"hooks/useWithdrawContractDaily/useWithdrawDaliyContract\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { Button } from \"@mui/material\";\nimport { CircularProgress } from \"@mui/material\";\nimport { toast } from \"react-toastify\";\nimport { useFetchavToParticipationInfo } from \"./hooks\";\nimport { BigNumber } from \"ethers\";\nimport web3 from \"web3\";\nimport useSaleContract from \"hooks/useSaleContract/useSaleContract\";\nimport { useFetchToParticipationInfoFromSale } from \"../DistributionComponents/hooksSKO\";\n\nconst WithdrawDaily = ({\n type,\n saleContractAddress,\n contractAddress,\n tokenName,\n tokenImg,\n tokenSmallName,\n}) => {\n const { accounts, chainId } = useMergedProvidersState();\n const userAddress = accounts[0] ?? \"\";\n const { withdrawDailyContract, updateWithdrawDailyContract } =\n useWithdrawDailyContract(contractAddress);\n\n const { data: toParticipationInfo, refetch } = useFetchavToParticipationInfo(\n userAddress,\n withdrawDailyContract\n );\n\n const { saleContract } = useSaleContract(saleContractAddress);\n\n const { data: saleToParticipationData } = useFetchToParticipationInfoFromSale(\n userAddress,\n saleContract\n );\n\n const [days, setDays] = useState(0);\n const [hours, setHours] = useState(0);\n const [minutes, setMinutes] = useState(0);\n const [seconds, setSeconds] = useState(0);\n const [vestingTimeEnd, setVestingTimeEnd] = useState(0);\n const [vestingTimeStart, setVestingTimeStart] = useState(0);\n const [update, setUpdate] = useState(true);\n const [widthdrawDays, setWithdrawDays] = useState(0);\n\n const formatDate = (timestamp) => {\n const date = new Date(timestamp * 1000);\n const day = String(date.getDate()).padStart(2, \"0\");\n const month = String(date.getMonth() + 1).padStart(2, \"0\");\n const year = date.getFullYear();\n return `${day}.${month}.${year}`;\n };\n\n useEffect(() => {\n if (vestingTimeEnd) {\n const endDate = new Date(vestingTimeEnd * 1000);\n const interval = setInterval(() => {\n const now = new Date();\n const difference = endDate - now;\n\n if (difference > 0) {\n const remainingDays = Math.floor(difference / (1000 * 60 * 60 * 24));\n const remainingHours = Math.floor(\n (difference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)\n );\n const remainingMinutes = Math.floor(\n (difference % (1000 * 60 * 60)) / (1000 * 60)\n );\n const remainingSeconds = Math.floor(\n (difference % (1000 * 60)) / 1000\n );\n\n setDays(remainingDays);\n setHours(remainingHours);\n setMinutes(remainingMinutes);\n setSeconds(remainingSeconds);\n } else {\n clearInterval(interval);\n }\n }, 1000);\n\n return () => clearInterval(interval);\n }\n }, [vestingTimeEnd]);\n\n useEffect(() => {\n getInfo();\n refetch();\n }, [withdrawDailyContract, toParticipationInfo]);\n\n const getInfo = () => {\n if (withdrawDailyContract !== null) {\n if (contractAddress !== \"0x0cb4a12b298244a56b7bdFC26Eb3A1D1e5dcFaBa\") {\n withdrawDailyContract.vestingTimeEnd().then((info) => {\n setVestingTimeEnd(info.toNumber());\n });\n withdrawDailyContract.vestingTimeStart().then((info) => {\n setVestingTimeStart(info.toNumber());\n });\n } else {\n setVestingTimeStart(\"1715502000\");\n setVestingTimeEnd(\"1741767600\");\n }\n withdrawDailyContract.getWithdrawDays(userAddress).then((data) => {\n setWithdrawDays(parseFloat(data.toString()));\n });\n }\n setUpdate(false);\n };\n\n const claim = () => {\n setUpdate(true);\n const promise = withdrawDailyContract.withdrawTokens();\n toast\n .promise(promise, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n })\n .then(() => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n })\n .catch((error) => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n });\n };\n\n const claimTge = () => {\n setUpdate(true);\n const promise = withdrawDailyContract.withdrawTokensTGE();\n\n toast\n .promise(promise, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n })\n .then(() => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n })\n .catch((error) => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n });\n };\n\n const isPolygonSpecific =\n tokenName?.toLowerCase() === \"anote\" ||\n tokenName?.toLowerCase() === \"vendetta\" ||\n tokenName?.toLowerCase() === \"edge video ai\";\n const isPolygonNetworkUsed =\n chainId ===\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1]);\n\n const isBSCNetworkUsed =\n chainId ===\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]);\n\n const onChangeNetwork = async (desiredNetworkID) => {\n if (window.ethereum.networkVersion !== desiredNetworkID) {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{ chainId: web3.utils.toHex(desiredNetworkID) }],\n });\n } catch (err) {\n // This error code indicates that the chain has not been added to MetaMask\n if (err.code === 4902) {\n toast.error(\n \"The Polygon network was not connected to your wallet provider. To continue please add Polygon network to your wallet provider\"\n );\n }\n }\n }\n };\n\n const tokenDecimals = useMemo(() => {\n if (tokenName?.toLowerCase() === \"anote\") {\n return 10 ** 9;\n }\n if (tokenName?.toLowerCase() === \"edge video ai\") {\n return 10 ** 24;\n }\n return 10 ** 18;\n }, [tokenName]);\n\n const showTge = useMemo(() => {\n let isTgeVisible = true;\n if (tokenName?.toLowerCase() === \"edge video ai\") {\n isTgeVisible = false;\n }\n return isTgeVisible;\n }, [tokenName]);\n const claimableTokens = useMemo(() => {\n if (tokenName?.toLowerCase() === \"edge video ai\") {\n let claimingDays = 0;\n let end_date = Math.floor(new Date().getTime() / 1000);\n if (end_date > vestingTimeEnd) {\n end_date = vestingTimeEnd;\n }\n if (end_date > toParticipationInfo[1] * 1) {\n claimingDays = Math.floor(\n (end_date - toParticipationInfo[1] * 1) / 2592000\n );\n if (end_date !== vestingTimeEnd) {\n claimingDays = claimingDays + 1;\n }\n }\n const allMonth = (vestingTimeEnd - vestingTimeStart) / 2592000;\n return (\n (((toParticipationInfo[0] * 1) / allMonth) * claimingDays) /\n tokenDecimals\n );\n }\n return (\n parseFloat(\n (\n ((toParticipationInfo[0] * 1) /\n tokenDecimals /\n ((vestingTimeEnd - vestingTimeStart) / 86400)) *\n widthdrawDays\n ).toFixed(2)\n ) || 0\n );\n }, [tokenName, vestingTimeEnd, toParticipationInfo, vestingTimeStart]);\n return (\n
\n {!isPolygonNetworkUsed && isPolygonSpecific && (\n
\n {\n onChangeNetwork(\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1]\n )\n );\n updateWithdrawDailyContract();\n }}\n >\n Switch to Polygon Network\n \n
\n )}\n\n {isPolygonNetworkUsed && !isPolygonSpecific && (\n
\n {\n onChangeNetwork(\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]\n )\n );\n updateWithdrawDailyContract();\n }}\n >\n Switch to BSC\n \n
\n )}\n\n {((isPolygonNetworkUsed && isPolygonSpecific) ||\n (isBSCNetworkUsed && !isPolygonSpecific)) && (\n
\n
\n
\n \n
\n
{tokenName}
\n
{tokenSmallName}
\n
\n
\n
\n
Fully unvested in:
\n
\n
\n
\n
{days}
\n \n :\n
\n
\n
days
\n
\n
\n
\n
{hours}
\n \n :\n
\n
\n
hrs
\n
\n
\n
\n
{minutes}
\n \n :\n
\n
\n
mins
\n
\n
\n
\n
{seconds}
\n
\n
secs
\n
\n
\n \n {update && (\n \n )}\n {!update && \"Claim\"}\n \n\n {!toParticipationInfo.isTgeClaimed &&\n showTge &&\n tokenName !== \"Vendetta\" && (\n \n {update && (\n \n )}\n {!update && \"Claim TGE Tokens\"}\n \n )}\n
\n \n
\n
\n
\n
Vesting Start Date
\n
\n {formatDate(vestingTimeStart)}\n
\n
\n
\n
Vesting End Date
\n
\n {formatDate(vestingTimeEnd)}\n
\n
\n\n
\n
\n Total investment in USD\n
\n
\n {saleToParticipationData?.[0]\n ? (\n BigNumber.from(saleToParticipationData[0]._hex) /\n tokenDecimals\n ).toString()\n : 0}\n
\n
\n
\n
Allocation Granted
\n
\n {toParticipationInfo[0]\n ? (\n BigNumber.from(toParticipationInfo[0]._hex) /\n tokenDecimals\n ).toString()\n : 0}\n
\n
\n
\n
Claimed Tokens
\n
\n {((toParticipationInfo[2] * 1) / tokenDecimals).toFixed(2) || 0}\n
\n
\n
\n
Claimable Tokens
\n
\n {claimableTokens.toFixed(4) || 0}\n
\n
\n
\n
Vesting Type
\n
{type}
\n
\n
\n \n )}\n \n );\n};\n\nexport default WithdrawDaily;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\n\nexport const useFetchavToParticipationInfo = (\n walletAddress,\n hurricaneContract\n) => {\n const { tokenContract } = useTokenContract();\n\n return useQuery({\n queryKey: [\n \"available-tokens-withdraw-element\",\n tokenContract?.address,\n walletAddress,\n hurricaneContract?.address,\n ],\n queryFn: () => {\n return hurricaneContract.userToParticipation(walletAddress);\n },\n enabled: !!hurricaneContract && !!walletAddress,\n initialData: [\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n ],\n });\n};\n","export const ABI_WITHDRAW_V2 = [\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_admin\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"_vestingTimeStart\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_vestingTimeEnd\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_tgePercent\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_tgeDate\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n ],\n name: \"AddressEmptyCode\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n ],\n name: \"AddressInsufficientBalance\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"tokenAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"extrimalWithdraw\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"FailedInnerCall\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"token\",\n type: \"address\",\n },\n ],\n name: \"SafeERC20FailedOperation\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"token\",\n type: \"address\",\n },\n ],\n name: \"setToken\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"userWallet\",\n type: \"address\",\n },\n ],\n internalType: \"struct Distribution.UserTokens[]\",\n name: \"usersStake\",\n type: \"tuple[]\",\n },\n ],\n name: \"setUserDeposit\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"withdrawTokens\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"withdrawTokensTGE\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"admin\",\n outputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getClaimedInfo\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getTokensTGE\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getWithdrawPercent\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getWithdrawTokens\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"isUserDataSeted\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"saleToken\",\n outputs: [\n {\n internalType: \"contract IERC20Extented\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tgeDate\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tgePercent\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"userToParticipation\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"userTokens\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"tokenClaimDate\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"amountClaimed\",\n type: \"uint256\",\n },\n {\n internalType: \"bool\",\n name: \"isTgeClaimed\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"vestingTimeEnd\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"vestingTimeStart\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n];\n","import { ethers } from \"ethers\";\nimport { useEffect, useState } from \"react\";\nimport { ABI_WITHDRAW_V2 } from \"./consts\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst useWithdrawV2Contract = (sale_withdraw_contract_address) => {\n const { accounts, chainId } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const provider = useProviderHook();\n const [withdrawContract, setWithdrawContract] = useState(null);\n\n const updateWithdrawContract = () => {\n const signer = provider?.getSigner();\n setWithdrawContract(\n new ethers.Contract(sale_withdraw_contract_address, ABI_WITHDRAW_V2, signer)\n );\n };\n\n useEffect(() => {\n if (sale_withdraw_contract_address && account) {\n updateWithdrawContract();\n }\n }, [sale_withdraw_contract_address, account, chainId]);\n\n return { withdrawContract, updateWithdrawContract };\n};\n\nexport default useWithdrawV2Contract;\n","export const ABI_WITHDRAW_SKO = [\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_admin\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"_vestingTimeStart\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_vestingTimeEnd\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_tgePercent\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_tgeDate\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n ],\n name: \"AddressEmptyCode\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n ],\n name: \"AddressInsufficientBalance\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"tokenAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"extrimalWithdraw\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"FailedInnerCall\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"token\",\n type: \"address\",\n },\n ],\n name: \"SafeERC20FailedOperation\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"token\",\n type: \"address\",\n },\n ],\n name: \"setToken\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"userWallet\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"tokenClaimedAnother\",\n type: \"uint256\",\n },\n ],\n internalType: \"struct Distribution.UserTokens[]\",\n name: \"usersStake\",\n type: \"tuple[]\",\n },\n ],\n name: \"setUserDeposit\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"withdrawTokens\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"withdrawTokensTGE\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"admin\",\n outputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getClaimedInfo\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getTokensTGE\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getWithdrawDays\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getWithdrawTokens\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"isUserDataSeted\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"saleToken\",\n outputs: [\n {\n internalType: \"contract IERC20Extented\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tgeDate\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tgePercent\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"userToParticipation\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"userTokens\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"tokenClaimDate\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"amountClaimed\",\n type: \"uint256\",\n },\n {\n internalType: \"bool\",\n name: \"isTgeClaimed\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"vestingTimeEnd\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"vestingTimeStart\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n];\n","import { ethers } from \"ethers\";\nimport { useEffect, useState } from \"react\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { ABI_WITHDRAW_SKO } from \"./consts\";\n\nconst useWithdrawSKOContract = (sale_withdraw_SKO_contract_address) => {\n const { accounts, chainId } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const provider = useProviderHook();\n const [withdrawSKOContract, setWithdrawSKOContract] = useState(null);\n\n const updateWithdrawSKOContract = () => {\n const signer = provider?.getSigner();\n setWithdrawSKOContract(\n new ethers.Contract(sale_withdraw_SKO_contract_address, ABI_WITHDRAW_SKO, signer)\n );\n };\n\n useEffect(() => {\n if (sale_withdraw_SKO_contract_address && account) {\n updateWithdrawSKOContract();\n }\n }, [sale_withdraw_SKO_contract_address, account, chainId]);\n\n return { withdrawSKOContract, updateWithdrawSKOContract };\n};\n\nexport default useWithdrawSKOContract;\n","import classes from \"../WithdrawDaily/WithdrawDaily.module.scss\";\nimport React, { useState, useEffect, useCallback, useMemo } from \"react\";\nimport useWithdrawV2Contract from \"../../../../hooks/useWithdrawV2Contract/useWithdrawV2Contract\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { Button } from \"@mui/material\";\nimport { CircularProgress } from \"@mui/material\";\nimport { toast } from \"react-toastify\";\nimport {\n useFetchavToParticipationInfo,\n useFetchToParticipationInfoFromSale,\n} from \"./hooksSKO\";\nimport { BigNumber } from \"ethers\";\nimport web3 from \"web3\";\nimport useWithdrawSKOContract from \"hooks/useWithdrawContractSko/useWithdrawSKOContract\";\nimport useSaleContract from \"hooks/useSaleContract/useSaleContract\";\n\nconst DistributionSKO = ({\n type,\n saleContractAddress,\n contractAddress,\n tgeContractAddress,\n tokenName,\n tokenImg,\n tokenSmallName,\n}) => {\n const { accounts, chainId } = useMergedProvidersState();\n const userAddress = accounts[0] ?? \"\";\n const { withdrawContract, updateWithdrawContract } =\n useWithdrawV2Contract(contractAddress);\n\n const { saleContract } = useSaleContract(saleContractAddress);\n\n const { data: saleToParticipationData } = useFetchToParticipationInfoFromSale(\n userAddress,\n saleContract\n );\n\n const { data: toParticipationInfo, refetch } = useFetchavToParticipationInfo(\n userAddress,\n withdrawContract\n );\n const { withdrawSKOContract, updateWithdrawSKOContract } =\n useWithdrawSKOContract(tgeContractAddress ?? contractAddress);\n\n const { data: toParticipationInfoTGE, refetch: refetchTGE } =\n useFetchavToParticipationInfo(userAddress, withdrawSKOContract);\n\n const [days, setDays] = useState(0);\n const [hours, setHours] = useState(0);\n const [minutes, setMinutes] = useState(0);\n const [seconds, setSeconds] = useState(0);\n const [vestingTimeEnd, setVestingTimeEnd] = useState(0);\n const [vestingTimeStart, setVestingTimeStart] = useState(0);\n const [update, setUpdate] = useState(true);\n const [widthdrawPercent, setWithdrawPercent] = useState(0);\n\n const formatDate = (timestamp) => {\n const date = new Date(timestamp * 1000);\n const day = String(date.getDate()).padStart(2, \"0\");\n const month = String(date.getMonth() + 1).padStart(2, \"0\");\n const year = date.getFullYear();\n return `${day}.${month}.${year}`;\n };\n\n useEffect(() => {\n const endDate = new Date(vestingTimeEnd * 1000);\n const interval = setInterval(() => {\n const now = new Date();\n const difference = endDate - now;\n\n if (difference > 0) {\n const remainingDays = Math.floor(difference / (1000 * 60 * 60 * 24));\n const remainingHours = Math.floor(\n (difference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)\n );\n const remainingMinutes = Math.floor(\n (difference % (1000 * 60 * 60)) / (1000 * 60)\n );\n const remainingSeconds = Math.floor((difference % (1000 * 60)) / 1000);\n\n setDays(remainingDays);\n setHours(remainingHours);\n setMinutes(remainingMinutes);\n setSeconds(remainingSeconds);\n } else {\n clearInterval(interval);\n }\n }, 1000);\n\n return () => clearInterval(interval);\n }, [vestingTimeEnd]);\n\n useEffect(() => {\n refetchTGE();\n getInfo();\n refetch();\n }, [withdrawContract, withdrawSKOContract, toParticipationInfo]);\n\n const getInfo = () => {\n if (withdrawContract !== null) {\n withdrawContract.vestingTimeEnd().then((info) => {\n setVestingTimeEnd(info.toNumber());\n });\n withdrawContract.vestingTimeStart().then((info) => {\n setVestingTimeStart(info.toNumber());\n });\n if (withdrawSKOContract !== null) {\n withdrawSKOContract.getWithdrawDays(userAddress).then((data) => {\n setWithdrawPercent(\n ((parseFloat(data.toString()) * 100 * toParticipationInfo[0]) /\n 122 /\n Math.pow(10, 18)) *\n 0.84\n );\n });\n }\n }\n setUpdate(false);\n };\n\n const claim = () => {\n setUpdate(true);\n const promise = withdrawSKOContract.withdrawTokens();\n\n toast\n .promise(promise, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n })\n .then(() => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n })\n .catch((error) => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n });\n };\n\n const claimTge = () => {\n setUpdate(true);\n const promise = withdrawContract.withdrawTokensTGE();\n\n toast\n .promise(promise, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n })\n .then(() => {\n refetchTGE();\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n })\n .catch((error) => {\n refetchTGE();\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n });\n };\n\n const isBSCNetworkUsed =\n chainId ===\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]);\n\n const onChangeNetwork = async (desiredNetworkID) => {\n if (window.ethereum.networkVersion !== desiredNetworkID) {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{ chainId: web3.utils.toHex(desiredNetworkID) }],\n });\n } catch (err) {\n // This error code indicates that the chain has not been added to MetaMask\n if (err.code === 4902) {\n toast.error(\n \"The Polygon network was not connected to your wallet provider. To continue please add Polygon network to your wallet provider\"\n );\n }\n }\n }\n };\n\n const tokenDecimals = useMemo(() => {\n if (tokenName?.toLowerCase() === \"anote\") {\n return 10 ** 9;\n }\n\n return 10 ** 18;\n }, [tokenName]);\n const claimableTokens = parseFloat(\n (\n (toParticipationInfoTGE[0] * 1 - toParticipationInfoTGE[2] * 1) /\n tokenDecimals\n ).toFixed(2)\n );\n return (\n
\n {!isBSCNetworkUsed && (\n
\n {\n onChangeNetwork(\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]\n )\n );\n updateWithdrawContract();\n updateWithdrawSKOContract();\n }}\n >\n Switch to BSC\n \n
\n )}\n\n {isBSCNetworkUsed && (\n
\n
\n
\n \n
\n
{tokenName}
\n
{tokenSmallName}
\n
\n
\n
\n
Fully unvested in:
\n
\n
\n
\n
{days}
\n \n :\n
\n
\n
days
\n
\n
\n
\n
{hours}
\n \n :\n
\n
\n
hrs
\n
\n
\n
\n
{minutes}
\n \n :\n
\n
\n
mins
\n
\n
\n
\n
{seconds}
\n
\n
secs
\n
\n
\n \n {update && (\n \n )}\n {!update && \"Claim\"}\n \n\n {!toParticipationInfo.isTgeClaimed && (\n \n )}\n
\n \n
\n
\n
\n
Vesting Start Date
\n
\n {formatDate(vestingTimeStart)}\n
\n
\n
\n
Vesting End Date
\n
\n {formatDate(vestingTimeEnd)}\n
\n
\n
\n
\n Total investment in USD\n
\n
\n {saleToParticipationData?.[0]\n ? (\n BigNumber.from(saleToParticipationData[0]._hex) /\n tokenDecimals\n ).toString()\n : 0}\n
\n
\n
\n
Allocation Granted
\n
\n {toParticipationInfo[0]\n ? (\n BigNumber.from(toParticipationInfo[0]._hex) /\n tokenDecimals\n ).toString()\n : 0}\n
\n
\n
\n
Claimed Tokens
\n
\n {parseFloat(\n (toParticipationInfo[2] * 1 + toParticipationInfoTGE[2] * 1) /\n tokenDecimals\n ).toFixed(2)}\n
\n
\n
\n
Claimable Tokens
\n
\n {claimableTokens < 0 ? 0 : claimableTokens}\n
\n
\n
\n
Vesting Type
\n
{type}
\n
\n
\n \n )}\n \n );\n};\n\nexport default DistributionSKO;\n","export const ABI_WITHDRAW_LINEAR = [\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_admin\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"_vestingTimeStart\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_vestingTimeEnd\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_tgePercent\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_tgeDate\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n ],\n name: \"AddressEmptyCode\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n ],\n name: \"AddressInsufficientBalance\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"tokenAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"extrimalWithdraw\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"FailedInnerCall\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"token\",\n type: \"address\",\n },\n ],\n name: \"SafeERC20FailedOperation\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"token\",\n type: \"address\",\n },\n ],\n name: \"setToken\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n {\n internalType: \"address\",\n name: \"userWallet\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"tokenClaimedAnother\",\n type: \"uint256\",\n },\n {\n internalType: \"bool\",\n name: \"isTgeClaimed\",\n type: \"bool\",\n },\n ],\n internalType: \"struct Distribution.UserTokens[]\",\n name: \"usersStake\",\n type: \"tuple[]\",\n },\n ],\n name: \"setUserDeposit\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"withdrawTokens\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"withdrawTokensTGE\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"admin\",\n outputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getClaimedInfo\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getTokensTGE\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getWithdrawTokenPerSecond\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getWithdrawTokens\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"isUserDataSeted\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"saleToken\",\n outputs: [\n {\n internalType: \"contract IERC20Extented\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tgeDate\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tgePercent\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"userToParticipation\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"userTokens\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"tokenClaimDate\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"amountClaimed\",\n type: \"uint256\",\n },\n {\n internalType: \"bool\",\n name: \"isTgeClaimed\",\n type: \"bool\",\n },\n {\n internalType: \"uint256\",\n name: \"amountClaimedAnother\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"vestingTimeEnd\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"vestingTimeStart\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n];\n","import { ethers } from \"ethers\";\nimport { useEffect, useState } from \"react\";\nimport { ABI_WITHDRAW_LINEAR } from \"./consts\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst useWithdrawLinearContract = (sale_withdraw_contract_address) => {\n const { accounts, chainId } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const provider = useProviderHook();\n const [withdrawContract, setWithdrawContract] = useState(null);\n\n const updateWithdrawContract = () => {\n const signer = provider?.getSigner();\n setWithdrawContract(\n new ethers.Contract(\n sale_withdraw_contract_address,\n ABI_WITHDRAW_LINEAR,\n signer\n )\n );\n };\n\n useEffect(() => {\n if (sale_withdraw_contract_address && account) {\n updateWithdrawContract();\n }\n }, [sale_withdraw_contract_address, account, chainId]);\n\n return { withdrawContract, updateWithdrawContract };\n};\n\nexport default useWithdrawLinearContract;\n","import classes from \"./WithdrawLinear.module.scss\";\nimport React, { useState, useEffect, useMemo } from \"react\";\nimport useWithdrawLinearContract from \"hooks/useWithdrawLinearContract/useWithdrawLinearContract\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { Button } from \"@mui/material\";\nimport { CircularProgress } from \"@mui/material\";\nimport { toast } from \"react-toastify\";\nimport { useFetchavToParticipationInfo } from \"./hooks\";\nimport { BigNumber } from \"ethers\";\nimport web3 from \"web3\";\nimport useSaleContract from \"hooks/useSaleContract/useSaleContract\";\nimport { useFetchToParticipationInfoFromSale } from \"../DistributionComponents/hooksSKO\";\n\nconst WithdrawLinear = ({\n type,\n saleContractAddress,\n contractAddress,\n tokenName,\n tokenImg,\n tokenSmallName,\n}) => {\n const { accounts, chainId } = useMergedProvidersState();\n const userAddress = accounts[0] ?? \"\";\n const { withdrawContract, updateWithdrawContract } =\n useWithdrawLinearContract(contractAddress);\n const { data: toParticipationInfo, refetch } = useFetchavToParticipationInfo(\n userAddress,\n withdrawContract\n );\n\n const { saleContract } = useSaleContract(saleContractAddress);\n\n const { data: saleToParticipationData } = useFetchToParticipationInfoFromSale(\n userAddress,\n saleContract\n );\n\n const [days, setDays] = useState(0);\n const [hours, setHours] = useState(0);\n const [minutes, setMinutes] = useState(0);\n const [seconds, setSeconds] = useState(0);\n const [vestingTimeEnd, setVestingTimeEnd] = useState(0);\n const [vestingTimeStart, setVestingTimeStart] = useState(0);\n const [update, setUpdate] = useState(true);\n const [date, setDate] = useState(0);\n const [withdrawTokenPerSecond, setWithdrawTokenPerSecond] = useState(0);\n\n const formatDate = (timestamp) => {\n const date = new Date(timestamp * 1000);\n const day = String(date.getDate()).padStart(2, \"0\");\n const month = String(date.getMonth() + 1).padStart(2, \"0\");\n const year = date.getFullYear();\n return `${day}.${month}.${year}`;\n };\n\n useEffect(() => {\n const endDate = new Date(vestingTimeEnd * 1000);\n const interval = setInterval(() => {\n const now = new Date();\n const difference = endDate - now;\n if (difference > 0) {\n const remainingDays = Math.floor(difference / (1000 * 60 * 60 * 24));\n const remainingHours = Math.floor(\n (difference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)\n );\n const remainingMinutes = Math.floor(\n (difference % (1000 * 60 * 60)) / (1000 * 60)\n );\n const remainingSeconds = Math.floor((difference % (1000 * 60)) / 1000);\n setDate(now.getTime());\n setDays(remainingDays);\n setHours(remainingHours);\n setMinutes(remainingMinutes);\n setSeconds(remainingSeconds);\n } else {\n clearInterval(interval);\n }\n }, 1000);\n\n return () => clearInterval(interval);\n }, [vestingTimeEnd]);\n\n useEffect(() => {\n getInfo();\n refetch();\n }, [withdrawContract]);\n\n useEffect(() => {\n const intervalId = setInterval(() => {\n getInfo();\n refetch();\n }, 30000);\n\n return () => clearInterval(intervalId);\n }, []);\n\n useEffect(() => {\n if (withdrawContract !== null) {\n withdrawContract.tgePercent().then((item) => {\n const tgePercent = item * 1;\n let tokensForSecond = 0;\n const userTokens = toParticipationInfo[0] * 1;\n const amountClaimedAnother = toParticipationInfo[4] * 1;\n tokensForSecond =\n (userTokens -\n amountClaimedAnother -\n (userTokens * tgePercent) / 10000) /\n (vestingTimeEnd - vestingTimeStart);\n setWithdrawTokenPerSecond(tokensForSecond);\n });\n }\n }, [\n userAddress,\n toParticipationInfo,\n withdrawContract,\n vestingTimeStart,\n vestingTimeEnd,\n ]);\n\n const getInfo = () => {\n if (withdrawContract !== null) {\n withdrawContract.vestingTimeEnd().then((info) => {\n setVestingTimeEnd(info.toNumber());\n });\n withdrawContract.vestingTimeStart().then((info) => {\n setVestingTimeStart(info.toNumber());\n });\n }\n setUpdate(false);\n };\n\n const claim = () => {\n setUpdate(true);\n const promise = withdrawContract.withdrawTokens();\n toast\n .promise(promise, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n })\n .then(() => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n })\n .catch((error) => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n });\n };\n\n const claimTge = () => {\n setUpdate(true);\n const promise = withdrawContract.withdrawTokensTGE();\n toast\n .promise(promise, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n })\n .then(() => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n })\n .catch((error) => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n });\n };\n\n const isPolygonSpecific =\n tokenName?.toLowerCase() === \"anote\" ||\n tokenName?.toLowerCase() === \"vendetta\";\n const isPolygonNetworkUsed =\n chainId ===\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1]);\n\n const isBSCNetworkUsed =\n chainId ===\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]);\n\n const onChangeNetwork = async (desiredNetworkID) => {\n if (window.ethereum.networkVersion !== desiredNetworkID) {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{ chainId: web3.utils.toHex(desiredNetworkID) }],\n });\n } catch (err) {\n // This error code indicates that the chain has not been added to MetaMask\n if (err.code === 4902) {\n toast.error(\n \"The Polygon network was not connected to your wallet provider. To continue please add Polygon network to your wallet provider\"\n );\n }\n }\n }\n };\n\n const tokenDecimals = useMemo(() => {\n if (tokenName?.toLowerCase() === \"anote\") {\n return 10 ** 9;\n }\n\n return 10 ** 18;\n }, [tokenName]);\n return (\n
\n {!isPolygonNetworkUsed && isPolygonSpecific && (\n
\n {\n onChangeNetwork(\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1]\n )\n );\n updateWithdrawContract();\n }}\n >\n Switch to Polygon Network\n \n
\n )}\n\n {isPolygonNetworkUsed && !isPolygonSpecific && (\n
\n {\n onChangeNetwork(\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]\n )\n );\n updateWithdrawContract();\n }}\n >\n Switch to BSC\n \n
\n )}\n\n {((isPolygonNetworkUsed && isPolygonSpecific) ||\n (isBSCNetworkUsed && !isPolygonSpecific)) && (\n
\n
\n
\n \n
\n
{tokenName}
\n
{tokenSmallName}
\n
\n
\n
\n
Fully unvested in:
\n
\n
\n
\n
{days}
\n \n :\n
\n
\n
days
\n
\n
\n
\n
{hours}
\n \n :\n
\n
\n
hrs
\n
\n
\n
\n
{minutes}
\n \n :\n
\n
\n
mins
\n
\n
\n
\n
{seconds}
\n
\n
secs
\n
\n
\n \n {update && (\n \n )}\n {!update && \"Claim\"}\n \n\n {!toParticipationInfo.isTgeClaimed && (\n \n )}\n
\n \n
\n
\n
\n
Vesting Start Date
\n
\n {formatDate(vestingTimeStart)}\n
\n
\n
\n
Vesting End Date
\n
\n {formatDate(vestingTimeEnd)}\n
\n
\n\n
\n
\n Total investment in USD\n
\n
\n {saleToParticipationData?.[0]\n ? (\n BigNumber.from(saleToParticipationData[0]._hex) /\n tokenDecimals\n ).toString()\n : 0}\n
\n
\n
\n
Allocation Granted
\n
\n {toParticipationInfo[0]\n ? (\n BigNumber.from(toParticipationInfo[0]._hex) /\n tokenDecimals\n ).toString()\n : 0}\n
\n
\n
\n
Claimed Tokens
\n
\n {parseFloat(\n (\n (toParticipationInfo[2] * 1 + toParticipationInfo[4] * 1) /\n tokenDecimals\n ).toFixed(2)\n )}\n
\n
\n
\n
Claimable Tokens
\n
\n {(withdrawTokenPerSecond / tokenDecimals) *\n (Math.round(date / 1000) - toParticipationInfo[1] * 1) >=\n 0\n ? parseFloat(\n (withdrawTokenPerSecond *\n (Math.round(date / 1000) -\n toParticipationInfo[1] * 1)) /\n tokenDecimals\n ).toFixed(5)\n : 0}\n
\n
\n
\n
Vesting Type
\n
{type}
\n
\n
\n \n )}\n \n );\n};\n\nexport default WithdrawLinear;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\n\nexport const useFetchavToParticipationInfo = (\n walletAddress,\n hurricaneContract\n) => {\n const { tokenContract } = useTokenContract();\n\n return useQuery({\n queryKey: [\n \"available-tokens-withdraw-element\",\n tokenContract?.address,\n walletAddress,\n hurricaneContract?.address,\n ],\n queryFn: () => {\n return hurricaneContract.userToParticipation(walletAddress);\n },\n enabled: !!hurricaneContract && !!walletAddress,\n initialData: [\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n ],\n });\n};","import classes from \"./WithdrawDaily.module.scss\";\nimport React, { useState, useEffect, useCallback, useMemo } from \"react\";\nimport useWithdrawV2Contract from \"../../../../hooks/useWithdrawV2Contract/useWithdrawV2Contract\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { Button } from \"@mui/material\";\nimport { CircularProgress } from \"@mui/material\";\nimport { toast } from \"react-toastify\";\nimport { useFetchavToParticipationInfo } from \"./hooks\";\nimport { BigNumber } from \"ethers\";\nimport web3 from \"web3\";\n\nconst WithdrawAnote = ({\n type,\n contractAddress,\n tokenName,\n tokenImg,\n tokenSmallName,\n}) => {\n const { accounts, chainId } = useMergedProvidersState();\n const userAddress = accounts[0] ?? \"\";\n const { withdrawContract, updateWithdrawContract } =\n useWithdrawV2Contract(contractAddress);\n\n const { data: toParticipationInfo, refetch } = useFetchavToParticipationInfo(\n userAddress,\n withdrawContract\n );\n const tokenDecimals = 10 ** 9;\n\n const [days, setDays] = useState(0);\n const [hours, setHours] = useState(0);\n const [minutes, setMinutes] = useState(0);\n const [seconds, setSeconds] = useState(0);\n const [vestingTimeEnd, setVestingTimeEnd] = useState(0);\n const [vestingTimeStart, setVestingTimeStart] = useState(0);\n const [update, setUpdate] = useState(true);\n\n const formatDate = (timestamp) => {\n const date = new Date(timestamp * 1000);\n const day = String(date.getDate()).padStart(2, \"0\");\n const month = String(date.getMonth() + 1).padStart(2, \"0\");\n const year = date.getFullYear();\n return `${day}.${month}.${year}`;\n };\n\n useEffect(() => {\n const endDate = new Date(vestingTimeEnd * 1000);\n const interval = setInterval(() => {\n const now = new Date();\n const difference = endDate - now;\n\n if (difference > 0) {\n const remainingDays = Math.floor(difference / (1000 * 60 * 60 * 24));\n const remainingHours = Math.floor(\n (difference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)\n );\n const remainingMinutes = Math.floor(\n (difference % (1000 * 60 * 60)) / (1000 * 60)\n );\n const remainingSeconds = Math.floor((difference % (1000 * 60)) / 1000);\n\n setDays(remainingDays);\n setHours(remainingHours);\n setMinutes(remainingMinutes);\n setSeconds(remainingSeconds);\n } else {\n clearInterval(interval);\n }\n }, 1000);\n\n return () => clearInterval(interval);\n }, [vestingTimeEnd]);\n\n useEffect(() => {\n getInfo();\n refetch();\n }, [withdrawContract, toParticipationInfo]);\n\n const getInfo = () => {\n if (withdrawContract !== null) {\n withdrawContract.vestingTimeEnd().then((info) => {\n setVestingTimeEnd(info.toNumber());\n });\n withdrawContract.vestingTimeStart().then((info) => {\n setVestingTimeStart(info.toNumber());\n });\n }\n setUpdate(false);\n };\n\n const claimableTokens = useMemo(() => {\n let claimingDays = 0;\n let end_date = Math.floor(new Date().getTime() / 1000);\n if (end_date > vestingTimeEnd) {\n end_date = vestingTimeEnd;\n }\n if (end_date > toParticipationInfo[1] * 1) {\n claimingDays = Math.floor(\n (end_date - toParticipationInfo[1] * 1) / 86400\n );\n if (end_date !== vestingTimeEnd) {\n claimingDays = claimingDays + 1;\n }\n }\n const allMonth = (vestingTimeEnd - vestingTimeStart) / 86400;\n const userToken = toParticipationInfo[0] * 1;\n return (\n (((userToken - (userToken * 12.5) / 100) / allMonth) * claimingDays) /\n tokenDecimals\n );\n }, [tokenName, vestingTimeEnd, toParticipationInfo, vestingTimeStart]);\n const claim = () => {\n setUpdate(true);\n const promise = withdrawContract.withdrawTokens();\n toast\n .promise(promise, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n })\n .then(() => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n })\n .catch((error) => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n });\n };\n\n const claimTge = () => {\n setUpdate(true);\n const promise = withdrawContract.withdrawTokensTGE();\n\n toast\n .promise(promise, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n })\n .then(() => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n })\n .catch((error) => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n });\n };\n\n const isPolygonSpecific =\n tokenName?.toLowerCase() === \"anote\" ||\n tokenName?.toLowerCase() === \"vendetta\";\n const isPolygonNetworkUsed =\n chainId ===\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1]);\n\n const isBSCNetworkUsed =\n chainId ===\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]);\n\n const onChangeNetwork = async (desiredNetworkID) => {\n if (window.ethereum.networkVersion !== desiredNetworkID) {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{ chainId: web3.utils.toHex(desiredNetworkID) }],\n });\n } catch (err) {\n // This error code indicates that the chain has not been added to MetaMask\n if (err.code === 4902) {\n toast.error(\n \"The Polygon network was not connected to your wallet provider. To continue please add Polygon network to your wallet provider\"\n );\n }\n }\n }\n };\n\n return (\n
\n {!isPolygonNetworkUsed && isPolygonSpecific && (\n
\n {\n onChangeNetwork(\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1]\n )\n );\n updateWithdrawContract();\n }}\n >\n Switch to Polygon Network\n \n
\n )}\n\n {isPolygonNetworkUsed && !isPolygonSpecific && (\n
\n {\n onChangeNetwork(\n parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]\n )\n );\n updateWithdrawContract();\n }}\n >\n Switch to BSC\n \n
\n )}\n\n {((isPolygonNetworkUsed && isPolygonSpecific) ||\n (isBSCNetworkUsed && !isPolygonSpecific)) && (\n
\n
\n
\n \n
\n
{tokenName}
\n
{tokenSmallName}
\n
\n
\n
\n
Fully unvested in:
\n
\n
\n
\n
{days}
\n \n :\n
\n
\n
days
\n
\n
\n
\n
{hours}
\n \n :\n
\n
\n
hrs
\n
\n
\n
\n
{minutes}
\n \n :\n
\n
\n
mins
\n
\n
\n
\n
{seconds}
\n
\n
secs
\n
\n
\n \n {update && (\n \n )}\n {!update && \"Claim\"}\n \n\n {!toParticipationInfo.isTgeClaimed && (\n \n )}\n
\n \n
\n
\n
\n
Vesting Start Date
\n
\n {formatDate(vestingTimeStart)}\n
\n
\n
\n
Vesting End Date
\n
\n {formatDate(vestingTimeEnd)}\n
\n
\n
\n
Allocation Granted
\n
\n {toParticipationInfo[0]\n ? (\n BigNumber.from(toParticipationInfo[0]._hex) /\n tokenDecimals\n ).toString()\n : 0}\n
\n
\n
\n
Claimed Tokens
\n
\n {parseFloat(\n ((toParticipationInfo[2] * 1) / tokenDecimals).toFixed(2)\n )}\n
\n
\n
\n
Claimable Tokens
\n
\n {claimableTokens.toFixed(4) || 0}\n
\n
\n
\n
Vesting Type
\n
{type}
\n
\n
\n \n )}\n \n );\n};\n\nexport default WithdrawAnote;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\n\nexport const useFetchavToParticipationInfo = (\n walletAddress,\n hurricaneContract\n) => {\n const { tokenContract } = useTokenContract();\n\n return useQuery({\n queryKey: [\n \"available-tokens-withdraw-element\",\n tokenContract?.address,\n walletAddress,\n hurricaneContract?.address,\n ],\n queryFn: () => {\n return hurricaneContract.userToParticipation(walletAddress);\n },\n enabled: !!hurricaneContract && !!walletAddress,\n initialData: [\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n ],\n });\n};\n","export const ABI_WITHDRAW_LINEAR = [\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"_admin\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"_vestingTimeStart\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_vestingTimeEnd\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_tgePercent\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_tgeDate\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"_claimStepDate1\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"nonpayable\",\n type: \"constructor\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"target\",\n type: \"address\",\n },\n ],\n name: \"AddressEmptyCode\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"account\",\n type: \"address\",\n },\n ],\n name: \"AddressInsufficientBalance\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"tokenAddress\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"amount\",\n type: \"uint256\",\n },\n ],\n name: \"extrimalWithdraw\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"FailedInnerCall\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"token\",\n type: \"address\",\n },\n ],\n name: \"SafeERC20FailedOperation\",\n type: \"error\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"token\",\n type: \"address\",\n },\n ],\n name: \"setToken\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [\n {\n components: [\n {\n internalType: \"address\",\n name: \"userWallet\",\n type: \"address\",\n },\n {\n internalType: \"uint256\",\n name: \"userTokens\",\n type: \"uint256\",\n },\n ],\n internalType: \"struct Distribution.UserTokens[]\",\n name: \"usersStake\",\n type: \"tuple[]\",\n },\n ],\n name: \"setUserDeposit\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"withdrawTokens\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"withdrawTokensTGE\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"admin\",\n outputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"claimStepDate1\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getClaimedInfo\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getTokensTGE\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"userAddress\",\n type: \"address\",\n },\n ],\n name: \"getWithdrawTime\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getWithdrawTokens\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"pure\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"isUserDataSeted\",\n outputs: [\n {\n internalType: \"bool\",\n name: \"\",\n type: \"bool\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"saleToken\",\n outputs: [\n {\n internalType: \"contract IERC20Extented\",\n name: \"\",\n type: \"address\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tgeDate\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"tgePercent\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n {\n internalType: \"address\",\n name: \"\",\n type: \"address\",\n },\n ],\n name: \"userToParticipation\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"userTokens\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"tokenClaimDate\",\n type: \"uint256\",\n },\n {\n internalType: \"uint256\",\n name: \"amountClaimed\",\n type: \"uint256\",\n },\n {\n internalType: \"bool\",\n name: \"isTgeClaimed\",\n type: \"bool\",\n },\n {\n internalType: \"uint256\",\n name: \"stepClaimed\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"vestingTimeEnd\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"vestingTimeStart\",\n outputs: [\n {\n internalType: \"uint256\",\n name: \"\",\n type: \"uint256\",\n },\n ],\n stateMutability: \"view\",\n type: \"function\",\n },\n];\n","import { ethers } from \"ethers\";\nimport { useEffect, useState } from \"react\";\nimport { ABI_WITHDRAW_LINEAR } from \"./consts\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst useWithdrawLinearContract = (sale_withdraw_contract_address) => {\n const { accounts, chainId } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const provider = useProviderHook();\n const [withdrawContract, setWithdrawContract] = useState(null);\n\n const updateWithdrawContract = () => {\n const signer = provider?.getSigner();\n setWithdrawContract(\n new ethers.Contract(\n sale_withdraw_contract_address,\n ABI_WITHDRAW_LINEAR,\n signer\n )\n );\n };\n\n useEffect(() => {\n if (sale_withdraw_contract_address && account) {\n updateWithdrawContract();\n }\n }, [sale_withdraw_contract_address, account, chainId]);\n\n return { withdrawContract, updateWithdrawContract };\n};\n\nexport default useWithdrawLinearContract;\n","import classes from \"./WithdrawLinear.module.scss\";\nimport React, { useState, useEffect, useMemo } from \"react\";\nimport useWithdrawLinearContract from \"hooks/useWithdrawLinearContractEywa/useWithdrawLinearContract\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { Button } from \"@mui/material\";\nimport { CircularProgress } from \"@mui/material\";\nimport { toast } from \"react-toastify\";\nimport { useFetchavToParticipationInfo } from \"./hooks\";\nimport { BigNumber } from \"ethers\";\nimport web3 from \"web3\";\nimport useSaleContract from \"hooks/useSaleContract/useSaleContract\";\nimport { useFetchToParticipationInfoFromSale } from \"../DistributionComponents/hooksSKO\";\n\nconst WithdrawEywa = ({\n type,\n saleContractAddress,\n contractAddress,\n tokenName,\n tokenImg,\n tokenSmallName,\n}) => {\n const { accounts, chainId } = useMergedProvidersState();\n const userAddress = accounts[0] ?? \"\";\n const { withdrawContract, updateWithdrawContract } =\n useWithdrawLinearContract(contractAddress);\n const decimals = Math.pow(10, 18);\n const { data: toParticipationInfo, refetch } = useFetchavToParticipationInfo(\n userAddress,\n withdrawContract\n );\n\n const { saleContract } = useSaleContract(saleContractAddress);\n\n const { data: saleToParticipationData } = useFetchToParticipationInfoFromSale(\n userAddress,\n saleContract\n );\n\n const [days, setDays] = useState(0);\n const [hours, setHours] = useState(0);\n const [minutes, setMinutes] = useState(0);\n const [seconds, setSeconds] = useState(0);\n const [vestingTimeEnd, setVestingTimeEnd] = useState(0);\n const [vestingTimeStart, setVestingTimeStart] = useState(0);\n const [claimStepDate1, setClaimStepDate1] = useState(0);\n const [update, setUpdate] = useState(true);\n const [date, setDate] = useState(0);\n const [claimableTokens, setClaimableTokens] = useState(0);\n const [tokensPerSecond, setTokensPerSecond] = useState(0);\n\n const formatDate = (timestamp) => {\n const date = new Date(timestamp * 1000);\n const day = String(date.getDate()).padStart(2, \"0\");\n const month = String(date.getMonth() + 1).padStart(2, \"0\");\n const year = date.getFullYear();\n return `${day}.${month}.${year}`;\n };\n\n const tgeInfoPresent = !toParticipationInfo.isTgeClaimed ? 0.85 : 1;\n\n useEffect(() => {\n const endDate = new Date(vestingTimeEnd * 1000);\n const interval = setInterval(() => {\n const now = new Date();\n const difference = endDate - now;\n if (difference > 0) {\n const remainingDays = Math.floor(difference / (1000 * 60 * 60 * 24));\n const remainingHours = Math.floor(\n (difference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)\n );\n const remainingMinutes = Math.floor(\n (difference % (1000 * 60 * 60)) / (1000 * 60)\n );\n const remainingSeconds = Math.floor((difference % (1000 * 60)) / 1000);\n setDays(remainingDays);\n setHours(remainingHours);\n setMinutes(remainingMinutes);\n setSeconds(remainingSeconds);\n } else {\n clearInterval(interval);\n }\n }, 1000);\n\n return () => clearInterval(interval);\n }, [vestingTimeEnd]);\n\n useEffect(() => {\n getInfo();\n refetch();\n }, [withdrawContract]);\n\n useEffect(() => {\n const intervalId = setInterval(() => {\n getInfo();\n refetch();\n }, 30000);\n\n return () => clearInterval(intervalId);\n }, []);\n\n useEffect(() => {\n const intervalCallback = () => {\n const now = new Date();\n var time = now.getTime() / 1000 - claimStepDate1;\n if (toParticipationInfo.tokenClaimDate * 1 > claimStepDate1) {\n time = now.getTime() / 1000 - toParticipationInfo.tokenClaimDate * 1;\n }\n if (time > 0 && now.getTime() / 1000 < vestingTimeEnd) {\n setDate(time);\n }\n if (withdrawContract !== null) {\n const timestamp = new Date().getTime() / 1000;\n const tgePercent = 15;\n let tokensForSecond = 0;\n const userTokens = toParticipationInfo[0] * 1;\n tokensForSecond =\n (userTokens - (userTokens * tgePercent) / 100) /\n (vestingTimeEnd - claimStepDate1);\n setTokensPerSecond(tokensForSecond / decimals);\n\n const stepClaimed = toParticipationInfo.stepClaimed * 1;\n let claimableTokens = 0;\n if (timestamp > vestingTimeStart && stepClaimed < 1) {\n claimableTokens +=\n ((toParticipationInfo.userTokens / decimals) * 13) / 100;\n }\n setClaimableTokens(claimableTokens);\n }\n };\n\n const intervalId = setInterval(intervalCallback, 1000);\n\n return () => {\n clearInterval(intervalId);\n };\n }, [\n userAddress,\n toParticipationInfo,\n withdrawContract,\n claimStepDate1,\n vestingTimeEnd,\n ]);\n\n const getInfo = () => {\n if (withdrawContract !== null) {\n withdrawContract.vestingTimeEnd().then((info) => {\n setVestingTimeEnd(info.toNumber());\n });\n withdrawContract.vestingTimeStart().then((info) => {\n setVestingTimeStart(info.toNumber());\n });\n withdrawContract.claimStepDate1().then((info) => {\n setClaimStepDate1(info.toNumber());\n });\n }\n setUpdate(false);\n };\n\n const claim = () => {\n setUpdate(true);\n const promise = withdrawContract.withdrawTokens();\n toast\n .promise(promise, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n })\n .then(() => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n })\n .catch((error) => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n });\n };\n\n const claimTge = () => {\n setUpdate(true);\n const promise = withdrawContract.withdrawTokensTGE();\n toast\n .promise(promise, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n })\n .then(() => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n })\n .catch((error) => {\n setTimeout(() => {\n getInfo();\n refetch();\n }, 15000);\n });\n };\n\n const onChangeNetwork = async (desiredNetworkID) => {\n if (window.ethereum.networkVersion !== desiredNetworkID) {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{ chainId: web3.utils.toHex(desiredNetworkID) }],\n });\n } catch (err) {\n // This error code indicates that the chain has not been added to MetaMask\n if (err.code === 4902) {\n toast.error(\n \"The Arbirum network was not connected to your wallet provider. To continue please add Polygon network to your wallet provider\"\n );\n }\n }\n }\n };\n\n const tokenDecimals = useMemo(() => {\n if (tokenName?.toLowerCase() === \"anote\") {\n return 10 ** 9;\n }\n\n return 10 ** 18;\n }, [tokenName]);\n return (\n
\n {chainId != \"42161\" && (\n
\n {\n onChangeNetwork(parseInt(42161));\n updateWithdrawContract();\n }}\n >\n Switch to Arbitrum Network\n \n
\n )}\n\n {chainId == \"42161\" && (\n
\n
\n
\n \n
\n
{tokenName}
\n
{tokenSmallName}
\n
\n
\n
\n
Fully unvested in:
\n
\n
\n
\n
{days}
\n \n :\n
\n
\n
days
\n
\n
\n
\n
{hours}
\n \n :\n
\n
\n
hrs
\n
\n
\n
\n
{minutes}
\n \n :\n
\n
\n
mins
\n
\n
\n
\n
{seconds}
\n
\n
secs
\n
\n
\n \n {update && (\n \n )}\n {!update && \"Claim\"}\n \n\n {!toParticipationInfo.isTgeClaimed && (\n \n )}\n
\n \n
\n
\n
\n
Vesting Start Date
\n
\n {formatDate(vestingTimeStart)}\n
\n
\n
\n
Vesting End Date
\n
\n {formatDate(vestingTimeEnd)}\n
\n
\n\n
\n
\n Total investment in USD\n
\n
\n {saleToParticipationData?.[0]\n ? (\n BigNumber.from(saleToParticipationData[0]._hex) /\n tokenDecimals\n ).toString()\n : 0}\n
\n
\n
\n
Allocation Granted
\n
\n {toParticipationInfo[0]\n ? (\n BigNumber.from(toParticipationInfo[0]._hex) /\n tokenDecimals\n ).toString()\n : 0}\n
\n
\n
\n
Claimed Tokens
\n
\n {parseFloat(\n (\n (toParticipationInfo[2] * 1 + toParticipationInfo[4] * 1) /\n tokenDecimals\n ).toFixed(2)\n )}\n
\n
\n
\n
Claimable Tokens
\n
\n {new Date().getTime() / 1000 > vestingTimeEnd\n ? parseFloat(\n ((toParticipationInfo.userTokens * 1 -\n toParticipationInfo[2] * 1) /\n tokenDecimals) *\n tgeInfoPresent\n ).toFixed(5)\n : parseFloat(\n claimableTokens + tokensPerSecond * date\n ).toFixed(5)}\n
\n
\n
\n
Vesting Type
\n
{type}
\n
\n
\n \n )}\n \n );\n};\n\nexport default WithdrawEywa;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\n\nexport const useFetchavToParticipationInfo = (\n walletAddress,\n hurricaneContract\n) => {\n const { tokenContract } = useTokenContract();\n\n return useQuery({\n queryKey: [\n \"available-tokens-withdraw-element\",\n tokenContract?.address,\n walletAddress,\n hurricaneContract?.address,\n ],\n queryFn: () => {\n return hurricaneContract.userToParticipation(walletAddress);\n },\n enabled: !!hurricaneContract && !!walletAddress,\n initialData: [\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n {\n _hex: \"0x00\",\n _isBigNumber: true,\n },\n ],\n });\n};","import React, { useEffect, useState } from \"react\";\nimport WithdrawDaily from \"../WithdrawDaily/WithdrawDaily\";\nimport DistributionSKO from \"../DistributionComponents/DistributionSKO\";\nimport WithdrawLinear from \"../WithdrawLinear/WithdrawLinear\";\nimport WithdrawAnote from \"../WithdrawAnote/WithdrawAnote\";\nimport WithdrawEywa from \"../WithdrawEywa/WithdrawLinear\";\nconst YourAllocations = ({\n name,\n saleContractAddress,\n contractAddress,\n tgeContractAddress,\n tokenName,\n tokenImg,\n tokenSmallName,\n}) => {\n const [show, setShow] = useState(\"daily\");\n\n useEffect(() => {\n switch (name) {\n case \"sugar kingdom odyssey\":\n setShow(\"sko\");\n break;\n case \"octavia\":\n setShow(\"liner\");\n break;\n case \"anote\":\n setShow(\"anote\");\n break;\n case \"eywa\":\n setShow(\"eywa\");\n break;\n default:\n setShow(\"daily\");\n }\n }, []);\n\n return (\n
\n {show === \"eywa\" && (\n \n )}\n\n {show === \"daily\" && (\n \n )}\n\n {show === \"anote\" && (\n \n )}\n\n {show === \"sko\" && (\n \n )}\n\n {show === \"liner\" && (\n \n )}\n
\n );\n};\n\nexport default YourAllocations;\n","export const shouldShowTable = (sale_name) => {\n if (sale_name === \"sugar kingdom odyssey\") {\n return false;\n }\n if (sale_name === \"edge video ai\") {\n return false;\n }\n\n if (sale_name === \"anote\") {\n return false;\n }\n\n if (sale_name === \"vendetta\") {\n return false;\n }\n\n if (sale_name === \"octavia\") {\n return false;\n }\n if (sale_name === \"eywa\") {\n return false;\n }\n return true;\n};\n","export const contractAddressFetcher = (sale_name) => {\n if (sale_name?.toLowerCase() === \"sugar kingdom odyssey\") {\n return \"0x34b90aafAE59A5011b5c136434003EF62fD0029a\";\n }\n if (sale_name?.toLowerCase() === \"anote\") {\n return \"0xd38ACf6CD7d840B64dEA325bf4bE0A27fba2b696\";\n }\n if (sale_name?.toLowerCase() === \"vendetta\") {\n return \"0x49c1a1037D5b22E18f8c4F4aE8377f6833f92f87\";\n }\n if (sale_name?.toLowerCase() === \"octavia\") {\n return \"0xADc0ACe4dE87923Ea2DeFF82e2e69112362e9C32\";\n }\n if (sale_name?.toLowerCase() === \"edge video ai\") {\n return \"0x39204F2d08ca1A0d11a82aCA03055cC2EC4592C7\";\n }\n if (sale_name?.toLowerCase() === \"eywa\") {\n return \"0x52cAbF5a4f66af09c4B110AD1E8CC6d994A249f4\";\n }\n};\n\nexport const tgeContractAddressFetcher = (sale_name) => {\n if (sale_name?.toLowerCase() === \"sugar kingdom odyssey\") {\n return \"0x899e0D7bd342ECE88632c8F35A256568DFb7F6cc\";\n }\n if (sale_name?.toLowerCase() === \"vendetta\") {\n return \"0x49c1a1037D5b22E18f8c4F4aE8377f6833f92f87\";\n }\n if (sale_name?.toLowerCase() === \"anote\") {\n return \"0xd38ACf6CD7d840B64dEA325bf4bE0A27fba2b696\";\n }\n\n return undefined;\n};\n","import React, { useEffect, useState } from \"react\";\nimport classes from \"./AllocationsInfo.module.scss\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport { ethers } from \"ethers\";\n\nimport { SALE_ABI, FAKE_CONTRACT } from \"../../../../consts/abi\";\nimport { ControlButton } from \"../DetailTable/components/ControlButton/ControlButton\";\n\nimport Table from \"../Table/Table\";\nimport { toast } from \"react-toastify\";\n\nimport { providers } from \"ethers\";\nimport WalletConnectProvider from \"@walletconnect/ethereum-provider\";\nimport { useSelector } from \"react-redux\";\nimport { RpcProvider } from \"../../../../consts/rpc\";\nimport { rpcWalletConnectProvider } from \"../../../../consts/walletConnect\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport YourAllocations from \"scenes/AllocationStaking/components/YourAllocations/YourAllocations\";\nimport { useParams } from \"react-router-dom\";\nimport { shouldShowTable } from \"scenes/IdoDetail/helpers/helperFunctions\";\nimport { contractAddressFetcher, tgeContractAddressFetcher } from \"./helpers\";\n\nexport function AllocationsInfo({ ido }) {\n const { name } = useParams();\n\n const [showTable, setShowTable] = useState(\n shouldShowTable(name?.toLocaleLowerCase())\n );\n\n useEffect(() => {\n if (name) {\n setShowTable(shouldShowTable(name?.toLocaleLowerCase()));\n }\n }, [name]);\n\n const provider = useProviderHook();\n const { activate, deactivate, account, error } = useWeb3React();\n const { accounts } = useMergedProvidersState();\n const userWalletAddress = accounts[0] ?? \"\";\n const claimAllAvailablePortions = async (ids) => {\n try {\n const { ethereum } = window;\n if (ethereum && !!account) {\n const signer = provider?.getSigner();\n const saleContract = new ethers.Contract(\n ido.contract_address,\n SALE_ABI,\n signer\n );\n let result = await saleContract.withdrawMultiplePortions([0, 1, 2]);\n const transaction = result.wait();\n\n toast.promise(transaction, {\n pending: \"Transaction pending\",\n success: \"Claim request completed\",\n error: \"Transaction failed\",\n });\n } else if (!!account) {\n const web3Provider = new providers.Web3Provider(\n rpcWalletConnectProvider\n );\n const signer = web3Provider.getSigner();\n\n const saleContract = new ethers.Contract(\n ido.contract_address,\n SALE_ABI,\n signer\n );\n let result = await saleContract.withdrawMultiplePortions([0, 1, 2]);\n const transaction = result.wait();\n\n toast.promise(transaction, {\n pending: \"Transaction pending\",\n success: \"Claim request completed\",\n error: \"Transaction failed\",\n });\n }\n } catch (error) {\n toast.error(\"Execution reverted\");\n }\n };\n\n const claimPortion = async (id) => {\n try {\n const { ethereum } = window;\n if (ethereum) {\n const signer = provider?.getSigner();\n const mainOne = new ethers.Contract(\n ido.contract_address,\n SALE_ABI,\n signer\n );\n const sumToWithdraw = await mainOne\n .calculateAmountWithdrawingPortionPub(userWalletAddress, 40)\n .then((response) => {\n return response;\n });\n const saleContract = new ethers.Contract(\n \"0x47a398a8374FAEE8634173F2a949f981822e58C4\",\n FAKE_CONTRACT,\n signer\n );\n let result = await saleContract.withdrawTokensFirstPortion(\n id,\n sumToWithdraw\n );\n const transaction = result.wait();\n\n toast.promise(transaction, {\n pending: \"Transaction pending\",\n success: \"Claim request completed\",\n error: \"Transaction failed\",\n });\n } else if (!!account) {\n const web3Provider = new providers.Web3Provider(\n rpcWalletConnectProvider\n );\n const signer = web3Provider.getSigner();\n const mainOne = new ethers.Contract(\n ido.contract_address,\n SALE_ABI,\n signer\n );\n const sumToWithdraw = await mainOne\n .calculateAmountWithdrawingPortionPub(userWalletAddress, 40)\n .then((response) => {\n return response;\n });\n const saleContract = new ethers.Contract(\n \"0x47a398a8374FAEE8634173F2a949f981822e58C4\",\n FAKE_CONTRACT,\n signer\n );\n let result = await saleContract.withdrawTokensFirstPortion(\n id,\n sumToWithdraw\n );\n const transaction = result.wait();\n\n toast.promise(transaction, {\n pending: \"Transaction pending\",\n success: \"Claim request completed\",\n error: \"Transaction failed\",\n });\n }\n } catch (error) {\n console.log(\"error\", error);\n }\n };\n\n return (\n
\n {/* { claimAllAvailablePortions() }} text=\"Claim all portions\" /> */}\n {/* TODO: !!!!!!!!!!!!added API!!!!!!!!!*/}\n {!showTable && (\n \n )}\n {showTable && (\n {\n claimPortion(id);\n }}\n mainIdo={ido}\n />\n )}\n
\n );\n}\n","export default __webpack_public_path__ + \"static/media/vesting.a267a21a.png\";","import classes from './SimpleVestingList.module.scss'\nimport VestingImg from '../../../../img/vesting.png'\n\nconst SimpleVestingList = () => {\n return (
\n All Sale participants got a 3,3+ NFT airdropped on Polygon to their wallet, which represents and includes the number of tokens purchased. A 25x multiplier will be applied to the unvested token quantity with four-year locking schedule. \n\n
    \n
  • Example: A 20 USDT investment will produce a 3,3+ NFT with 10 TNGBL tokens (Sale token price was $2).\n
  • \n Those tokens will multiply to a total of 250 over the course of four years.\n
  • In general you will have your purchased token ammount vested by approximately the 9th month, at which point you can liquidate your position, claiming those tokens but\n forfeiting all future multipliers.
  • \n
\n\n Sample 3,3+ NFT of a $20 investment. 10 TNGBL with a 25x multiplier over four years. Bonding\n curve indicates the free-claimable and restricted-claimable tokens over that time frame. Price is\n a reflection of current market price for TNGBL at the time of this screenshot.Б\n\n \n\n To make your NFT visible, visit opensea.io and connect your wallet. Then go to 'Account' in the top right corner and choose 'Profile' from the drop down menu. In the profile section you will be able to see your 3.3+ NFT. \n
\n
\n To view all other information about your NFT, bonding curve, and your USDC Rewards, visit tangible.store and connect your wallet. Select 'My collection' in the top right corner and then filter for '3.3+ NFT' on the left side of the page. Your 3.3+ NFT will appear and clicking on it will open a page with all information. \n\n
);\n}\n\nexport default SimpleVestingList;","export default __webpack_public_path__ + \"static/media/polygon.28482b91.svg\";","export default __webpack_public_path__ + \"static/media/binance.a4ffa979.svg\";","import classes from \"./NetworkLogos.module.scss\";\nimport polygonLogo from \"./assets/polygon.svg\";\nimport bscLogo from \"./assets/binance.svg\";\n\nconst NetworkLogos = ({ network }) => {\n const logos = {\n bsc: bscLogo,\n polygon: polygonLogo,\n };\n\n return ;\n};\n\nexport default NetworkLogos;\n","import axios from \"axios\";\n\nexport function getNews(id) {\n return axios.get(process.env.REACT_APP_API_URL + \"news\" + `/${id}`);\n}\n\nexport function createNews(data) {\n return axios.post(process.env.REACT_APP_API_URL + \"news_create\", data);\n}\n\nexport function putNews(id, data) {\n return axios.put(\n process.env.REACT_APP_API_URL + \"news_update\" + `/${id}`,\n data\n );\n}\n\nexport function deleteNews(id) {\n return axios.delete(process.env.REACT_APP_API_URL + \"news_delete\" + `/${id}`);\n}\n","import Timeline from \"@mui/lab/Timeline\";\nimport TimelineItem from \"@mui/lab/TimelineItem\";\nimport TimelineSeparator from \"@mui/lab/TimelineSeparator\";\nimport TimelineConnector from \"@mui/lab/TimelineConnector\";\nimport TimelineContent from \"@mui/lab/TimelineContent\";\nimport TimelineDot from \"@mui/lab/TimelineDot\";\nimport { TimelineOppositeContent } from \"@material-ui/lab\";\nimport { Box, Grid, Paper, Typography } from \"@mui/material\";\nimport { Image } from \"@mui/icons-material\";\nimport { timelineOppositeContentClasses } from \"@mui/lab/TimelineOppositeContent\";\nimport React, { useEffect, useState } from \"react\";\nimport { getNews } from \"scenes/NewsAdmin/API/api\";\nimport { useNavigate } from \"react-router-dom\";\n\nconst ProjectNews = ({ ido }) => {\n const navigate = useNavigate();\n const [placeholderData, setPlaceholderData] = useState([]);\n\n useEffect(() => {\n getNews(ido.id).then((item) => {\n setPlaceholderData(item.data.news);\n });\n }, []);\n return (\n \n {!!placeholderData?.length && (\n \n Latest sale news:\n \n )}\n {!placeholderData?.length && (\n \n Sorry, there are currently no news\n \n )}\n {!!placeholderData?.length && (\n \n {placeholderData.map((newsItem, index) => {\n return (\n \n \n \n {new Date(newsItem.date).toLocaleDateString(\"en-GB\")}\n \n \n \n \n {index !== placeholderData.length - 1 && (\n \n )}\n \n {\n if (newsItem.url.includes(\"http\")) {\n window.open(newsItem.url, \"_blank\");\n } else {\n navigate(\"/news/\" + newsItem.id);\n }\n }}\n style={{\n cursor: \"pointer\",\n }}\n >\n \n \n \n \n \n \n \n {newsItem.title}\n \n \n {newsItem.text}\n \n \n \n \n \n \n );\n })}\n \n )}\n \n );\n};\n\nexport default ProjectNews;\n","import React, { useEffect, useState } from \"react\";\nimport classes from \"./DetailTable.module.scss\";\nimport { ControlButton } from \"./components/ControlButton/ControlButton\";\nimport { TableRow } from \"./components/TableRow/TableRow\";\nimport { AllocationsInfo } from \"../AllocationsInfo/AllocationsInfo\";\nimport SimpleVestingList from \"./components/SimpleVestingList/SimpleVestingList\";\nimport { ethers, providers } from \"ethers\";\nimport { SALE_ABI } from \"../../../../consts/abi\";\nimport WalletConnectProvider from \"@walletconnect/ethereum-provider\";\nimport { RpcProvider } from \"../../../../consts/rpc\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport SaleOwner from \"./components/SaleOwner/SaleOwner\";\nimport { rpcWalletConnectProvider } from \"../../../../consts/walletConnect\";\nimport useClaimTour from \"../../../../hooks/useClaimTour/useClaimTour\";\nimport { useParams } from \"react-router-dom\";\nimport NetworkLogos from \"../NetworkLogos/NetworkLogos\";\nimport { metaMask, hooks } from \"../../../Header/ProviderDialog/Metamask\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport useSaleContract from \"hooks/useSaleContract/useSaleContract\";\nimport { shouldShowTable } from \"scenes/IdoDetail/helpers/helperFunctions\";\nimport useWithdrawV2Contract from \"hooks/useWithdrawV2Contract/useWithdrawV2Contract\";\nimport { contractAddressFetcher } from \"../AllocationsInfo/helpers\";\nimport ProjectNews from \"../ProjectNews/ProjectNews\";\n\nconst DetailTable = ({ ido }) => {\n const [activeButton, setActivateButton] = useState(\"sale_info\");\n const [isSaleOwner, setIsSaleOwner] = useState(false);\n const [showYourAllocations, setShowYourAllocations] = useState(true);\n const [depositAmount, setDepositAmount] = useState(0);\n const [isParticipated, setIsParticipated] = useState(false);\n //const [saleContract, setSaleContract] = useState();\n const { saleContract } = useSaleContract(ido.contract_address);\n const claimTour = useClaimTour();\n const { name } = useParams();\n\n const [rowInfo, setRowInfo] = useState([\n {\n text: \"Project Website\",\n link: {\n url: \"\",\n text: \"www.crabada.com\",\n },\n },\n {\n text: \"Number of Registrations\",\n info: \"15,290\",\n },\n {\n text: \"Vesting\",\n info: \"100% TGE\",\n },\n {\n text: \"TGE\",\n info: \"Nov 13th 2021 at 14:00\",\n },\n {\n text: \"Sale Contract Address (never send tokens directly to this contract)\",\n link: {\n url: \"\",\n text: \"0x51208420EAba25b787008EE856665B2F4c5ed818\",\n isShortText: true,\n },\n },\n {\n text: \"Restricted countries:\",\n info: \"US, North Korea, Russia, Iran\",\n },\n ]);\n\n const [tokenInfo, setTokenInfo] = useState([\n {\n text: \"Token Name\",\n info: \"Crabada\",\n },\n {\n text: \"Token Symbol\",\n info: \"CRA\",\n },\n {\n text: \"Token Decimals\",\n info: \"18\",\n },\n {\n text: \"Total Supply\",\n info: \"1,000,000,000\",\n },\n {\n text: \"Token Address\",\n link: {\n url: \"\",\n text: \"0x51208420EAba25b787008EE856665B2F4c5ed818\",\n isShortText: true,\n },\n },\n ]);\n\n const { accounts } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n const provider = useProviderHook();\n\n const { withdrawContract, updateWithdrawContract } = useWithdrawV2Contract(\n contractAddressFetcher(name ?? \"\")\n );\n\n useEffect(() => {\n if (ido === undefined) return;\n\n //TODO: revert to isParticipated\n setShowYourAllocations(\n (ido.project_detail.vesting_percent.length > 0 &&\n !ido.project_detail.vesting_percent.includes(null)) ||\n (!shouldShowTable(name?.toLowerCase()) && isParticipated)\n );\n let tempRowInfo = [...rowInfo];\n tempRowInfo[0].link.url = ido.website_url;\n tempRowInfo[0].link.text = ido.website_url;\n\n tempRowInfo[1].info = ido.project_detail.number_of_registration;\n\n tempRowInfo[2].info = ido.project_detail.vesting_text;\n\n tempRowInfo[3].info = ido.read_from_db\n ? \"TBA\"\n : new Date(ido.project_detail.tge).toLocaleString(\"en-US\", {\n dateStyle: \"long\",\n });\n tempRowInfo[3].info =\n ido.contract_address.toLowerCase() ===\n \"0x9Ec4A08eD1C469cF281ab439A3689a8C4E47Be35\".toLowerCase()\n ? \"Target: End of September\"\n : tempRowInfo[3].info;\n\n tempRowInfo[4].link.text = ido.contract_address;\n\n //TODO: remove this or at least get rid of hardcode\n if (name === \"another-1\" && !tempRowInfo[6]) {\n tempRowInfo.push({\n text: \"Staking and USDT Deposit Network\",\n info: (\n
\n \n BSC\n
\n ),\n });\n }\n\n if (name === \"another-1\" && !tempRowInfo[7]) {\n tempRowInfo.push({\n text: \"Distribution Network\",\n info: ,\n });\n }\n\n setRowInfo([...tempRowInfo]);\n\n let t_tokenInfo = [...tokenInfo];\n\n t_tokenInfo[0].info = ido.token.name;\n t_tokenInfo[1].info = ido.token.symbol;\n t_tokenInfo[2].info = ido.token.decimals;\n t_tokenInfo[3].info = numberWithCommas(ido.token.total_supply);\n t_tokenInfo[4].link.text = ido.token.token_address;\n\n setTokenInfo([...tokenInfo]);\n\n const { ethereum } = window;\n\n // if (ethereum && !!ido) {\n // const signer = provider?.getSigner();\n // setSaleContract(\n // new ethers.Contract(ido.contract_address, SALE_ABI, signer)\n // );\n // } else if (!!ido) {\n // const web3Provider = new providers.Web3Provider(rpcWalletConnectProvider);\n // const signer = web3Provider.getSigner();\n\n // setSaleContract(\n // new ethers.Contract(ido.contract_address, SALE_ABI, signer)\n // );\n // }\n }, [ido, name, provider, isParticipated]);\n\n useEffect(() => {\n if (\n account?.toLowerCase() ===\n \"0xe4727db0D9eF3cA11b9D177c2E92f63b512993A5\".toLowerCase()\n ) {\n setIsParticipated(true);\n return;\n }\n\n if (!!saleContract) {\n saleContract\n .sale()\n .then((response) => {\n setIsSaleOwner(response.saleOwner === account);\n })\n .catch((error) => {});\n\n saleContract.isParticipated(account).then((response) => {\n setIsParticipated(response);\n });\n }\n }, [saleContract, account]);\n\n useEffect(() => {\n if (\n account?.toLowerCase() ===\n \"0x98672607C75C4A6c021c9867d055C9954Ec7a62d\".toLowerCase()\n ) {\n setIsParticipated(true);\n } else {\n if (withdrawContract && account) {\n withdrawContract.userToParticipation(account).then((response) => {\n if (!isParticipated) {\n setIsParticipated(response.userTokens > 0);\n }\n });\n }\n }\n }, [withdrawContract, account, isParticipated]);\n\n function showTableRows() {\n let arrayToShow = [];\n switch (activeButton) {\n case \"sale_info\":\n arrayToShow = rowInfo;\n break;\n\n case \"token_info\":\n arrayToShow = tokenInfo;\n break;\n\n default:\n break;\n }\n\n return arrayToShow.map((info, id) => {\n if (info.text != \"Number of Registrations\") {\n if (id + 1 == rowInfo.length) {\n info[\"showLine\"] = false;\n } else {\n info[\"showLine\"] = true;\n }\n return ;\n }\n });\n }\n\n function numberWithCommas(x) {\n return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n }\n\n return (\n
\n
\n {\n setActivateButton(\"sale_info\");\n }}\n isActive={activeButton === \"sale_info\"}\n text=\"Sale Info\"\n />\n {\n setActivateButton(\"token_info\");\n }}\n isActive={activeButton === \"token_info\"}\n text=\"Token Info\"\n />\n {\n setActivateButton(\"about_the_project\");\n }}\n isActive={activeButton === \"about_the_project\"}\n text=\"About the Project\"\n />\n {\n setActivateButton(\"news\");\n }}\n isActive={activeButton === \"news\"}\n text=\"News\"\n />\n {showYourAllocations && (\n {\n setActivateButton(\"your_allocations\");\n claimTour.goToNextStep();\n }}\n title={\"your_allocations_control_button\"}\n isActive={activeButton === \"your_allocations\"}\n text=\"Your Allocations\"\n />\n )}\n {isSaleOwner && (\n {\n setActivateButton(\"sale_owner\");\n }}\n isActive={activeButton === \"sale_owner\"}\n text=\"Sale owner\"\n />\n )}\n\n {/*\n ido.token.name === \"Tangible\" &&\n { setActivateButton('vesting') }}\n isActive={activeButton === \"vesting\"}\n text=\"Vesting\"\n />*/}\n
\n\n {activeButton === \"your_allocations\" ? (\n \n ) : activeButton === \"about_the_project\" ? (\n \n ) : activeButton === \"sale_owner\" ? (\n <>\n ) : // \n activeButton === \"vesting\" ? (\n \n ) : activeButton === \"news\" ? (\n \n ) : (\n
{showTableRows()}
\n )}\n
\n );\n};\n\nexport default DetailTable;\n","export default __webpack_public_path__ + \"static/media/telegram.1ed1edd7.svg\";","export default __webpack_public_path__ + \"static/media/twitter.6b38ad86.svg\";","export default __webpack_public_path__ + \"static/media/medium.817f652d.svg\";","export default __webpack_public_path__ + \"static/media/img1.199891c2.svg\";","export default __webpack_public_path__ + \"static/media/img2.0a9f9fd5.svg\";","export default __webpack_public_path__ + \"static/media/img3.160a1de9.svg\";","export default __webpack_public_path__ + \"static/media/img4.2d820c36.svg\";","export default __webpack_public_path__ + \"static/media/Checked_IMG.0d0a0e05.svg\";","export default __webpack_public_path__ + \"static/media/letters.2e66450d.svg\";","export default __webpack_public_path__ + \"static/media/blue_arrow.ebaee47f.svg\";","export default __webpack_public_path__ + \"static/media/waves.24138576.svg\";","export default __webpack_public_path__ + \"static/media/light_waves.7cc78625.svg\";","export default __webpack_public_path__ + \"static/media/at.f9a25881.svg\";","import { useState } from 'react';\n\nimport Dialog from '@mui/material/Dialog';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport IconButton from '@mui/material/IconButton';\nimport Waves from './../../images/waves.svg'\nimport LightWaves from './../../images/light_waves.svg'\nimport At from './../../images/at.svg';\n\nimport CloseIcon from '@mui/icons-material/Close';\n\nimport classes from './IDOSubscribeDialog.module.scss'\nimport { create_subscription } from '../../API/subscribe';\n\nconst IDOSubscribeDialog = ({ open, setOpen }) => {\n\n const [sayThankYou, setSayThankYou] = useState(false);\n const [email, setEmail] = useState('');\n\n const handleSubscribe = (e) => {\n e.preventDefault();\n e.stopPropagation();\n create_subscription(email).then(response=>{\n setSayThankYou(true);\n });\n }\n\n return (<>\n setOpen(false)}\n open={open}\n PaperProps={{\n style: {\n background: sayThankYou ? \"linear-gradient(180deg, #0AA7F5 0%, #3CE7FF 100%)\" : 'white'\n },\n }}\n >\n \n\n setOpen(false)}>\n {\n !sayThankYou &&\n \n }\n\n {\n sayThankYou &&\n \n }\n \n \n \n \n\n {\n sayThankYou && <>\n

Thank you!

\n \n }\n\n {!sayThankYou && <>\n

Subscribe to updates

\n

Enter your email below:

\n
\n
\n \n setEmail(e.target.value)}\n />\n\n
\n \n
\n }\n\n\n
\n {\n !sayThankYou &&\n \n }\n\n {\n sayThankYou &&\n \n }\n\n \n );\n}\n\nexport default IDOSubscribeDialog;","/* eslint-disable no-lone-blocks */\n/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect, useMemo, useState } from \"react\";\nimport classes from \"./IdoDetail.module.scss\";\nimport { MainInfo } from \"./components/MainInfo/MainInfo\";\nimport IdoBlock from \"./components/IdoBlock/IdoBlock\";\nimport DetailTable from \"./components/DetailTable/DetailTable\";\nimport { ethers } from \"ethers\";\n\nimport { SALE_ABI, TOKEN_ABI } from \"../../consts/abi\";\n\n// Image imports\nimport TestImg from \"../MainScreen/components/IDOBlock/test_img.svg\";\nimport Telegram from \"./img/telegram.svg\";\nimport Twitter from \"./img/twitter.svg\";\nimport Mediun from \"./img/medium.svg\";\nimport Img1 from \"./img/img1.svg\";\nimport Img2 from \"./img/img2.svg\";\nimport Img3 from \"./img/img3.svg\";\nimport Img4 from \"./img/img4.svg\";\nimport CheckedImg from \"./img/Checked_IMG.svg\";\nimport {\n getSingleIdo,\n getSingleIdoByName,\n getSingleProdIdoByName,\n} from \"../MainScreen/components/Table/API/idos\";\nimport { useSearchParams } from \"react-router-dom\";\nimport { useDispatch } from \"react-redux\";\nimport { useSelector } from \"react-redux\";\nimport { setBG } from \"../../features/projectDetailsSlice\";\nimport { useNavigate } from \"react-router-dom\";\nimport { RpcProvider } from \"../../consts/rpc\";\nimport SubscribePanel from \"./components/SubscribePanel/SubscribePanel\";\nimport { useParams } from \"react-router-dom\";\nimport EbookBanner from \"../MainScreen/components/EbookBanner/EbookBanner\";\nimport moment from \"moment/moment\";\nimport \"moment-timezone\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport WhitelistNetworkSwitcher from \"./components/WhitelistNetworkSwitcher/WhitelistNetworkSwitcher\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst IdoDetail = (props) => {\n const provider = useProviderHook();\n const navigate = useNavigate();\n const params = useParams();\n const dispatch = useDispatch();\n const currentBg = useSelector((state) => state.projectDetails.bg_image);\n const { chainId } = useMergedProvidersState();\n\n const projectName = useMemo(() => {\n if (params.name === \"rivals\" || params.name === \"rival\") {\n return encodeURI(\"bit rivals\");\n }\n return params.name;\n }, [params?.name]);\n\n const [totalBUSDRaised, setTotalBUSDRaised] = useState(0);\n const [title, setTitle] = useState(\n \"A Fully-Decentralized Play-and-Earn Idle Game\"\n );\n const [text, setText] = useState(\n \"Crabada is an exciting play-and-earn NFT game based in a world filled with fierce fighting Hermit-Crabs called Crabada (the NFTs).\"\n );\n const [media, setMedia] = useState([\n {\n link: \"\",\n img: Telegram,\n imgMobile:\n \"https://cdn-icons.flaticon.com/png/512/3670/premium/3670044.png?token=exp=1639986909~hmac=7e5f006cead8d6588bd91b5e6e9da32a\",\n },\n {\n link: \"\",\n img: Twitter,\n imgMobile:\n \"https://cdns.iconmonstr.com/wp-content/assets/preview/2012/240/iconmonstr-twitter-4.png\",\n },\n {\n link: \"\",\n img: Mediun,\n imgMobile:\n \"https://cdns.iconmonstr.com/wp-content/assets/preview/2018/240/iconmonstr-medium-4.png\",\n },\n ]);\n const [idoInfo, setIdoInfo] = useState({\n token: {\n name: \"\",\n symbol: \"\",\n price: \"\",\n peakPrice: 0,\n img: null,\n },\n saleInfo: {\n totalRaised: 0,\n raised: 0,\n partisipants: 0,\n start_date: 0,\n end_date: 0,\n token_price: 0,\n info: {\n time_until_launch: null,\n token_sold: 0,\n token_distribution: 0,\n sale_progres: 0,\n },\n },\n });\n const [dataToShowParticipate, setDataToShowParticipate] = useState([\n {\n img: Img1,\n title: \"Whitelisting opens\",\n text1: \"\",\n text2: \"\",\n UTCTime: \"\",\n date: new Date(Date.now()),\n },\n {\n img: Img2,\n title: \"Whitelisting closes\",\n text1: \"\",\n text2: \"\",\n UTCTime: \"\",\n date: new Date(Date.now()),\n isNewDate: projectName === \"another-1\",\n },\n {\n img: Img3,\n title: \"Sale starts\",\n text1: \"\",\n text2: \"\",\n UTCTime: \"\",\n date: new Date(Date.now()),\n isNewDate: projectName === \"another-1\",\n },\n {\n img: Img4,\n title: \"Sale ends\",\n text1: \"\",\n text2: \"\",\n UTCTime: \"\",\n date: new Date(Date.now()),\n isNewDate: projectName === \"another-1\",\n },\n ]);\n const [saleContract, setSaleContract] = useState();\n const [tokenContract, setTokenContract] = useState();\n\n const [ido, setIdo] = useState();\n\n useEffect(async () => {\n if (params.type && params.type === \"completed\") {\n getSingleProdIdoByName(projectName).then(async (response) => {\n const selectedIdo = response.data.ido;\n\n dispatch(setBG(response.data.ido.project_detail.project_bg));\n\n let tDataToShowParticipate = [...dataToShowParticipate];\n\n tDataToShowParticipate[0].date = new Date(\n selectedIdo.timeline.registration_start * 1000\n );\n tDataToShowParticipate[0].text1 = new Date(\n selectedIdo.timeline.registration_start * 1000\n ).toLocaleString(\"en-US\", { dateStyle: \"long\" });\n tDataToShowParticipate[0].text2 =\n new Date(\n selectedIdo.timeline.registration_start * 1000\n ).toLocaleTimeString(\"en-US\", {\n hour: \"2-digit\",\n minute: \"2-digit\",\n }) +\n \" \" +\n moment.tz(moment.tz.guess()).zoneAbbr();\n tDataToShowParticipate[0].UTCTime = new Date(\n selectedIdo.timeline.registration_start * 1000\n ).toLocaleTimeString(\"en-US\", { hour: \"2-digit\", minute: \"2-digit\" });\n\n tDataToShowParticipate[1].date = new Date(\n selectedIdo.timeline.registration_end * 1000\n );\n tDataToShowParticipate[1].text1 = new Date(\n selectedIdo.timeline.registration_end * 1000\n ).toLocaleString(\"en-US\", { dateStyle: \"long\" });\n tDataToShowParticipate[1].text2 =\n new Date(\n selectedIdo.timeline.registration_end * 1000\n ).toLocaleTimeString(\"en-US\", {\n hour: \"2-digit\",\n minute: \"2-digit\",\n }) +\n \" \" +\n moment.tz(moment.tz.guess()).zoneAbbr();\n tDataToShowParticipate[1].UTCTime =\n (\n \"0\" +\n new Date(selectedIdo.timeline.registration_end * 1000).getUTCHours()\n ).slice(-2) +\n \":\" +\n (\n \"0\" +\n new Date(\n selectedIdo.timeline.registration_end * 1000\n ).getUTCMinutes()\n ).slice(-2);\n\n tDataToShowParticipate[2].date = new Date(\n selectedIdo.timeline.sale_start * 1000\n );\n tDataToShowParticipate[2].text1 = new Date(\n selectedIdo.timeline.sale_start * 1000\n ).toLocaleString(\"en-US\", { dateStyle: \"long\" });\n tDataToShowParticipate[2].text2 =\n new Date(selectedIdo.timeline.sale_start * 1000).toLocaleTimeString(\n \"en-US\",\n { hour: \"2-digit\", minute: \"2-digit\" }\n ) +\n \" \" +\n moment.tz(moment.tz.guess()).zoneAbbr();\n tDataToShowParticipate[2].UTCTime =\n (\n \"0\" + new Date(selectedIdo.timeline.sale_start * 1000).getUTCHours()\n ).slice(-2) +\n \":\" +\n (\n \"0\" +\n new Date(selectedIdo.timeline.sale_start * 1000).getUTCMinutes()\n ).slice(-2);\n\n tDataToShowParticipate[3].date = new Date(\n selectedIdo.timeline.sale_end * 1000\n );\n tDataToShowParticipate[3].text1 = new Date(\n selectedIdo.timeline.sale_end * 1000\n ).toLocaleString(\"en-US\", { dateStyle: \"long\" });\n tDataToShowParticipate[3].text2 =\n new Date(selectedIdo.timeline.sale_end * 1000).toLocaleTimeString(\n \"en-US\",\n { hour: \"2-digit\", minute: \"2-digit\" }\n ) +\n \" \" +\n moment.tz(moment.tz.guess()).zoneAbbr();\n tDataToShowParticipate[3].UTCTime =\n (\n \"0\" + new Date(selectedIdo.timeline.sale_end * 1000).getUTCHours()\n ).slice(-2) +\n \":\" +\n (\n \"0\" + new Date(selectedIdo.timeline.sale_end * 1000).getUTCMinutes()\n ).slice(-2);\n\n setDataToShowParticipate([...tDataToShowParticipate]);\n let tIdoInfo = { ...idoInfo };\n\n setIdo(selectedIdo);\n setTitle(selectedIdo.title);\n setText(selectedIdo.heading_text);\n\n let Salecontract;\n let contractSaleInfo = null;\n try {\n const Salecontract = new ethers.Contract(\n selectedIdo.contract_address,\n SALE_ABI,\n provider\n );\n\n contractSaleInfo = await Salecontract.sale();\n } catch (error) {\n console.log(\"IAMHERE LOL\", error);\n }\n\n tIdoInfo.token = {\n name: selectedIdo.token.name,\n symbol: selectedIdo.token.symbol,\n price: parseFloat(selectedIdo.token.token_price_in_usd),\n peakPrice: parseFloat(selectedIdo.token.token_price_in_avax),\n img: selectedIdo.logo_url,\n };\n console.log(\n \"My Local info\",\n selectedIdo.token.read_from_db\n ? parseFloat(selectedIdo.token.total_tokens_sold) *\n parseFloat(selectedIdo.token.token_price_in_usd)\n : Number(contractSaleInfo?.totalBUSDRaised) / 10 ** 18\n );\n tIdoInfo.saleInfo = {\n totalRaised: selectedIdo.token.read_from_db\n ? parseFloat(selectedIdo.token.total_tokens_sold) *\n parseFloat(selectedIdo.token.token_price_in_usd)\n : Number(contractSaleInfo?.totalBUSDRaised) / 10 ** 18,\n raised: selectedIdo.total_raised,\n partisipants: selectedIdo.number_of_participants,\n start_date: selectedIdo.timeline.sale_start,\n end_date: selectedIdo.timeline.sale_ends,\n token_price: parseFloat(selectedIdo.token.price_in_avax),\n info: {\n time_until_launch: selectedIdo.time_until_launch,\n token_sold: parseFloat(selectedIdo.token.total_tokens_sold),\n token_distribution: parseFloat(\n selectedIdo.token.token_distribution\n ),\n sale_progres:\n params.type && params.type === \"completed\"\n ? 100\n : isNaN(\n ((100 *\n (contractSaleInfo?.totalBUSDRaised /\n contractSaleInfo?.tokenPriceInBUST)) /\n parseFloat(selectedIdo.target_raised)) *\n selectedIdo.token.token_price_in_usd\n )\n ? (100 * selectedIdo.token.total_raise) /\n parseFloat(selectedIdo.target_raised)\n : ((100 *\n (contractSaleInfo?.totalBUSDRaised /\n contractSaleInfo?.tokenPriceInBUST)) /\n parseFloat(selectedIdo.target_raised)) *\n selectedIdo.token.token_price_in_usd,\n },\n };\n\n setIdoInfo({ ...tIdoInfo });\n\n setTotalBUSDRaised(contractSaleInfo?.totalBUSDRaised / 10 ** 18);\n\n setSaleContract(Salecontract);\n\n try {\n const t_tokenContract = new ethers.Contract(\n selectedIdo.token.token_address,\n TOKEN_ABI,\n provider\n );\n setTokenContract(t_tokenContract);\n } catch (error) {}\n\n setMedia(\n selectedIdo.socials.map((e) => {\n return {\n link: e.url,\n img: e.logo_url,\n imgMobile: e.logo_url,\n };\n })\n );\n });\n } else {\n getSingleIdoByName(projectName).then(async (response) => {\n const selectedIdo = response.data.ido;\n\n dispatch(setBG(response.data.ido.project_detail?.project_bg));\n\n let tDataToShowParticipate = [...dataToShowParticipate];\n\n tDataToShowParticipate[0].date = new Date(\n selectedIdo.timeline.registration_start * 1000\n );\n tDataToShowParticipate[0].text1 = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : new Date(\n selectedIdo.timeline.registration_start * 1000\n ).toLocaleString(\"en-US\", { dateStyle: \"long\" });\n tDataToShowParticipate[0].text2 = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : new Date(\n selectedIdo.timeline.registration_start * 1000\n ).toLocaleTimeString(\"en-US\", {\n hour: \"2-digit\",\n minute: \"2-digit\",\n }) +\n \" \" +\n moment.tz(moment.tz.guess()).zoneAbbr();\n tDataToShowParticipate[0].UTCTime = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : new Date(\n selectedIdo.timeline.registration_start * 1000\n ).toLocaleTimeString(\"en-US\", {\n hour: \"2-digit\",\n minute: \"2-digit\",\n });\n\n tDataToShowParticipate[1].date = new Date(\n selectedIdo.timeline.registration_end * 1000\n );\n tDataToShowParticipate[1].text1 = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : new Date(\n selectedIdo.timeline.registration_end * 1000\n ).toLocaleString(\"en-US\", { dateStyle: \"long\" });\n tDataToShowParticipate[1].text2 = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : new Date(\n selectedIdo.timeline.registration_end * 1000\n ).toLocaleTimeString(\"en-US\", {\n hour: \"2-digit\",\n minute: \"2-digit\",\n }) +\n \" \" +\n moment.tz(moment.tz.guess()).zoneAbbr();\n tDataToShowParticipate[1].UTCTime = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : (\n \"0\" +\n new Date(\n selectedIdo.timeline.registration_end * 1000\n ).getUTCHours()\n ).slice(-2) +\n \":\" +\n (\n \"0\" +\n new Date(\n selectedIdo.timeline.registration_end * 1000\n ).getUTCMinutes()\n ).slice(-2);\n\n tDataToShowParticipate[2].date = new Date(\n selectedIdo.timeline.sale_start * 1000\n );\n tDataToShowParticipate[2].text1 = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : new Date(selectedIdo.timeline.sale_start * 1000).toLocaleString(\n \"en-US\",\n { dateStyle: \"long\" }\n );\n tDataToShowParticipate[2].text2 = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : new Date(selectedIdo.timeline.sale_start * 1000).toLocaleTimeString(\n \"en-US\",\n { hour: \"2-digit\", minute: \"2-digit\" }\n ) +\n \" \" +\n moment.tz(moment.tz.guess()).zoneAbbr();\n tDataToShowParticipate[2].UTCTime = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : (\n \"0\" +\n new Date(selectedIdo.timeline.sale_start * 1000).getUTCHours()\n ).slice(-2) +\n \":\" +\n (\n \"0\" +\n new Date(selectedIdo.timeline.sale_start * 1000).getUTCMinutes()\n ).slice(-2);\n\n tDataToShowParticipate[3].date = new Date(\n selectedIdo.timeline.sale_end * 1000\n );\n tDataToShowParticipate[3].text1 = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : new Date(selectedIdo.timeline.sale_end * 1000).toLocaleString(\n \"en-US\",\n { dateStyle: \"long\" }\n );\n tDataToShowParticipate[3].text2 = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : new Date(selectedIdo.timeline.sale_end * 1000).toLocaleTimeString(\n \"en-US\",\n { hour: \"2-digit\", minute: \"2-digit\" }\n ) +\n \" \" +\n moment.tz(moment.tz.guess()).zoneAbbr();\n tDataToShowParticipate[3].UTCTime = selectedIdo.timeline.show_text\n ? selectedIdo.timeline.sale_timeline_text\n : (\n \"0\" + new Date(selectedIdo.timeline.sale_end * 1000).getUTCHours()\n ).slice(-2) +\n \":\" +\n (\n \"0\" +\n new Date(selectedIdo.timeline.sale_end * 1000).getUTCMinutes()\n ).slice(-2);\n\n setDataToShowParticipate([...tDataToShowParticipate]);\n let tIdoInfo = { ...idoInfo };\n\n setIdo(selectedIdo);\n setTitle(selectedIdo.title);\n setText(selectedIdo.heading_text);\n\n let Salecontract;\n let contractSaleInfo = null;\n try {\n const Salecontract = new ethers.Contract(\n selectedIdo.contract_address,\n SALE_ABI,\n provider\n );\n console.log(\"contractSaleInfo\", contractSaleInfo);\n contractSaleInfo = await Salecontract.sale();\n } catch (error) {\n console.log(\"WTF\", error);\n }\n\n tIdoInfo.token = {\n name: selectedIdo.token.name,\n symbol: selectedIdo.token.symbol,\n price: parseFloat(selectedIdo.token.token_price_in_usd),\n peakPrice: parseFloat(selectedIdo.token.token_price_in_avax),\n img: selectedIdo.logo_url,\n };\n console.log(\n \"My Local info 1\",\n selectedIdo.token.read_from_db\n ? parseFloat(selectedIdo.token.total_tokens_sold) *\n parseFloat(selectedIdo.token.token_price_in_usd)\n : Number(contractSaleInfo?.totalBUSDRaised) / 10 ** 18\n );\n tIdoInfo.saleInfo = {\n totalRaised: selectedIdo.token.read_from_db\n ? parseFloat(selectedIdo.token.total_tokens_sold) *\n parseFloat(selectedIdo.token.token_price_in_usd)\n : Number(contractSaleInfo?.totalBUSDRaised ?? 0) / 10 ** 18,\n raised: selectedIdo.total_raised,\n partisipants: selectedIdo.number_of_participants,\n start_date: selectedIdo.timeline.sale_start,\n end_date: selectedIdo.timeline.sale_ends,\n token_price: parseFloat(selectedIdo.token.price_in_avax),\n info: {\n time_until_launch: selectedIdo.time_until_launch,\n token_sold: parseFloat(selectedIdo.token.total_tokens_sold),\n token_distribution: parseFloat(\n selectedIdo.token.token_distribution\n ),\n sale_progres: Math.floor(\n ((contractSaleInfo?.totalBUSDRaised * 1) /\n Math.pow(10, 18) /\n (selectedIdo.token.token_distribution *\n selectedIdo.token.current_token_price)) *\n 100\n ),\n },\n };\n\n setIdoInfo({ ...tIdoInfo });\n\n setTotalBUSDRaised(contractSaleInfo?.totalBUSDRaised / 10 ** 18);\n\n setSaleContract(Salecontract);\n\n try {\n const t_tokenContract = new ethers.Contract(\n selectedIdo.token.token_address,\n TOKEN_ABI,\n provider\n );\n setTokenContract(t_tokenContract);\n } catch (error) {}\n\n setMedia(\n selectedIdo.socials.map((e) => {\n return {\n link: e.url,\n img: e.logo_url,\n imgMobile: e.logo_url,\n };\n })\n );\n });\n }\n\n const { ethereum } = window;\n if (ethereum) {\n let lidoInfo = {\n token: {\n name: \"\",\n symbol: \"\",\n price: \"\",\n peakPrice: 0,\n img: TestImg,\n },\n saleInfo: {\n totalRaised: 0,\n raised: 0,\n partisipants: 0,\n start_date: 0,\n end_date: 0,\n token_price: 0,\n info: {\n time_until_launch: null,\n token_sold: 0,\n token_distribution: 0,\n sale_progres: 0,\n },\n user: {},\n },\n };\n }\n }, [projectName, params.type, chainId]);\n\n if (ido === undefined) return <>;\n\n return (\n
\n
\n \n\n \n
\n\n
\n {dataToShowParticipate.map((data) => {\n return participateBlock(data);\n })}\n
\n\n
\n \n
\n\n
\n \n
\n
\n );\n};\n\nexport default IdoDetail;\n\nfunction participateBlock(props) {\n return (\n
\n
\n {props.date.getTime() > Date.now() && props.isNewDate && (\n
New date!
\n )}\n Date.now() ? props.img : CheckedImg}\n />\n
\n
{props.title}
\n
{props.text1}
\n
{props.text2}
\n {/*
({props.UTCTime} UTC)
*/}\n
\n );\n}\n","export default __webpack_public_path__ + \"static/media/StakeIcon.07f1db5e.svg\";","export default __webpack_public_path__ + \"static/media/InfoIcon.934454cf.svg\";","export default __webpack_public_path__ + \"static/media/waves.24138576.svg\";","import { useState } from \"react\";\n\nimport Dialog from \"@mui/material/Dialog\";\nimport DialogTitle from \"@mui/material/DialogTitle\";\nimport DialogContent from \"@mui/material/DialogContent\";\nimport IconButton from \"@mui/material/IconButton\";\nimport Waves from \"./images/waves.svg\";\nimport CloseIcon from \"@mui/icons-material/Close\";\n\nimport classes from \"./ConfirmationDialog.module.scss\";\nimport { Checkbox } from \"@mui/material\";\nimport useMainTour from \"../../../../../../hooks/useMainTour/useMainTour\";\n\nconst ConfirmationDialog = ({ open, setOpen, callback, amount }) => {\n const { unblockPropagation } = useMainTour();\n const [agree, setAgree] = useState(false);\n\n return (\n <>\n setOpen(false)} open={open}>\n \n setOpen(false)}>\n \n \n \n \n

Stake PEAK

\n

\n Stake PEAK now, but please keep on mind that your penalty time will\n be reset after staking more PEAK tokens.\n

\n

\n Please check this box in order to agree to proceed.{\" \"}\n \n setAgree(e.target.checked)}\n />\n \n

\n\n

Stake Amount

\n

{parseFloat(amount).toFixed(2)} PEAK

\n\n {\n unblockPropagation();\n callback();\n }}\n >\n Stake PEAK\n \n
\n \n
\n \n );\n};\n\nexport default ConfirmationDialog;\n","import { ethers } from \"ethers\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { useReferrer } from \"hooks/useReferrer/useReferrer\";\nimport { useSelectStakingVersion } from \"hooks/useSelectStakingVersion/useSelectStakingVersion\";\nimport useStakingContract from \"hooks/useStakingContract/useStakingContract\";\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\nimport { useEffect } from \"react\";\nimport { useState } from \"react\";\n\nexport const useStaking = () => {\n const { stakingContract } = useStakingContract();\n const { tokenContract } = useTokenContract();\n\n const { stakingVersion } = useSelectStakingVersion();\n const { referrer } = useReferrer();\n\n const { accounts } = useMergedProvidersState();\n\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const [allowance, setAllowance] = useState(0);\n\n useEffect(() => {\n if (stakingContract?.address && tokenContract && account) {\n tokenContract\n .allowance(account, stakingContract?.address)\n .then((response) => {\n setAllowance(parseInt(response.toString()));\n });\n }\n }, [stakingContract, tokenContract, account]);\n\n const deposit = async (amount) => {\n if (stakingVersion === 1) {\n return await stakingContract.deposit(amount);\n } else {\n return await stakingContract.deposit(amount, referrer);\n }\n };\n\n const fund = async (amount) => {\n if (stakingVersion === 1) {\n return await stakingContract.fund(amount);\n } else if(stakingVersion===2){\n return await stakingContract.fund(amount);\n }\n };\n\n const approve = async () => {\n const approvalTransaction = await tokenContract.approve(\n stakingContract.address,\n ethers.constants.MaxUint256\n );\n\n approvalTransaction.wait().then((transaction) => {\n setAllowance(ethers.constants.MaxUint256);\n });\n\n return approvalTransaction;\n };\n\n const withdraw = async (amount) => {\n debugger;\n return await stakingContract.withdraw(amount);\n };\n\n const harvest = async () => {\n return await stakingContract.withdraw(0);\n };\n\n const claimReferralReward = async () => {\n if (stakingVersion === 1) {\n throw new Error(\"Referral system is not available for staking V1\");\n }\n\n return await stakingContract.claimReferralRewards();\n };\n\n const depositReferralRewardToStakingBalance = async () => {\n if (stakingVersion === 1) {\n throw new Error(\"Referral system is not available for staking V1\");\n }\n\n return await stakingContract.referralRewardsToStake();\n };\n\n return {\n stakingContract,\n allowance,\n deposit,\n approve,\n withdraw,\n harvest,\n fund,\n claimReferralReward,\n depositReferralRewardToStakingBalance,\n };\n};\n","import { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport { useCookies } from \"react-cookie\";\n\nexport const useReferrer = () => {\n const [cookies, setCookie] = useCookies([\"referrer_wallet_address\"]);\n const { accounts } = useMergedProvidersState();\n\n const myaccount = accounts[0] ?? \"\";\n\n return {\n referrer:\n cookies.referrer_wallet_address === myaccount\n ? \"0x0000000000000000000000000000000000000000\"\n : cookies.referrer_wallet_address ??\n \"0x0000000000000000000000000000000000000000\",\n isReferrerSet: !!cookies.referrer_wallet_address,\n };\n};\n","import React, { useState, useEffect } from \"react\";\nimport classes from \"./StakeCard.module.scss\";\nimport StakeIcon from \"./images/StakeIcon.svg\";\nimport { abi, stakingContractAddress } from \"./../../services/consts\";\nimport { abi as tokenAbi, tokenContractAddress } from \"./services/consts\";\nimport { BigNumber, ethers, providers } from \"ethers\";\nimport Slider from \"@mui/material/Slider\";\nimport {\n setBalance,\n setDecimal,\n selectAddress,\n} from \"./../../../../features/userWalletSlice\";\nimport WalletConnectProvider from \"@walletconnect/ethereum-provider\";\nimport { RpcProvider } from \"../../../../consts/rpc\";\nimport { useCookies } from \"react-cookie\";\n\nimport { styled } from \"@mui/material/styles\";\nimport { toast } from \"react-toastify\";\nimport { rpcWalletConnectProvider } from \"../../../../consts/walletConnect\";\nimport { CheckBoxOutlineBlankOutlined } from \"@mui/icons-material\";\nimport { Tooltip } from \"@mui/material\";\nimport InfoIcon from \"../StakingStats/images/InfoIcon.svg\";\nimport { useNavigate } from \"react-router-dom\";\nimport { setStaking } from \"../../../../features/thankYouSlice\";\nimport { addReferrer } from \"../../API/staking\";\nimport { useSearchParams } from \"react-router-dom\";\n\nimport ConfirmationDialog from \"./components/ConfirmationDialog/ConfirmationDialog\";\nimport useMainTour from \"../../../../hooks/useMainTour/useMainTour\";\nimport useStakingContract from \"../../../../hooks/useStakingContract/useStakingContract\";\nimport useTokenContract from \"../../../../hooks/useTokenContract/useTokenContract\";\nimport { metaMask } from \"scenes/Header/ProviderDialog/Metamask\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useStaking } from \"hooks/useStaking/useStaking\";\nimport { useSelectStakingVersion } from \"hooks/useSelectStakingVersion/useSelectStakingVersion\";\nimport {\n useFetchDecimals,\n useFetchMyStakingStats,\n useFetchWalletBalance,\n} from \"scenes/AllocationStaking/API/hooks\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { useDispatch } from \"react-redux\";\n\nconst iOSBoxShadow =\n \"0 3px 1px rgba(0,0,0,0.1),0 4px 8px rgba(0,0,0,0.13),0 0 0 1px rgba(0,0,0,0.02)\";\n\nconst IOSSlider = styled(Slider)(({ theme }) => ({\n color: theme.palette.mode === \"dark\" ? \"#0AA7F5\" : \"#0AA7F5\",\n height: 6,\n padding: \"15px 0\",\n\n \"& .MuiSlider-thumb\": {\n backgroundColor: \"#0AA7F5\",\n border: \"3px solid white\",\n boxShadow: iOSBoxShadow,\n \"&:focus, &:hover, &.Mui-active\": {\n boxShadow:\n \"0 3px 1px rgba(0,0,0,0.1),0 4px 8px rgba(0,0,0,0.3),0 0 0 1px rgba(0,0,0,0.02)\",\n // Reset on touch devices, it doesn't add specificity\n \"@media (hover: none)\": {\n boxShadow: iOSBoxShadow,\n },\n },\n },\n\n \"& .MuiSlider-valueLabel\": {\n fontSize: 12,\n fontWeight: \"600\",\n top: 41,\n backgroundColor: \"unset\",\n color: theme.palette.text.primary,\n \"&:before\": {\n display: \"none\",\n },\n \"& *\": {\n background: \"transparent\",\n color: theme.palette.mode === \"dark\" ? \"#fff\" : \"#000\",\n },\n },\n \"& .MuiSlider-track\": {\n border: \"none\",\n height: 6,\n },\n \"& .MuiSlider-rail\": {\n opacity: 0.5,\n backgroundColor: \"#bfbfbf\",\n },\n \"& .MuiSlider-mark\": {\n backgroundColor: \"#bfbfbf\",\n height: 10,\n width: 0,\n \"&.MuiSlider-markActive\": {\n opacity: 0.8,\n backgroundColor: \"currentColor\",\n },\n },\n}));\n\nfunction numberWithCommas(x) {\n return x.toFixed(2).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\nconst StakeCard = ({ price, update }) => {\n const {\n blockPropagation,\n unblockPropagation,\n isNextStepBlocked,\n currentStep,\n nextStepHandler,\n isTourOpen,\n goToStep,\n } = useMainTour();\n const provider = useProviderHook();\n const { stakingContract } = useStakingContract();\n const { tokenContract } = useTokenContract();\n const dispatch = useDispatch();\n\n const { deposit, approve, allowance } = useStaking();\n const { stakingVersion } = useSelectStakingVersion();\n\n const [amount, setAmount] = useState(0);\n\n const [cookies, setCookie] = useCookies([\"referrer_wallet_address\"]);\n const [showConfirmationWindow, setShowConfirmationWindow] = useState(false);\n\n const navigate = useNavigate();\n\n const [stringularAmount, setStringularAmount] = useState(\"\");\n\n const { accounts } = useMergedProvidersState();\n\n const account = accounts[0];\n\n const walletAddress = account ?? \"\";\n\n const { data: decimals } = useFetchDecimals();\n const { data: balance, refetch: refetchWalletAddress } =\n useFetchWalletBalance(account);\n\n const [{ data: userInfo, refetch: refetchUserInfo }] =\n useFetchMyStakingStats();\n\n const StakingBalance = userInfo?.amount ?? 0;\n\n const updateBalance = async () => {\n refetchWalletAddress();\n };\n\n const stakeFunction = async () => {\n setShowConfirmationWindow(false);\n // if (balance/(10 ** decimals) - amount < 0) {\n if (false) {\n toast.error(\"The amount entered is greater than the balance\");\n } else {\n if (amount * 10 ** decimals <= allowance) {\n let bigAmount = 0;\n if (amount * 10 ** decimals >= balance) {\n bigAmount = BigNumber.from(\n Math.floor(parseFloat(amount.toString().slice(0, -1)))\n ).mul(BigNumber.from(10).pow(decimals));\n } else {\n bigAmount = BigNumber.from(Math.round(amount * 100)).mul(\n BigNumber.from(10).pow(decimals - 2)\n );\n }\n nextStepHandler();\n const res = await deposit(bigAmount);\n\n const a = res\n .wait()\n .then(() => {\n const promise = new Promise(async (resolve, reject) => {\n //DO NOT REMOVE THIS OR THANK YOU PAGE WILL NOT WORK!!!\n dispatch(setStaking(amount));\n\n refetchUserInfo();\n\n setAmount(0);\n setStringularAmount(\"0\");\n try {\n await update();\n } catch (error) {}\n try {\n await updateBalance();\n } catch (error) {}\n if (!isTourOpen) {\n navigate(\"/thank-you-stake\");\n }\n resolve(1);\n });\n\n if (\n !!cookies.referrer_wallet_address &&\n cookies.referrer_wallet_address !== \"\" &&\n stakingVersion === 1\n ) {\n addReferrer(walletAddress, cookies.referrer_wallet_address);\n }\n\n promise.then(() => {\n goToStep(10);\n });\n\n toast.promise(promise, {\n pending: \"Updating information, please wait...\",\n success: {\n render() {\n return \"Data updated\";\n },\n autoClose: 1,\n },\n });\n })\n .catch(() => {\n goToStep(9);\n });\n\n toast.promise(a, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n });\n } else {\n const approvalRequest = await approve();\n nextStepHandler();\n const approvalTransaction = approvalRequest\n .wait()\n .then((transaction) => {\n nextStepHandler();\n });\n\n toast.promise(approvalTransaction, {\n pending: \"Approval transaction pending\",\n success: \"Approval transaction successful\",\n error: \"Transaction failed\",\n });\n }\n }\n };\n\n useEffect(() => {\n if (currentStep === 3 && amount > 0) {\n unblockPropagation();\n }\n\n if (amount > 0) {\n unblockPropagation();\n }\n\n if (amount === 0 || !amount) {\n blockPropagation();\n }\n }, [amount, currentStep]);\n\n return (\n <>\n
\n
\n
\n \n
\n Stake PEAK\n \n
\n You need to stake at least 1000 PEAK to be able to start\n the KYC process\n
\n
\n }\n >\n \n \n
\n
\n
\n
\n
\n Wallet Balance:{\" \"}\n \n {numberWithCommas(Math.abs(balance) / Math.pow(10, decimals))}\n {\" \"}\n (~$\n {numberWithCommas((balance / Math.pow(10, decimals)) * price)})\n
\n {\n setAmount(balance / Math.pow(10, decimals));\n setStringularAmount(\n (balance / Math.pow(10, decimals))\n .toFixed(2)\n .replace(\",\", \".\")\n );\n }}\n >\n MAX\n \n
\n
\n {\n if (/^([0-9]+[\\.]?[0-9]*)$/.test(e.target.value)) {\n setAmount(parseFloat(e.target.value));\n setStringularAmount(e.target.value);\n } else if (e.target.value === \"\") {\n setStringularAmount(\"\");\n setAmount(0);\n }\n }}\n />\n \n
\n {\n if (value === 100) {\n setAmount(parseFloat(balance / Math.pow(10, decimals)));\n setStringularAmount(\n parseFloat(balance / Math.pow(10, decimals))\n .toFixed(2)\n .replace(\",\", \"\")\n );\n } else {\n setAmount(\n parseFloat(\n (\n (balance / Math.pow(10, decimals) / 100) *\n value\n ).toFixed(2)\n )\n );\n setStringularAmount(\n ((balance / Math.pow(10, decimals) / 100) * value)\n .toFixed(2)\n .replace(\",\", \".\")\n );\n }\n }}\n marks={[{ value: 0 }, { value: 100 }]}\n valueLabelFormat={(value) => (isNaN(value) ? \"\" : value + \"%\")}\n />\n
\n\n
\n \n {\n if (amount * 10 ** decimals <= allowance) {\n if (StakingBalance == 0) {\n nextStepHandler();\n stakeFunction();\n } else {\n setShowConfirmationWindow(true);\n nextStepHandler();\n }\n } else {\n stakeFunction();\n }\n }}\n >\n {amount * 10 ** decimals <= allowance\n ? \"Stake PEAK\"\n : \"Approve\"}\n \n \n
\n
\n \n
\n \n
\n \n );\n};\n\nexport default StakeCard;\n","import axios from 'axios'\n\nexport const getPrice = () => {\n return axios.get(process.env.REACT_APP_API_URL + 'peak_defi_price');\n}\n\nexport const getStakeStatistic = () => {\n return axios.get(process.env.REACT_APP_API_URL + 'statistic');\n}\n\n//TO DO: replace hardcoded endpoint\nexport const addReferrer = (refereeAddress, referrerAddress) => {\n return axios.post(process.env.REACT_APP_API_URL + 'make-referral',\n {\n referrer_wallet: referrerAddress,\n referral_wallet: refereeAddress\n }\n )\n}\n\nexport const getLeaderboardData = () =>{\n return axios.get(process.env.REACT_APP_API_URL+'leaderboard');\n}\n\nexport const getReferrer = (wallet) =>{\n return axios.get(process.env.REACT_APP_API_URL+'find-my-referrer/'+wallet);\n}","import { useSelector } from \"react-redux\";\nimport InfoIcon from \"../../images/InfoIcon.svg\";\nimport Tooltip from \"@mui/material/Tooltip\";\n\nimport classes from \"./StatsCard.module.scss\";\nimport { useFetchDecimals } from \"scenes/AllocationStaking/API/hooks\";\n\nfunction numberWithCommas(x) {\n if (isNaN(x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\"))) return 0.0;\n return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\nfunction valueFormatter(x) {\n var width = window.innerWidth;\n if (width < 1500 && x > 10 ** 11) {\n x /= 10 ** 6;\n return x.toFixed(2) + \"M\";\n }\n if (isNaN(x.toFixed(2))) return 0.0;\n return x.toFixed(2);\n}\n\nconst StatsCard = ({ info }) => {\n const { data: decimals } = useFetchDecimals();\n\n return (\n
\n
\n
{info.title}
\n \n \n \n
\n\n
\n {\n // info.value &&\n
\n
\n {info.append === \"PEAK\"\n ? valueFormatter(info.value / Math.pow(10, decimals))\n : info.value}{\" \"}\n {info.append}\n
\n\n {info.subvalue && (\n
\n {\"~\" +\n info.subvalue.append +\n numberWithCommas(\n info.append === \"PEAK\"\n ? (info.subvalue.value / Math.pow(10, decimals)).toFixed(\n 2\n )\n : info.subvalue.value\n )}\n
\n )}\n
\n }\n\n {info.action && (\n
\n {info.action.buttonText && (\n \n {info.action.buttonText}{\" \"}\n \n )}\n
\n )}\n
\n
\n );\n};\n\nexport default StatsCard;\n","export default __webpack_public_path__ + \"static/media/StakingStats.bc0ee5af.svg\";","import StatsCard from './components/StatsCard/StatsCard';\nimport StakingStatsIcon from './images/StakingStats.svg'\n\nimport classes from './StakingStats.module.scss'\n\nconst StakingStats = ({content}) => {\n return (\n
\n
\n \n
\n Staking Stats\n
\n
\n\n
\n {\n content.map((card, index)=>)\n }\n
\n
\n );\n}\n\nexport default StakingStats;","import { Tooltip } from \"@mui/material\";\nimport { useSelector } from \"react-redux\";\nimport { useFetchDecimals } from \"scenes/AllocationStaking/API/hooks\";\nimport InfoIcon from \"../../../StakingStats/images/InfoIcon.svg\";\n\nimport classes from \"./TotalPanel.module.scss\";\nimport { useEffect } from \"react\";\n\nfunction numberWithCommas(x) {\n return x.toFixed(2).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\nconst TotalPanel = ({ info }) => {\n const { data: decimals } = useFetchDecimals();\n\n return (\n
\n
\n
{info.title}
\n \n \n \n
\n
\n
\n {numberWithCommas(info.value.value / Math.pow(10, decimals))}{\" \"}\n {info.value.append}{\" \"}\n {info.value.subappend}\n
\n
\n {\" \"}\n ~{info.subvalue.prepend}\n {numberWithCommas(\n parseFloat(info.subvalue.value / Math.pow(10, decimals).toFixed(2))\n )}\n
\n
\n
\n );\n};\n\nexport default TotalPanel;\n","export default __webpack_public_path__ + \"static/media/Total.8e09f987.svg\";","import TotalPanel from './components/TotalPanel/TotalPanel';\nimport classes from './TotalSection.module.scss'\nimport TotalIcon from './images/Total.svg'\n\nconst TotalsSection = ({ content }) => {\n return (<>\n\n\n
\n
\n \n
\n Total\n
\n
\n
\n {content.map((info, index) => )}\n
\n
\n );\n}\n\nexport default TotalsSection;","export default __webpack_public_path__ + \"static/media/tvl.411c38d6.svg\";","export default __webpack_public_path__ + \"static/media/price.0feb883a.svg\";","import classes from \"./ValuePriceCard.module.scss\";\nimport tvl from \"./images/tvl.svg\";\nimport priceIco from \"./images/price.svg\";\n\nfunction numFormatter(num) {\n if (!num) {\n return 0;\n }\n if (num > 999 && num < 1000000) {\n return (num / 1000).toFixed(1) + \"K\"; // convert to K for number from > 1000 < 1 million\n } else if (num > 1000000 && num < 10 ** 9) {\n return (num / 1000000).toFixed(1) + \"M\"; // convert to M for number from > 1 million\n } else if (num > 10 ** 9) {\n return (num / 10 ** 9).toFixed(2) + \"B\";\n } else if (num < 900) {\n return num.toFixed(2); // if value < 1000, nothing to do\n }\n}\n\nconst ValuePriceCard = ({ totalValueLocked, price }) => {\n return (\n
\n
\n
\n \n
\n
\n
Total Value Locked
\n
\n {\"$\" + numFormatter(totalValueLocked)}\n
\n
\n
\n\n
\n\n
\n
\n \n
\n
\n
PEAK Price
\n
\n {\"$\" + price?.toFixed(4)}\n
\n
\n
\n
\n );\n};\n\nexport default ValuePriceCard;\n","export default __webpack_public_path__ + \"static/media/WithdrawIcon.98683bcd.svg\";","export default __webpack_public_path__ + \"static/media/Check.1b056db6.svg\";","export default __webpack_public_path__ + \"static/media/waves.24138576.svg\";","import { useState } from 'react';\n\nimport Dialog from '@mui/material/Dialog';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport DialogContent from '@mui/material/DialogContent';\nimport IconButton from '@mui/material/IconButton';\nimport Waves from './images/waves.svg'\nimport CloseIcon from '@mui/icons-material/Close';\n\nimport classes from './ConfirmationDialog.module.scss'\nimport { Checkbox } from '@mui/material';\n\nconst ConfirmationDialog = ({ open, setOpen, callback, amount, title, text}) => {\n\n const [agree, setAgree] = useState(false)\n return (<>\n setOpen(false)}\n open={open}\n maxWidth=\"lg\"\n >\n \n setOpen(false)}>\n \n \n \n \n
\n

{ title }

\n

{ text }

\n
\n

Please check this box in order to agree to proceed. setAgree(e.target.checked)}/>

\n \n

Claim Amount

\n

{parseFloat(amount).toFixed(2)} PEAK

\n\n \n\n
\n \n\n \n );\n}\n\nexport default ConfirmationDialog;","import { useState, useRef, useEffect, useCallback } from \"react\";\nimport WithdrawIcon from \"./images/WithdrawIcon.svg\";\nimport classes from \"./WithdrawCard.module.scss\";\nimport { abi, stakingContractAddress } from \"./../../services/consts\";\nimport { ethers, BigNumber, providers } from \"ethers\";\nimport Slider from \"@mui/material/Slider\";\nimport { styled } from \"@mui/material/styles\";\nimport { useSelector, useDispatch } from \"react-redux\";\nimport { toast } from \"react-toastify\";\nimport {\n tokenContractAddress,\n abi as tokenAbi,\n} from \"./../StakeCard/services/consts\";\nimport {\n setBalance,\n setDecimal,\n selectAddress,\n} from \"./../../../../features/userWalletSlice\";\nimport { RpcProvider } from \"../../../../consts/rpc\";\nimport WalletConnectProvider from \"@walletconnect/ethereum-provider\";\nimport { rpcWalletConnectProvider } from \"../../../../consts/walletConnect\";\n//import InfoIcon from '@mui/icons-material/Info';\nimport { LinearProgress, Tooltip } from \"@mui/material\";\n\nimport InfoIcon from \"./../StakingStats/images/InfoIcon.svg\";\nimport Check from \"./images/Check.svg\";\nimport ConfirmationDialog from \"../ReferralsCard/components/ConfirmationDialog/ConfirmationDialog\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport debounce from \"lodash.debounce\";\nimport { hooks, metaMask } from \"../../../Header/ProviderDialog/Metamask\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { useStaking } from \"hooks/useStaking/useStaking\";\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\nimport {\n useFetchDecimals,\n useFetchMyStakingStats,\n useFetchWalletBalance,\n} from \"scenes/AllocationStaking/API/hooks\";\nimport { useSelectStakingVersion } from \"hooks/useSelectStakingVersion/useSelectStakingVersion\";\n\nconst iOSBoxShadow =\n \"0 3px 1px rgba(0,0,0,0.1),0 4px 8px rgba(0,0,0,0.13),0 0 0 1px rgba(0,0,0,0.02)\";\n\nconst IOSSlider = styled(Slider)(({ theme }) => ({\n color: theme.palette.mode === \"dark\" ? \"#0AA7F5\" : \"#0AA7F5\",\n height: 6,\n padding: \"15px 0\",\n\n \"& .MuiSlider-thumb\": {\n backgroundColor: \"#0AA7F5\",\n border: \"3px solid white\",\n boxShadow: iOSBoxShadow,\n \"&:focus, &:hover, &.Mui-active\": {\n boxShadow:\n \"0 3px 1px rgba(0,0,0,0.1),0 4px 8px rgba(0,0,0,0.3),0 0 0 1px rgba(0,0,0,0.02)\",\n // Reset on touch devices, it doesn't add specificity\n \"@media (hover: none)\": {\n boxShadow: iOSBoxShadow,\n },\n },\n },\n\n \"& .MuiSlider-valueLabel\": {\n fontSize: 12,\n fontWeight: \"600\",\n top: 41,\n backgroundColor: \"unset\",\n color: theme.palette.text.primary,\n \"&:before\": {\n display: \"none\",\n },\n \"& *\": {\n background: \"transparent\",\n color: theme.palette.mode === \"dark\" ? \"#fff\" : \"#000\",\n },\n },\n \"& .MuiSlider-track\": {\n border: \"none\",\n height: 6,\n },\n \"& .MuiSlider-rail\": {\n opacity: 0.5,\n backgroundColor: \"#bfbfbf\",\n },\n \"& .MuiSlider-mark\": {\n backgroundColor: \"#bfbfbf\",\n height: 10,\n width: 0,\n \"&.MuiSlider-markActive\": {\n opacity: 0.8,\n backgroundColor: \"currentColor\",\n },\n },\n}));\n\nfunction numberWithCommas(x) {\n return x.toFixed(2).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\nconst WithdrawCard = ({ updateInfo, price, update }) => {\n const provider = useProviderHook();\n const [amount, setAmount] = useState(0);\n const [fee, setFee] = useState(0);\n const [isFeeLoading, setIsFeeLoading] = useState(false);\n\n const { stakingContract, withdraw, harvest } = useStaking();\n const { tokenContract } = useTokenContract();\n\n const [earned, setEarned] = useState(0);\n\n const [currentWeek, setCurrentWeek] = useState(0);\n const comissions = [\"30%\", \"30%\", \"20%\", \"20%\", \"10%\", \"10%\", \"5%\", \"5%\"];\n\n const [showConfirmationWindow, setShowConfirmationWindow] = useState(false);\n const { accounts } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n const walletAddress = account;\n\n const [\n { data: userInfo, refetch: refetchUserInfo },\n { data: stakingPercent, refetch: refetchStakingPercent },\n { data: pending, refetch: refetchPending },\n ] = useFetchMyStakingStats();\n const { data: decimals } = useFetchDecimals();\n const { data: walletBalance, refetch: refreshWalletBalance } =\n useFetchWalletBalance(account);\n\n const balance = userInfo?.amount ?? 0;\n const { stakingVersion } = useSelectStakingVersion();\n\n useEffect(() => {\n if (userInfo) {\n if (userInfo.stakingStart._hex === \"0x00\") {\n setCurrentWeek(0);\n } else {\n setCurrentWeek(\n parseInt(\n (Date.now() - userInfo.stakingStart * 1000) / (24 * 3600 * 1000 * 7)\n )\n );\n }\n }\n }, [userInfo]);\n\n useEffect(() => {\n if (pending) {\n setEarned((pending / 10 ** decimals).toFixed(2));\n }\n }, [pending]);\n\n useEffect(() => {\n setIsFeeLoading(true);\n debouncedFeeHandler(amount, walletAddress, decimals);\n }, [amount]);\n\n const feeListener = (amount, walletAddress, decimals, isRetry = false) => {\n if (amount !== 0 && !isNaN(amount)) {\n stakingContract\n ?.getWithdrawFee(\n walletAddress,\n BigNumber.from(Math.round(amount * 100)).mul(\n BigNumber.from(10).pow(decimals - 2)\n )\n )\n .then((response) => {\n setFee(parseFloat(response.toString()));\n setIsFeeLoading(false);\n })\n .catch((e) => {\n if (!isRetry) {\n feeListener(amount, walletAddress, decimals, true);\n }\n });\n }\n };\n\n const debouncedFeeHandler = useCallback(debounce(feeListener, 300), [\n stakingContract,\n ]);\n\n const updateBalance = async () => {\n refreshWalletBalance();\n };\n\n const withdrawFunction = async () => {\n setShowConfirmationWindow(false);\n\n let bigAmount = BigNumber.from(Math.round(amount * 100)).mul(\n BigNumber.from(10).pow(decimals - 2)\n );\n\n const res = await withdraw(bigAmount);\n const transaction = res.wait().then(async () => {\n const promise = new Promise(async (resolve, reject) => {\n setAmount(0);\n setEarned(0);\n setStringularAmount(\"0\");\n setCurrentWeek(0);\n await update();\n await updateBalance();\n resolve(1);\n });\n\n toast.promise(promise, {\n pending: \"Updating information, please wait...\",\n success: {\n render() {\n return \"Data updated\";\n },\n autoClose: 1,\n },\n });\n });\n\n toast.promise(transaction, {\n pending: \"Transaction pending\",\n success: \"Withdraw request completed\",\n error: \"Transaction failed\",\n });\n };\n\n const harverstFucntion = async () => {\n setShowConfirmationWindow(false);\n\n const request = await harvest();\n const transaction = request.wait().then(() => {\n setCurrentWeek(0);\n setEarned(0);\n updateInfo();\n updateBalance();\n });\n toast.promise(transaction, {\n pending: \"Transaction pending\",\n success: \"Claim request completed\",\n error: \"Transaction failed\",\n });\n };\n\n const withdrawAllFunction = async () => {\n setShowConfirmationWindow(false);\n\n let bigAmount = BigNumber.from(\n Math.round((balance / Math.pow(10, decimals)) * 100)\n ).mul(BigNumber.from(10).pow(decimals - 2));\n\n const res = await withdraw(BigNumber.from(bigAmount));\n const transaction = res.wait().then(async () => {\n setCurrentWeek(0);\n setEarned(0);\n // const harvestRes = await contract.withdraw(0);\n\n //after request has been completed we wait for the transaction\n //inside we wait till the transaction is completed\n //so we could send a request to update data and show responding toasts\n // const harvestTransaction = harvestRes.wait().then(() => {\n const promise = new Promise(async (resolve, reject) => {\n setAmount(0);\n setStringularAmount(\"0\");\n await update();\n await updateBalance();\n resolve(1);\n });\n\n toast.promise(promise, {\n pending: \"Updating information, please wait...\",\n success: {\n render() {\n return \"Data updated\";\n },\n autoClose: 1,\n },\n });\n });\n\n // toast.promise(\n // harvestTransaction,\n // {\n // pending: 'Claiming your rewards, please wait',\n // success: 'Rewards successfully claimed',\n // error: 'Transaction failed'\n // }\n // )\n\n toast.promise(transaction, {\n pending: \"Withdrawing your funds, please wait\",\n success: \"Withdraw request completed\",\n error: \"Transaction failed\",\n });\n };\n\n const [stringularAmount, setStringularAmount] = useState(\"\");\n const [dialogTitle, setDialogTitle] = useState(\"\");\n const [dialogText, setDialogText] = useState(\"\");\n\n return (\n
\n
\n
\n \n
\n Unstake PEAK\n \n
\n Penalty fees:\n
\n
2 weeks - 30%
\n
4 weeks - 20%
\n
6 weeks - 10%
\n
8 weeks -5%
\n
else - 0%
\n
\n }\n >\n \n \n
\n
\n\n
\n
\n
\n {\" \"}\n Current Staking Balance:{\" \"}\n \n {numberWithCommas(\n (userInfo?.amount ?? 0) / Math.pow(10, decimals)\n )}\n {\" \"}\n (~$\n {numberWithCommas((balance / Math.pow(10, decimals)) * price)})\n
\n {\n setAmount(balance / Math.pow(10, decimals));\n setStringularAmount(\n (balance / Math.pow(10, decimals))\n .toFixed(2)\n .replace(\",\", \".\")\n );\n }}\n >\n MAX\n \n
\n
\n {\n if (/^([0-9]+[\\.]?[0-9]*)$/.test(e.target.value)) {\n if (\n parseFloat(e.target.value) >= 0 &&\n parseFloat(e.target.value) <=\n balance / Math.pow(10, decimals)\n ) {\n setAmount(parseFloat(e.target.value));\n setStringularAmount(e.target.value);\n }\n } else if (e.target.value === \"\") {\n setStringularAmount(\"\");\n setAmount(0);\n }\n }}\n disabled={balance === 0}\n />\n \n
\n {amount > 0 && (\n = 8 ? { color: \"green\" } : { color: \"red\" }}\n className={classes.fee}\n >\n {!isFeeLoading && (\n

\n Penalty Fee:{\" \"}\n {(fee / Math.pow(10, decimals)).toLocaleString(\"en-US\", {\n minimumFractionDigits: 2,\n })}{\" \"}\n PEAK\n

\n )}\n {isFeeLoading && }\n
\n )}\n\n {\n setAmount(\n parseFloat(\n ((balance / Math.pow(10, decimals) / 100) * value).toFixed(2)\n )\n );\n setStringularAmount(\n ((balance / Math.pow(10, decimals) / 100) * value)\n .toFixed(2)\n .replace(\",\", \".\")\n );\n }}\n marks={[{ value: 0 }, { value: 100 }]}\n valueLabelFormat={(value) => (isNaN(value) ? \"0%\" : value + \"%\")}\n />\n
\n\n
\n {account && (\n
\n
\n Current Penalty Fee:{\" \"}\n {currentWeek <= 8 ? comissions[currentWeek - 1] : 0}\n
\n
\n Week: {currentWeek} of 8\n
\n
\n )}\n {account && (\n
\n
    \n {comissions.map((e, index) => {\n //if it's week 9+ all points should be checked\n //if week point is behind current week then add checkmark\n if (\n index + 1 < currentWeek ||\n currentWeek > comissions.length\n ) {\n return (\n <>\n
  • \n \n
  • \n {index + 1 < comissions.length && (\n
    \n )}\n \n );\n }\n\n //either print current week with a big dot or upcoming week with disabled dot\n if (index + 1 !== comissions.length) {\n return (\n <>\n currentWeek\n ? classes.dotDisabled\n : null\n }\n >\n {index + 1 === currentWeek ? {e} : <>{e}}\n \n
\n \n );\n }\n\n //print upcoming week\n return (\n currentWeek\n ? classes.dotDisabled\n : null\n }\n >\n {index + 1 === currentWeek ? {e} : <>{e}}\n \n );\n })}\n \n
\n )}\n \n\n
\n {\n setDialogText(\n \"Please be aware that the cooldown period restarts once you proceed.\"\n );\n setDialogTitle(\"Unstake PEAK and Claim rewards\");\n setShowConfirmationWindow(true);\n }}\n disabled={balance === 0 || amount === 0}\n >\n Unstake PEAK\n \n {\n setDialogText(\n \"Please be aware that the cooldown period restarts once you proceed.\"\n );\n setDialogTitle(\"Claim Rewards\");\n setShowConfirmationWindow(true);\n }}\n disabled={stakingVersion === 1 || balance * 1 === 0}\n >\n
\n Claim Rewards\n
\n \n\n {\n setDialogText(\n \"If you only want to unstake a certain amount of $PEAK tokens and claim your rewards, please refer to the ‘Unstake PEAK’ button.\\nPlease be aware that the cooldown period restarts once you proceed. \"\n );\n setDialogTitle(\"Unstake all PEAKs and claim Rewards\");\n setShowConfirmationWindow(true);\n }}\n disabled={balance === 0}\n >\n Unstake all PEAKs and Claim rewards\n \n
\n \n\n \n \n );\n};\n\nexport default WithdrawCard;\n","export default __webpack_public_path__ + \"static/media/hurricanSwapLogo.0fb7f93d.png\";","import { forwardRef } from 'react';\n\nimport Dialog from '@mui/material/Dialog';\nimport DialogActions from '@mui/material/DialogActions';\nimport DialogContent from '@mui/material/DialogContent';\nimport DialogContentText from '@mui/material/DialogContentText';\nimport DialogTitle from '@mui/material/DialogTitle';\nimport Slide from '@mui/material/Slide';\nimport Button from '@mui/material/Button';\nimport classes from './InfoDialog.module.scss'\n\nconst DialogTransition = forwardRef(function Transition(props, ref) { return ; });\n\nconst InfoDialog = ({ show, setShow}) => {\n return (\n <>\n \n \n

\n Allocation Staking\n

\n
\n\n \n

\n Sale Allocation Staking on PEAKDEFI Launchpad is similar to traditional farming, with the added benefit of earning both Sale allocation and platform fees, on top of ecosystem rewards.\n

\n\n

\n When staking PEAK, your tokens will be rewarded in four ways:\n

\n\n
    \n
  1. Allocation in Sales (optional)
  2. \n
  3. Ecosystem rewards
  4. \n
  5. Deposit Fees
  6. \n
  7. Allocation Fees
  8. \n
\n

\n \n You can think of this like single-sided staking (no impermanent loss), launchpad allocations and network fees, all rolled into one. Even if you can’t participate in sales, there is still plenty of reason to hold and stake PEAK.\n \n

\n
\n\n \n \n \n\n\n \n \n );\n}\n\nexport default InfoDialog;","export default __webpack_public_path__ + \"static/media/Copy.fc9b2816.svg\";","export default __webpack_public_path__ + \"static/media/waves.24138576.svg\";","export default __webpack_public_path__ + \"static/media/StarIcon.d1d9b32b.svg\";","export default __webpack_public_path__ + \"static/media/ArrowRight.6a14fd5f.svg\";","export default __webpack_public_path__ + \"static/media/ArrowLeft.99151e56.svg\";","import React from \"react\";\n\nimport classes from './ButtonBlue.module.scss';\n\n \nconst ButtonBlue= ({onClick, children, className }) => {\n return ();\n}\n \nexport default ButtonBlue;","import { useState } from \"react\";\nimport classes from './AddressFilter.module.scss';\nimport { CgClose } from 'react-icons/cg'\n\n\n\nconst AddressFilter = ({ filterAddresses, setFilterAddresses }) => {\n\n const [inputValue, setInputValue] = useState('');\n\n const enterKeypressHandler = (e) => {\n if (e.key === \"Enter\") {\n setFilterAddresses([...filterAddresses, inputValue])\n setInputValue('');\n }\n }\n\n const handleSingleItemDelete = (index) => {\n setFilterAddresses([...filterAddresses.slice(0, index), ...filterAddresses.slice(index+1)])\n }\n\n return (
\n setInputValue(e.target.value)}\n />\n
\n {filterAddresses.map((e, index) =>\n
\n {e}\n handleSingleItemDelete(index)}\n />\n
\n )}\n
\n
);\n}\n\nexport default AddressFilter;","import { FunctionComponent, useEffect, useState } from \"react\";\nimport classes from './DateFilter.module.scss';\n\nimport DatePicker, { Day, DayRange, DayValue } from '@hassanmojab/react-modern-calendar-datepicker'\n\nconst DateFilter= (props) => {\n\n const [startDate, setStartDate] = useState(null);\n const [endDate, setEndDate] = useState({\n from: startDate,\n to: null\n });\n\n const [minimumDate, setMinimumDate] = useState();\n\n useEffect(() => {\n setEndDate({\n ...endDate,\n from: startDate\n })\n\n if (startDate) {\n props.setStartDate(new Date(startDate.year, startDate.month - 1, startDate.day))\n setMinimumDate({\n year: startDate.year,\n month: startDate.month,\n day: startDate.day\n })\n }\n\n }, [startDate])\n\n useEffect(() => {\n if (endDate.to) {\n props.setEndDate(new Date(endDate.to.year, endDate.to.month - 1, endDate.to.day))\n }\n }, [endDate]);\n\n const dateFormatter = (date) => {\n if (!date)\n return \"Select\"\n return `${('0' + date?.day).slice(-2)}.${('0' + date?.month).slice(-2)}.${date?.year}`;\n }\n\n const updateEndDate = (date) => {\n setEndDate({\n ...endDate,\n to: date.to\n })\n }\n\n\n return (
\n dateFormatter(startDate)}\n calendarClassName={classes.calendarItself}\n />\n
-
\n dateFormatter(endDate.to)}\n\n />\n
);\n}\n\nexport default DateFilter;","export default __webpack_public_path__ + \"static/media/Copy.a88b7db4.svg\";","export default __webpack_public_path__ + \"static/media/ArrowRight.6a14fd5f.svg\";","export default __webpack_public_path__ + \"static/media/ArrowLeft.99151e56.svg\";","export default __webpack_public_path__ + \"static/media/HeaderIcon.d809a78b.svg\";","import { useEffect, useState } from 'react';\nimport { TiFilter } from 'react-icons/ti';\nimport { HiArrowLeft, HiArrowRight } from 'react-icons/hi';\n\nimport classes from './RefereesTable.module.scss'\nimport { useWeb3React } from '@web3-react/core';\nimport ButtonBlue from './components/ButtonBlue/ButtonBlue';\nimport AddressFilter from './components/AddressFilter/AddressFilter';\nimport DateFilter from './components/DateFilter/DateFilter';\nimport ComissionFilter from './components/ComissionFilter/ComissionFilter';\nimport CopyIcon from './images/Copy.svg';\nimport Table from '../Table/Table';\nimport { TableHeader } from '../../../IdoDetail/components/Table/components/TableHeader/TableHeader';\nimport TableRow from '../../../IdoDetail/components/Table/components/TableRow/TableRow';\n\nimport ArrowRight from './images/ArrowRight.svg';\nimport ArrowLeft from './images/ArrowLeft.svg';\nimport HeaderIcon from './images/HeaderIcon.svg';\nimport { getReferees } from '../../API/referal';\nimport { toast } from 'react-toastify';\nimport ContentCopyIcon from '@mui/icons-material/ContentCopy';\n\n\nconst RefereesTable = () => {\n const [filtersCount, setFiltersCount] = useState(0);\n const [showFilters, setShowFilters] = useState(false);\n\n const { account } = useWeb3React();\n\n //filters state\n const [filterAddresses, setFilterAddresses] = useState([]);\n const [startDate, setStartDate] = useState();\n const [endDate, setEndDate] = useState();\n const [comissionFrom, setComissionFrom] = useState(0);\n const [comissionTo, setComissionTo] = useState(0);\n\n\n //pagination state\n const [currentPage, setCurrentPage] = useState(1);\n const [rowsPerPage, setRowsPerPage] = useState(5);\n const pageCountOptions = [5, 10, 25, 50];\n const [maxPageCount, setMaxPageCount] = useState(10);\n\n const columns = [\n { title: 'Address', name: 'address', width: '1fr' },\n { title: 'Timestamp', name: 'date', width: '1fr' },\n { title: 'Commission', name: 'commission', width: '1fr' }\n ]\n\n const [values, setValues] = useState([])\n\n const clearAllFilters = () => {\n setFilterAddresses([]);\n setStartDate(undefined);\n setEndDate(undefined);\n setComissionFrom(0);\n setComissionTo(0);\n setFiltersCount(0);\n }\n\n\n const onPageChange = (selectedItem) => {\n setCurrentPage(selectedItem.selected + 1);\n }\n\n function numFormatter(num) {\n if (num > 999 && num < 1000000) {\n return (num / 1000).toFixed(1) + 'K'; // convert to K for number from > 1000 < 1 million \n }\n else if (num > 1000000 && num < 10 ** 9) {\n return (num / 1000000).toFixed(1) + 'M'; // convert to M for number from > 1 million \n }\n else if (num > 10 ** 9) {\n return ((num / (10 ** 9)).toFixed(1) + 'B');\n }\n else if (num < 900) {\n return num.toFixed(2); // if value < 1000, nothing to do\n }\n }\n\n const createLink = () => {\n navigator.clipboard.writeText(window.location.host + \"?referrer_wallet_address=\" + account);\n\n toast.info('Referral link copied to clipboard', {\n icon: ({ theme, type }) => ,\n position: \"bottom-left\",\n autoClose: 5000,\n hideProgressBar: false,\n closeOnClick: true,\n pauseOnHover: true,\n draggable: true,\n progress: undefined,\n });\n }\n\n\n useEffect(() => {\n let filtersCount = 0;\n if (filterAddresses.length > 0)\n filtersCount++;\n if (!!startDate || !!endDate)\n filtersCount++;\n if (comissionFrom > 0 || comissionTo > 0)\n filtersCount++;\n\n setFiltersCount(filtersCount);\n getReferees(account,\n {\n referrals: filterAddresses,\n dateFrom: !!startDate ? Math.floor(startDate.getTime() / 1000) : undefined,\n dateTo: !!endDate ? Math.floor(endDate.getTime() / 1000) : undefined,\n comissionFrom: comissionFrom,\n comissionTo: comissionTo,\n page: currentPage,\n perPage: rowsPerPage\n }\n ).then((response) => {\n setMaxPageCount(response.data.page_numbers);\n setValues(response.data.referrals_deposit.map((e) => {\n return {\n address: e[0],\n commission: numFormatter(parseInt(e[2])),\n date: new Date(e[3] * 1000).toLocaleDateString('en-GB')\n }\n }))\n })\n\n if (account) {\n }\n }, [currentPage, rowsPerPage, account, startDate, endDate, comissionFrom, comissionTo, filterAddresses])\n\n if (values.length === 0)\n return
\n\n return (
\n\n
\n
\n \n

Referral Rewards

\n
\n\n
\n \n\n setShowFilters(!showFilters)}\n >\n \n
Filters
\n {\n filtersCount > 0 &&\n
\n {filtersCount}\n
\n }\n \n
\n
\n\n
\n
\n
\n

Filter by Address

\n \n
\n\n
\n

Date

\n \n
\n\n {/*
\n

Commission

\n \n
*/}\n
\n
\n
\n \n \n {columns.map(column => {\n return \n })}\n \n\n \n \n \n {\n values.map(row => {\n return (\n \n {\n columns.map(column => {\n return \n })\n }\n \n )\n })\n }\n\n {\n values.length === 0 && account &&\n \n \n\n \n }\n\n {\n values.length === 0 && !account &&\n \n \n \n }\n\n\n
{column.title}
{row[column.name]}
\n

There are currently no entries.

\n

Invite your friends now to earn PEAK:

\n
\n

Your referral:

\n
\n
{window.location.host + \".....\" + account.slice(account.length - 10, account.length)}
\n \n
\n
\n
Please connect your wallet
\n
\n {values.length !== 0 &&\n
\n
\n \n { setRowsPerPage(e.target.value); setCurrentPage(1) }}\n >\n {pageCountOptions.map(op => {\n return \n })}\n \n
\n\n\n
\n setCurrentPage(currentPage - 1)}\n disabled={currentPage === 1}\n >\n \n \n
{currentPage + '/' + maxPageCount}
\n setCurrentPage(currentPage + 1)}\n disabled={currentPage === maxPageCount}\n >\n \n \n
\n
\n }\n
\n
\n\n\n
\n
);\n}\n\nexport default RefereesTable;","import axios from 'axios';\n\nexport const getReferees = (referrerAddress, params) => {\n return axios.get(process.env.REACT_APP_API_URL + 'referral-deposit-info/' + referrerAddress + '?' +\n 'page=' + params.page + '&per-page=' + params.perPage +\n (params.referrals.length > 0 ? '&referrals=' + params.referrals?.join() : '') +\n (!!params.dateFrom || !!params.dateTo ? '×tamp=range:' + (params.dateFrom ?? 0) + ',' + (params.dateTo ?? Math.floor(Date.now() / 1000)) : '') +\n (params.comissionFrom>0 || params?.comissionTo>0 ? '&rewards-amount=range:' + (params.comissionFrom ?? 0) + ',' + (params.comissionTo ?? 100) : '')\n );\n}","import React from \"react\";\nimport classes from './QnA.module.scss';\nimport Collapsible from 'react-collapsible';\nimport {BiPlusCircle} from 'react-icons/bi'\n\n\nfunction QnA(){\n\n const questionsAndAnswers = [\n {\n q: \"How can I participate in the staking program?\",\n a: \"You only have to connect your Metamask wallet. Make sure that your wallet is charged with PEAK tokens and some BNB for transactions and connected with the Binance Smart Chain.\"\n },\n\n {\n q: \"How much PEAK tokens can I stake?\",\n a: \"The number of PEAK tokens you can stake is not limited. But for participating in our Sales, you must stake a minimum of 1,000 PEAK tokens.\"\n },\n\n {\n q: \"What does the penalty fee exactly mean?\",\n a: \"You can unstake your tokens at any given time, but in order to incentive people to stake PEAK tokens continuously, we charge a penalty fee. The fee equals 0% after a period of 8 weeks.\"\n },\n\n // {\n // q: 'What is the referral commission?',\n // a: \"As commission, you will get 10% of the PEAK that your referrer will stake.\"\n // },\n\n // {\n // q: \"How are the commissions paid out?\",\n // a: \"The commissions are always paid in PEAK tokens.\"\n // },\n\n // {\n // q: \"How often gets the claimable number of PEAK tokens refreshed?\",\n // a: \"Due to our smart contract logic, your claimable number of PEAK tokens gets refreshed every 4 hours. Please be aware that before a minimum of 4 hours, you won’t see any referrals.\"\n // },\n\n {\n q: \"Is there a referral program?\",\n a: \"There was a referral program which expired at the end of July 2023.\"\n },\n\n ]\n\n return (
\n
\n

FAQ

\n
\n {\n questionsAndAnswers.map((e) => {\n return (\n
{e.q}
}\n className={classes.collapsible}\n openedClassName={classes.collapsible}\n triggerClassName={classes.trigger}\n triggerOpenedClassName={classes.trigger}\n\n contentInnerClassName={classes.answer}\n >\n
{e.a}
\n \n )\n })\n }\n
\n
\n\n );\n}\n\nexport default QnA;","export default __webpack_public_path__ + \"static/media/waves.24138576.svg\";","export default __webpack_public_path__ + \"static/media/waves.24138576.svg\";","export default __webpack_public_path__ + \"static/media/Copy.fc9b2816.svg\";","import { CircularProgress, Switch } from \"@mui/material\";\nimport { useSelectStakingVersion } from \"hooks/useSelectStakingVersion/useSelectStakingVersion\";\nimport { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport { CgSpinner } from \"react-icons/cg\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport classes from \"./StakingVersionSwitch.module.scss\";\n\nconst StakingVersionSwitch = () => {\n const { stakingVersion, switchToStakingV2, switchToStakingV1 } =\n useSelectStakingVersion();\n\n const [isDisabled, setIsDisabled] = useState(true);\n const location = useLocation();\n\n useEffect(() => {\n const timeout = setTimeout(() => {\n setIsDisabled(false);\n }, 3000);\n\n return () => {\n clearTimeout(timeout);\n setIsDisabled(true);\n };\n }, [location]);\n\n const navigate = useNavigate();\n\n return (\n
\n

\n Staking V2\n

\n {!isDisabled && (\n {\n if (e.target.checked) {\n navigate(\"/allocation-staking-v3\");\n } else {\n navigate(\"/allocation-staking\");\n }\n }}\n disabled={isDisabled}\n />\n )}\n\n {isDisabled && }\n\n

\n Staking V3\n

\n
\n );\n};\n\nexport default StakingVersionSwitch;\n","export default __webpack_public_path__ + \"static/media/ArrowRight.6a14fd5f.svg\";","export default __webpack_public_path__ + \"static/media/StarIcon.a535069f.svg\";","export default __webpack_public_path__ + \"static/media/ArrowLeft.99151e56.svg\";","import { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport ArrowRight from \"./images/ArrowRight.svg\";\nimport ArrowLeft from \"./images/ArrowLeft.svg\";\n\nimport classes from \"./Table.module.scss\";\n\nconst splitArrayIntoChunks = (arr, chunkSize) => {\n const res = [];\n while (arr.length > 0) {\n const chunk = arr.splice(0, chunkSize);\n res.push(chunk);\n }\n return res;\n};\n\nconst V2Table = ({\n columns,\n data,\n size,\n setSize,\n page,\n setPage,\n totalPages,\n}) => {\n const paginationOptions = [5, 10, 25, 50, 100];\n\n\n return (\n
\n
\n \n \n {columns.map((column) => {\n return ;\n })}\n \n\n \n \n \n\n {data.map((rowInfo) => {\n return (\n \n {columns.map((column) => {\n return ;\n })}\n \n );\n })}\n
{column.title}
{rowInfo[column.name]}
\n
\n\n
\n
\n \n {\n setSize(e.target.value);\n setPage(1);\n }}\n >\n {paginationOptions.map((op) => {\n return ;\n })}\n \n
\n\n
\n setPage(page - 1)}\n disabled={page === 1}\n >\n \n \n
\n {page + \"/\" + totalPages}\n
\n setPage(page + 1)}\n disabled={page === totalPages}\n >\n \n \n
\n
\n
\n );\n};\n\nexport default V2Table;\n","export default __webpack_public_path__ + \"static/media/deposits_icon.d311be73.svg\";","import { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { useEffect, useState } from \"react\";\nimport V2Table from \"../V2Table/V2Table.js\";\nimport { useFetchDepositsInfo } from \"./api/client.js\";\nimport classes from \"./DepositsInfo.module.scss\";\nimport deposits_icon from \"./images/deposits_icon.svg\";\n\nconst DepositsInfo = () => {\n const { accounts } = useMergedProvidersState();\n\n const walletAddress = accounts[0] ?? \"\";\n\n const [currentPage, setCurrentPage] = useState(1);\n const [pageSize, setPageSize] = useState(10);\n\n const columns = [\n { name: \"hash\", title: \"Transaction ID\" },\n { name: \"amount\", title: \"Amount\" },\n { name: \"wallet\", title: \"Nickname\" },\n { name: \"time\", title: \"Created on\" },\n { name: \"type\", title: \"Transaction type\" },\n ];\n\n const { data: depositsInfo } = useFetchDepositsInfo(\n walletAddress,\n currentPage,\n pageSize\n );\n\n const [depositsData, setDepositsData] = useState([]);\n\n useEffect(() => {\n if (!depositsInfo) return;\n\n setDepositsData(\n depositsInfo.data.deposits.map((e, index) => {\n return {\n hash: \"...\" + e.hash.slice(-10),\n amount: e.amount,\n wallet: e.wallet.slice(0, 7) + \"...\" + e.wallet.slice(-5),\n time: new Date(e.timestamp * 1000).toISOString().slice(0, 10),\n type: {e.type.toUpperCase()},\n };\n })\n );\n }, [depositsInfo]);\n\n return (\n <>\n
\n {depositsData.length > 0 && (\n <>\n
\n \n

Your deposits history

\n
\n
\n
\n \n
\n
\n \n )}\n
\n \n );\n};\n\nexport default DepositsInfo;\n","import { useQuery } from \"@tanstack/react-query\";\nimport axios from \"axios\";\n\nexport const useFetchDepositsInfo = (walletAddress, page, pageSize) => {\n return useQuery([\"deposits-info\", walletAddress], () => {\n return axios.get(\n process.env.REACT_APP_API_URL +\n `deposits-info?wallet=${walletAddress}&page=${page}&page_size=${pageSize}`\n );\n });\n};\n","import axios from \"axios\";\n\nexport const ApiClient = axios.create({\n baseURL: process.env.REACT_APP_API_URL,\n});\n\nApiClient.interceptors.response.use(\n ({ data }) => data,\n (error) => Promise.reject(error)\n);\n","export default __webpack_public_path__ + \"static/media/history-icon.15d042a6.svg\";","import { useQuery } from \"@tanstack/react-query\";\nimport axios from \"axios\";\nimport { ApiClient } from \"services/api/APIClient\";\n\nexport const useFetchPrice = () => {\n return useQuery({\n queryKey: \"price\",\n queryFn: () => {\n return ApiClient.get(\"peak_defi_price\");\n },\n select: (response) => {\n return response.price;\n },\n });\n};\n","export default __webpack_public_path__ + \"static/media/StakeIcon.07f1db5e.svg\";","export default __webpack_public_path__ + \"static/media/waves.24138576.svg\";","import React, { useState, useEffect } from \"react\";\nimport classes from \"./FundCard.module.scss\";\nimport StakeIcon from \"./images/StakeIcon.svg\";\nimport { abi, stakingContractAddress } from \"../../services/consts\";\nimport { abi as tokenAbi, tokenContractAddress } from \"./services/consts\";\nimport { BigNumber, ethers, providers } from \"ethers\";\nimport Slider from \"@mui/material/Slider\";\nimport {\n setBalance,\n setDecimal,\n selectAddress,\n} from \"../../../../features/userWalletSlice\";\nimport WalletConnectProvider from \"@walletconnect/ethereum-provider\";\nimport { RpcProvider } from \"../../../../consts/rpc\";\nimport { useCookies } from \"react-cookie\";\n\nimport { styled } from \"@mui/material/styles\";\nimport { toast } from \"react-toastify\";\nimport { rpcWalletConnectProvider } from \"../../../../consts/walletConnect\";\nimport { CheckBoxOutlineBlankOutlined } from \"@mui/icons-material\";\nimport { Tooltip } from \"@mui/material\";\nimport InfoIcon from \"../StakingStats/images/InfoIcon.svg\";\nimport { useNavigate } from \"react-router-dom\";\nimport { setStaking } from \"../../../../features/thankYouSlice\";\nimport { addReferrer } from \"../../API/staking\";\nimport { useSearchParams } from \"react-router-dom\";\n\nimport ConfirmationDialog from \"./components/ConfirmationDialog/ConfirmationDialog\";\nimport useMainTour from \"../../../../hooks/useMainTour/useMainTour\";\nimport useStakingContract from \"../../../../hooks/useStakingContract/useStakingContract\";\nimport useTokenContract from \"../../../../hooks/useTokenContract/useTokenContract\";\nimport { metaMask } from \"scenes/Header/ProviderDialog/Metamask\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useStaking } from \"hooks/useStaking/useStaking\";\nimport { useSelectStakingVersion } from \"hooks/useSelectStakingVersion/useSelectStakingVersion\";\nimport {\n useFetchDecimals,\n useFetchMyStakingStats,\n useFetchWalletBalance,\n} from \"scenes/AllocationStaking/API/hooks\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport { useDispatch } from \"react-redux\";\n\nfunction numberWithCommas(x) {\n return x.toFixed(2).replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\nconst FundCard = ({ price, update }) => {\n const { approve, allowance, fund } = useStaking();\n const { stakingVersion } = useSelectStakingVersion();\n\n const [amount, setAmount] = useState(0);\n\n const navigate = useNavigate();\n\n const [stringularAmount, setStringularAmount] = useState(\"\");\n\n const { accounts } = useMergedProvidersState();\n\n const account = accounts[0];\n\n const { data: decimals } = useFetchDecimals();\n const { data: balance, refetch: refetchWalletAddress } =\n useFetchWalletBalance(account);\n\n const [{ data: userInfo, refetch: refetchUserInfo }] =\n useFetchMyStakingStats();\n\n const updateBalance = async () => {\n refetchWalletAddress();\n };\n\n const fundFunction = async () => {\n // if (balance/(10 ** decimals) - amount < 0) {\n if (false) {\n toast.error(\"The amount entered is greater than the balance\");\n } else {\n if (amount * 10 ** decimals < allowance) {\n let bigAmount = 0;\n if (amount * 10 ** decimals >= balance) {\n bigAmount = BigNumber.from(\n Math.floor(parseFloat(amount.toString().slice(0, -1)))\n ).mul(BigNumber.from(10).pow(decimals));\n } else {\n bigAmount = BigNumber.from(Math.round(amount * 100)).mul(\n BigNumber.from(10).pow(decimals - 2)\n );\n }\n\n try {\n const res = await fund(bigAmount);\n\n const a = res.wait().then(() => {\n const promise = new Promise(async (resolve, reject) => {\n refetchUserInfo();\n\n setAmount(0);\n setStringularAmount(\"0\");\n updateBalance();\n\n resolve(1);\n });\n\n toast.promise(promise, {\n pending: \"Updating information, please wait...\",\n success: {\n render() {\n return \"Data updated\";\n },\n autoClose: 1,\n },\n });\n });\n toast.promise(a, {\n pending: \"Transaction pending\",\n success: \"Transaction successful\",\n error: \"Transaction failed\",\n });\n } catch (error) {\n toast.error(\n \"Contract call failed, please make sure you're using the admin wallet\"\n );\n }\n } else {\n const approvalRequest = await approve();\n const approvalTransaction = approvalRequest.wait();\n\n toast.promise(approvalTransaction, {\n pending: \"Approval transaction pending\",\n success: \"Approval transaction successful\",\n error: \"Transaction failed\",\n });\n }\n }\n };\n\n return (\n <>\n
\n
\n
\n {\"\"}\n
Fund
\n
\n
\n
\n
\n Wallet Balance:{\" \"}\n \n {numberWithCommas(Math.abs(balance) / Math.pow(10, decimals))}\n {\" \"}\n (~$\n {numberWithCommas((balance / Math.pow(10, decimals)) * price)})\n
\n {\n setAmount(balance / Math.pow(10, decimals));\n setStringularAmount(\n (balance / Math.pow(10, decimals))\n .toFixed(2)\n .replace(\",\", \".\")\n );\n }}\n >\n MAX\n \n
\n
\n {\n if (/^([0-9]+[\\.]?[0-9]*)$/.test(e.target.value)) {\n setAmount(parseFloat(e.target.value));\n setStringularAmount(e.target.value);\n } else if (e.target.value === \"\") {\n setStringularAmount(\"\");\n setAmount(0);\n }\n }}\n />\n \n
\n
\n\n
\n \n {amount * (10 ** decimals) < allowance ? \"Fund PEAK\" : \"Approve\"}\n \n
\n
\n
\n \n );\n};\n\nexport default FundCard;\n","import { Dialog } from \"@material-ui/core\";\nimport { DialogContent } from \"@mui/material\";\nimport { toast } from \"react-toastify\";\nimport web3 from \"web3\";\nimport classes from \"./PolygonModal.module.scss\";\nimport { useEffect, useState } from \"react\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst NetworkSwitcher = () => {\n const [isOpen, setIsOpen] = useState(false);\n const { chainId } = useMergedProvidersState();\n const desiredChainId = parseInt(\n process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0]\n );\n\n const onClose = () => {\n setIsOpen(false);\n };\n\n useEffect(() => {\n if (chainId && chainId !== desiredChainId) {\n setIsOpen(true);\n } else if (chainId === desiredChainId) {\n setIsOpen(false);\n }\n }, [chainId, desiredChainId]);\n\n const onChangeNetwork = async (desiredNetworkID) => {\n if (window.ethereum.networkVersion !== desiredNetworkID) {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{ chainId: web3.utils.toHex(desiredNetworkID) }],\n });\n onClose();\n } catch (err) {\n // This error code indicates that the chain has not been added to MetaMask\n if (err.code === 4902) {\n toast.error(\n \"The Polygon network was not connected to your wallet provider. To continue please add Polygon network to your wallet provider\"\n );\n }\n }\n }\n };\n return (\n \n {/*
\n \n
*/}\n\n \n

\n Currently you are not connected to BNB Smart Chain Network. Please\n switch in order to proceed with staking and deposit\n

\n
\n {\n onChangeNetwork(desiredChainId);\n }}\n >\n \n \n \n );\n};\n\nexport default NetworkSwitcher;\n","import React from \"react\";\nimport { ethers, BigNumber } from \"ethers\";\n\nimport classes from \"./AllocationStaking.module.scss\";\nimport StakeCard from \"./components/StakeCard/StakeCard\";\nimport StakingStats from \"./components/StakingStats/StakingStats\";\nimport TotalsSection from \"./components/TotalsSection/TotalsSection\";\nimport ValuePriceCard from \"./components/ValuePriceCard/ValuePriceCard\";\nimport WithdrawCard from \"./components/WithdrawCard/WithdrawCard\";\nimport hurricanSwapLogo from '../../resources/hurricanSwapLogo.png';\nimport {\n LineChart,\n Line,\n CartesianGrid,\n XAxis,\n YAxis,\n Tooltip as TooltipRecharts,\n} from \"recharts\";\n\nimport { selectAddress, setDecimal } from \"./../../features/userWalletSlice\";\nimport { useDispatch, useSelector } from \"react-redux\";\n\nimport { useState, useEffect } from \"react\";\nimport InfoDialog from \"./components/InfoDialog/InfoDialog\";\n\nimport { getPrice, getStakeStatistic } from \"./API/staking\";\n\nimport InfoIcon from \"@mui/icons-material/Info\";\nimport { Tooltip } from \"@mui/material\";\n\nimport { useCookies } from \"react-cookie\";\nimport { useLocation, useSearchParams } from \"react-router-dom\";\nimport ReferralsCard from \"./components/ReferralsCard/ReferralsCard\";\nimport Leaderboard from \"./components/Leaderboard/Leaderboard\";\nimport RefereesTable from \"./components/RefereesList/RefereesTable\";\nimport QnA from \"../QnA/QnA\";\nimport ReferralsSection from \"./components/ReferralsSection/ReferralsSection\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport useJSONContract from \"hooks/useJSONContract/useJSONContract\";\nimport { useSelectStakingVersion } from \"hooks/useSelectStakingVersion/useSelectStakingVersion\";\nimport StakingVersionSwitch from \"./components/StakingVersionSwitch/StakingVersionSwitch\";\nimport { useJSONStakingContract } from \"hooks/useJSONStakingContract/useJSONStakingContract\";\nimport useStakingContract from \"hooks/useStakingContract/useStakingContract\";\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\nimport V2StakingLeaderboard from \"./components/V2StakingLeaderboard/V2StakingLeaderboard\";\nimport DepositsInfo from \"./components/DepositsInfo/DepositsInfo\";\nimport ReferralRewardsInfo from \"./components/ReferralRewardsInfo/ReferralRewardsInfo\";\nimport {\n useFetchDecimals,\n useFetchMyStakingStats,\n useFetchTotalStakingStats,\n} from \"./API/hooks\";\nimport { useMemo } from \"react\";\nimport { useFetchPrice } from \"./API/client\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport FundCard from \"./components/FundCard/FundCard\";\nimport NetworkSwitcher from \"./components/NetworkSwitcher/NetworkSwitcher\";\n\nconst AllocationStaking = ({ externalStakingVersion = 1 }) => {\n const showPrice =\n process.env.REACT_APP_API_URL === \"https://api-dev.peakdefi.com/\"\n ? false\n : true;\n const [showInfoDialog, setShowInfoDialog] = useState(false);\n\n const location = useLocation();\n\n const { stakingVersion, switchToStakingV1, switchToStakingV2 } =\n useSelectStakingVersion();\n\n const dispatch = useDispatch();\n const { accounts } = useMergedProvidersState();\n const walletAddress = accounts[0];\n\n const [\n { data: userInfo, refetch: refetchUserInfo },\n { data: stakingPercent, refetch: refetchStakingPercent },\n { data: pending, refetch: refetchPending },\n ] = useFetchMyStakingStats();\n\n const mainText = `Stake PEAK to get Sale allocations and earn ${parseInt(\n stakingPercent?._hex ?? 20\n )}% APY`;\n const [totalValueLocked, setTotalValueLocked] = useState(0);\n const [stakeBalance, setStakeBalance] = useState(0);\n const [graphData, setGraphData] = useState([]);\n\n const [searchParams, setSearchParams] = useSearchParams();\n const [cookies, setCookie] = useCookies([\"referrer_wallet_address\"]);\n\n const [\n { data: totalDeposits, refetch: refetchTotalDeposits },\n { data: paidOut, refetch: refetchPaidOut },\n ] = useFetchTotalStakingStats();\n\n const completeRefresh = () => {\n refetchUserInfo();\n refetchStakingPercent();\n refetchPending();\n refetchTotalDeposits();\n refetchPaidOut();\n };\n\n const { data: decimals } = useFetchDecimals();\n\n const { tokenContract } = useTokenContract();\n\n //TODO: remove this once all global store references to decimals\n //are replaced with the correspinding hook\n useEffect(() => {\n dispatch(setDecimal(decimals));\n }, [decimals]);\n\n const { data: price } = useFetchPrice();\n\n const memoStakingStats = useMemo(() => {\n return [\n {\n title: \"Current APY\",\n value: parseInt(stakingPercent?._hex ?? 0),\n append: \"%\",\n info:\n \"We offer a guaranteed fixed APY of \" +\n parseInt(stakingPercent?._hex ?? 0) +\n \"%\",\n },\n\n {\n title: \"My staked PEAK\",\n value: userInfo?.amount,\n append: \"PEAK\",\n info: \"The total number of your PEAK tokens that are currently locked in our staking pool\",\n subvalue: {\n value: userInfo?.amount * price,\n append: \"$\",\n },\n },\n\n {\n title: \"My earned PEAK\",\n value: pending,\n append: \"PEAK\",\n info: \"The total number of PEAK tokens you have earned through the staking process\",\n subvalue: {\n value: pending * price,\n append: \"$\",\n },\n },\n ];\n }, [userInfo, stakingPercent, pending, price]);\n\n const memoTotals = useMemo(() => {\n setTotalValueLocked(price * (totalDeposits / Math.pow(10, decimals)));\n\n return [\n {\n title: \"Total PEAK staked\",\n info: \"The total amount of PEAK tokens that are staked on our launchpad\",\n value: {\n value: parseInt(totalDeposits?.toString() ?? 0),\n },\n subvalue: {\n value: totalDeposits * price,\n prepend: \"$\",\n },\n },\n\n {\n title: \"Total Rewards distributed\",\n info: \"The total amount of PEAK token rewards we distributed to all stakers on our launchpad since launch.\",\n value: {\n value: paidOut,\n },\n subvalue: {\n value: paidOut * price,\n prepend: \"$\",\n },\n },\n ];\n }, [totalDeposits, paidOut, price, decimals]);\n\n const saveReferrerWallet = () => {\n if (\n !cookies.referrer_wallet_address &&\n searchParams.get(\"referrer_wallet_address\")\n ) {\n setCookie(\n \"referrer_wallet_address\",\n searchParams.get(\"referrer_wallet_address\"),\n {\n expires: new Date(Date.now() + 48 * 60 * 60 * 1000),\n }\n );\n }\n };\n\n //listeners\n useEffect(() => {\n getStakeStatistic().then((response) => {\n setGraphData(response.data.data);\n });\n saveReferrerWallet();\n }, []);\n\n useEffect(() => {\n if (externalStakingVersion === 2) {\n switchToStakingV2();\n } else {\n switchToStakingV1();\n }\n }, [externalStakingVersion]);\n\n const data = [\n { name: \"Page A\", uv: 400, pv: 2400, amt: 2400 },\n { name: \"Page B\", uv: 300, pv: 2400, amt: 2400 },\n { name: \"Page C\", uv: 200, pv: 2400, amt: 2400 },\n ];\n\n return (\n
\n
\n
\n
\n {mainText}\n \n \n \n
\n
\n {/* */}\n\n {/*
{ setShowInfoDialog(true); }}>\n Info\n
*/}\n
\n\n
\n {showPrice && (\n \n )}\n
\n {graphData.length > 0 && (\n <>\n
\n
PEAK Staking Amount
\n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n
PEAK TVL
\n \n \n \n \n \n \n \n \n \n
\n \n
\n
PEAK Price
\n \n \n \n \n \n \n \n \n
\n \n \n )}\n\n
\n \n
\n\n {walletAddress === \"0xf868b39dE670fc4384CF8c290883A8139aF3296c\" && (\n
\n
\n \n
\n
\n
\n )}\n\n
\n
\n \n {window.innerWidth > 900 && (\n \n )}\n {window.innerWidth <= 900 && (\n \n )}\n
\n\n
\n {window.innerWidth > 900 && (\n \n )}\n {window.innerWidth <= 900 && (\n \n )}\n \n
\n
\n {/* {stakingVersion === 2 && } */}\n\n \n {/* {stakingVersion === 2 && } */}\n {/* {stakingVersion === 2 ? : } */}\n {stakingVersion === 2 && }\n\n \n\n \n \n \n );\n};\n\nexport default AllocationStaking;\n","import {useEffect} from 'react';\nimport { Controller } from \"react-hook-form\";\n\n\nimport TextField from '@mui/material/TextField';\nimport Box from '@material-ui/core/Box';\nimport InputAdornment from '@mui/material/InputAdornment';\n\nimport MenuItem from '@mui/material/MenuItem';\nimport Select from '@mui/material/Select';\n\nimport FacebookIcon from '@mui/icons-material/Facebook';\nimport TwitterIcon from '@mui/icons-material/Twitter';\nimport InstagramIcon from '@mui/icons-material/Instagram';\n\nimport { ErrorMessage } from \"@hookform/error-message\";\n\n\nimport classes from './TextInput.module.scss'\n\nconst createEndAdornment = (onChange, value) => {\n return (\n \n \n \n );\n};\n\n\n\nconst TextInput = ({ name, control, label, type, value_data, onChangeGlobal, errors, rules }) => {\n \n return (<>\n\n {\n \n return (\n\n \n onChange({ ...value, url: e.target.value }) : type === 'number' || type === 'money' ? (e) => onChange(parseFloat(e.target.value)) : onChange}\n value={value_data ? value_data : type === \"social\" ? value.url : value}\n label={label}\n type={type === 'money' ? 'number' : type}\n className={classes.inputField}\n error={!errors ? false : !!errors[name]}\n InputLabelProps={\n {\n shrink: true,\n }\n }\n InputProps={\n {\n endAdornment: type === \"social\" ? createEndAdornment(onChange, value) : null,\n startAdornment: type === \"money\" ? $ : null\n }\n }\n />\n\n \n )\n }}\n />\n );\n}\n\nexport default TextInput;","import axios from 'axios';\n\nexport function createIDO(idoData){\n return axios.post(process.env.REACT_APP_API_URL+'create-ido', idoData);\n}\n\nexport function updateIDO(idoData, id){\n return axios.put(process.env.REACT_APP_API_URL + 'update-ido/'+id, idoData);\n}\n\nexport function createIDODetail(idoData){\n return axios.post(process.env.REACT_APP_API_URL + 'project_detail_create', idoData);\n}\n\nexport function updateIDODetail(idoData, id){\n return axios.put(process.env.REACT_APP_API_URL + 'project_detail_update/'+id, idoData);\n}\n\nexport function createTokenDetail(idoData){\n return axios.post(process.env.REACT_APP_API_URL + 'token_detail_create', idoData);\n}\n\nexport function updateTokenDetail(idoData, id){\n return axios.put(process.env.REACT_APP_API_URL + 'token_detail_update/'+id, idoData);\n}\n\nexport function deleteIDO(id){\n return axios.delete(process.env.REACT_APP_API_URL+'delete-ido-all/'+id);\n}\n\nexport function updateAllIDO(idoData, id){\n return axios.put(process.env.REACT_APP_API_URL + 'update-ido-all/'+id, idoData);\n}\n\nexport function createAllIDO(idoData){\n return axios.post(process.env.REACT_APP_API_URL + 'create-ido-all', idoData);\n}","export const salesFactoryAbi =[\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"deploySale\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_allocationStaking\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"setAllocationStaking\",\n\t\t\"outputs\": [],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_adminAddress\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"_allocationStaking\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"nonpayable\",\n\t\t\"type\": \"constructor\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"admin\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"allocationStaking\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"allSales\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"startIndex\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"endIndex\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"getAllSales\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address[]\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address[]\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"getLastDeployedSale\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [],\n\t\t\"name\": \"getNumberOfSalesDeployed\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"uint256\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"uint256\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t},\n\t{\n\t\t\"inputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"address\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"address\"\n\t\t\t}\n\t\t],\n\t\t\"name\": \"isSaleCreatedThroughFactory\",\n\t\t\"outputs\": [\n\t\t\t{\n\t\t\t\t\"internalType\": \"bool\",\n\t\t\t\t\"name\": \"\",\n\t\t\t\t\"type\": \"bool\"\n\t\t\t}\n\t\t],\n\t\t\"stateMutability\": \"view\",\n\t\t\"type\": \"function\"\n\t}\n];\n\nexport const salesFactoryAddress = \"0x20F1a1076e0C5dCed1bBEaf28f59f92afC50a264\";","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const previewSlice = createSlice({\n name: 'previewSlice',\n initialState: {\n rawData: {}\n },\n\n reducers: {\n setRawData: (state, action)=>{\n return {...state, rawData: action.payload}\n }\n }\n})\n\nexport const {setRawData} = previewSlice.actions;\n\nexport default previewSlice.reducer;","import { Controller, useForm } from \"react-hook-form\";\nimport React, { useState, useRef } from 'react';\nimport { Button } from '@mui/material';\n\nimport classes from './SalesForm.module.scss'\nimport { useEffect } from 'react';\nimport TextInput from \"./components/TextInput/TextInput\";\nimport { createAllIDO, createIDO, createIDODetail, createTokenDetail, deleteIDO, updateAllIDO, updateIDO, updateIDODetail, updateTokenDetail } from \"../../API/idos.js\";\nimport { useSelector } from \"react-redux\";\nimport { useDispatch } from \"react-redux\";\nimport { setSelectedIDO, setToUpdate } from \"../../../../features/adminPageSlice\";\nimport JoditEditor from \"jodit-react\";\nimport { getSingleIdo } from \"../../../MainScreen/components/Table/API/idos\";\nimport Box from '@mui/material/Box';\nimport InputLabel from '@mui/material/InputLabel';\nimport MenuItem from '@mui/material/MenuItem';\nimport FormControl from '@mui/material/FormControl';\nimport Select from '@mui/material/Select';\nimport { createMediaDetail, deleteMediaDetail, updateMediaDetail } from \"../../API/media\";\nimport { createTimelinetail, updateTimelinetail } from \"../../API/timeline\";\nimport { salesFactoryAbi, salesFactoryAddress } from \"../../../../consts/newSale\";\nimport { ethers } from \"ethers\";\nimport LinearProgress from '@mui/material/LinearProgress';\nimport { toast } from 'react-toastify';\n\nimport { UpcomingIdoBlock } from '../../../MainScreen/components/IDOBlock/components/UpcomingIdoBlock/UpcomingIdoBlock';\nimport { OngoingIdo } from '../../../MainScreen/components/IDOBlock/components/OngoingIdo/OngoingIdo';\nimport { IdoBlock } from \"../../../MainScreen/components/IDOBlock/components/IdoBlock/IdoBlock\";\nimport { setRawData } from \"../../../../features/previewSlice\";\nimport { ErrorMessage } from \"@hookform/error-message\";\nimport ErrorDialog from \"../../../ErrorDialog/ErrorDialog\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\n\n\n\nconst SalesForm = () => {\n \n const provider = useProviderHook()\n const [showError, setShowError] = useState(false);\n const [errorMessage, setErrorMessage] = useState(\"Some fields are missing or are incorrectly filled.\")\n const selectedIDO = useSelector(state => state.adminPage.selectedIDO)\n const dispatch = useDispatch();\n const [saleContractAddress, setSaleContractAddress] = useState('');\n\n const { register, handleSubmit, reset, control, watch, setValue, getValues, formState: { errors } } = useForm({\n defaultValues: {\n img_url: '',\n social_media: [{ url: '', type: 'fb' }],\n contract_address: saleContractAddress\n }\n });\n\n const watchAllFields = watch();\n\n\n\n\n const [content, setContent] = useState('')\n const [vesting_percent, setVestingPercent] = useState([])\n const [vesting_time, setVestingTime] = useState([])\n const [media, setMedia] = useState([])\n const [showVesting, setShowVesting] = useState(false)\n\n const [isLoading, setIsLoading] = useState(false);\n const [device, setDevice] = useState('desktop');\n const dimensions = {\n desktop: { w: 1900, h: 1000 },\n macbook: { w: 1440, h: 900 },\n mobile: { w: 440, h: 800 }\n }\n\n\n const getSaleContract = () => {\n const { ethereum } = window;\n //creating contract address for sale\n if (ethereum) {\n const signer = provider.getSigner();\n let contract = new ethers.Contract(salesFactoryAddress, salesFactoryAbi, signer);\n setIsLoading(true);\n contract.deploySale().then((res) => {\n let transaction = res.wait().then(result => {\n contract.getLastDeployedSale().then(response => {\n\n let resobj = { contract_address: response }\n dispatch(setSelectedIDO(resobj));//update for abi constructo\n\n setIsLoading(false);\n setSaleContractAddress(response);//update local state\n setValue('contract_address', response);//update form data\n })\n })\n toast.promise(\n transaction,\n {\n pending: 'Contract deployment transaction pending',\n success: 'Contract deployment transaction successful',\n error: 'Contract deployment transaction failed',\n }\n )\n\n });\n }\n }\n\n useEffect(() => {\n }, [selectedIDO.contract_address])\n\n useEffect(() => {\n\n const idoInfo = {\n title: watchAllFields.title,\n heading_text: watchAllFields.heading_text,\n logo_url: watchAllFields.logo_url,\n time_until_launch: 5000,\n current_round: 'Preparing for sale',\n contract_address: watchAllFields.contract_address,\n website_url: watchAllFields.website,\n description: watchAllFields.description,\n\n project_detail: {\n project_bg: watchAllFields.project_bg,\n number_of_registration: 340,\n vesting_text: watchAllFields.vesting_text,\n tge: watchAllFields.tge\n },\n\n timeline: {\n sale_start: new Date(watchAllFields.sale_start).getTime() / 1000,\n sale_end: new Date(watchAllFields.sale_end).getTime() / 1000,\n registration_start: new Date(watchAllFields.registration_start).getTime() / 1000,\n registration_end: new Date(watchAllFields.registration_end).getTime() / 1000\n },\n\n saleInfo: {\n totalRaised: watchAllFields.total_raise,\n total_raised: watchAllFields.total_raise,\n target_raised: 500,\n number_of_participants: watchAllFields.number_of_participants,\n start_date: new Date(watchAllFields.sale_start).getTime() / 1000,\n end_date: new Date(watchAllFields.sale_end).getTime() / 1000,\n token_price: watchAllFields.token_price_in_usd,\n info: {\n time_until_launch: 5000,\n token_sold: 0,\n token_distribution: watchAllFields.token_distribution,\n sale_progres: 50\n }\n },\n\n token: {\n name: watchAllFields.name,\n symbol: watchAllFields.symbol,\n token_price_in_usd: watchAllFields.token_price_in_usd,\n token_price_in_avax: 1,\n total_token_sold: 0,\n total_suppy: watchAllFields.token_distribution,\n token_distribution: watchAllFields.token_distribution,\n token_address: watchAllFields.token_address,\n decimals: watchAllFields.decimals\n },\n\n socials: watchAllFields.social_media.map(e => {\n return { url: e.url, logo_url: 'logo.com', imgMobile: '' }\n })\n\n }\n\n\n localStorage.setItem('previewIDO', JSON.stringify(idoInfo));\n\n\n }, [watchAllFields]);\n\n\n const config = {\n readonly: false // all options from https://xdsoft.net/jodit/doc/\n }\n // useEffect(()=>{\n // dispatch(setSelectedIDO(null));\n // }, []);\n\n useEffect(async () => {\n if (!selectedIDO)\n return;\n\n if (selectedIDO.id === undefined)\n return;\n\n if (!isNaN(selectedIDO.endAt)) {\n const endAt = new Date(selectedIDO.endAt * 1000);\n setValue('sale_end', endAt.toISOString().split('T')[0]);\n }\n\n let ido_data = await getSingleIdo(selectedIDO.id).then(response => {\n return response.data.ido\n })\n setValue('title', ido_data.title);\n setValue('img_url', ido_data.logo_url);\n setValue('heading_text', ido_data.heading_text);\n setValue('description', ido_data.description);\n setValue('short_descriptions', ido_data.short_description)\n setContent(ido_data.description)\n setValue('number_of_participants', ido_data.number_of_participants);\n setValue(\"ido_data_is_public\", ido_data.is_public[0]);\n setValue(\"supported_network_id\", ido_data.supported_network?.id);\n setValue(\"ido_data_read_from_db\", ido_data.project_detail.read_from_db);\n\n \n\n // Project detail\n setValue(\"project_detail_id\", ido_data.project_detail.id)\n setValue('website', ido_data.project_detail.website);\n setValue('vesting_text', ido_data.project_detail.vesting_text);\n\n if (ido_data.project_detail.tge !== '')\n setValue('tge', new Date(ido_data.project_detail.tge).toISOString().split('T')[0]);\n\n setValue('contract_address', ido_data.project_detail.contract_address);\n setVestingPercent(ido_data.project_detail.vesting_percent)\n setVestingTime(ido_data.project_detail.vesting_time)\n setValue(\"project_bg\", ido_data.project_detail.project_bg)\n\n //Token detail\n setValue(\"token_id\", ido_data.token.id)\n setValue(\"name\", ido_data.token.name)\n setValue(\"decimals\", ido_data.token.decimals)\n setValue(\"symbol\", ido_data.token.symbol)\n setValue(\"token_address\", ido_data.token.token_address)\n setValue(\"total_supply\", ido_data.token.total_supply)\n setValue(\"all_time_high\", ido_data.token.all_time_high)\n setValue(\"current_token_price\", ido_data.token.current_token_price)\n setValue(\"token_distribution\", ido_data.token.token_distribution)\n setValue(\"token_price_in_usd\", ido_data.token.token_price_in_usd)\n setValue(\"total_raise\", ido_data.token.total_raise)\n setValue(\"logo_url\", ido_data.token.logo_url)\n setValue(\"total_tokens_sold\", ido_data.token.total_tokens_sold)\n setValue(\"token_detail_read_from_db\", ido_data.token.read_from_db)\n\n //Media detail\n setMedia(ido_data.socials)\n\n // Timeline\n var tzoffset = (new Date()).getTimezoneOffset() * 60000;\n setValue(\"timeline_id\", ido_data.timeline.id)\n setValue(\"registration_end\", new Date(ido_data.timeline.registration_end * 1000 - tzoffset).toISOString().split('.')[0])\n setValue(\"registration_start\", new Date(ido_data.timeline.registration_start * 1000 - tzoffset).toISOString().split('.')[0])\n setValue(\"sale_end\", new Date(ido_data.timeline.sale_end * 1000 - tzoffset).toISOString().split('.')[0])\n setValue(\"sale_start\", new Date(ido_data.timeline.sale_start * 1000 - tzoffset).toISOString().split('.')[0])\n setValue(\"sale_timeline_text\", ido_data.timeline.sale_timeline_text);\n setValue(\"show_text\", ido_data.timeline.show_text);\n setValue(\"tml_read_from_db\", ido_data.timeline.read_from_db);\n\n\n }, [selectedIDO]);\n\n\n const onSubmit = (data) => {\n const toSend = { ...data };\n delete toSend.social_media;\n if (selectedIDO) {\n updateIDO({ ...toSend, img_url: 'https://static01.nyt.com/images/2021/09/14/science/07CAT-STRIPES/07CAT-STRIPES-superJumbo.jpg?quality=75&auto=webp' }, selectedIDO.id).then(() => dispatch(setToUpdate(true)));\n } else {\n createIDO({ ...toSend, img_url: 'https://static01.nyt.com/images/2021/09/14/science/07CAT-STRIPES/07CAT-STRIPES-superJumbo.jpg?quality=75&auto=webp' }).then(() => dispatch(setToUpdate(true)));\n }\n };\n\n const editor = useRef(null)\n\n return (<>\n
\n {/*
\n

\n Sale information\n

\n
*/}\n\n
\n

\n Sale information\n

\n
\n {/* \n descriptions: str */}\n
\n \n\n \n\n \n\n \n\n\n\n\n
\n\n
\n \n \n
\n\n
\n setContent(newContent)} // preferred to use only this option to update the content for performance reasons\n onChange={newContent => { }}\n />\n
\n\n
\n\n
\n

\n Project detail\n

\n
\n
\n \n\n \n\n \n\n \n\n
\n\n
\n \n
\n\n
\n \n \n
\n\n
\n

\n Vesting detail\n { ev.preventDefault(); setShowVesting(!showVesting) }}> show vesting

\n \n\n {showVesting ?\n
\n {vesting_time.map((data, id) => {\n return (
\n {\n let v = [...vesting_time]\n v[id] = new Date(ev.target.value).getTime() / 1000\n setVestingTime(v)\n })}\n />\n\n\n {\n let v = [...vesting_percent]\n v[id] = ev.target.value\n setVestingPercent(v)\n })}\n />\n\n
{\n ev.preventDefault()\n let v = [...vesting_time]\n v.splice(id, 1)\n setVestingTime(v)\n v = [...vesting_percent]\n v.splice(id, 1)\n setVestingPercent(v)\n }}> Delete
\n\n
)\n })}\n \n
\n : \"\"\n }\n \n\n
\n\n

\n Token detail\n

\n\n
\n \n\n\n \n\n\n \n\n
\n
\n \n\n\n \n
\n
\n \n\n\n \n \n
\n
\n \n \n \n
\n\n
\n \n\n \n
\n\n
\n \n \n
\n\n
\n\n

\n Social links\n

\n\n
\n {\n
\n {media.map((data, id) => {\n return (
\n {\n let m = [...media]\n m[id].url = ev.target.value\n setMedia(m)\n })}\n />\n\n\n \n \n Type\n {\n let m = [...media]\n m[id].type = ev.target.value\n setMedia(m)\n }}\n >\n Twitter\n Medium\n Telegram\n Discord\n Instagram\n Facebook\n \n \n \n\n
{\n ev.preventDefault()\n deleteMediaDetail(media[id].id)\n let m = [...media]\n m.splice(id, 1)\n setMedia(m)\n }}> Delete
\n\n
)\n })}\n \n
\n }\n
\n\n

\n Timeline\n

\n
\n \n\n \n\n
\n\n
\n \n\n \n\n
\n\n
\n \n\n \n \n
\n\n
\n \n \n
\n\n
\n\n
\n

Preview

\n
\n
\n

Upcoming view

\n \n
\n\n
\n

Ongoing view

\n \n
\n\n
false}>\n

Completed view

\n\n \n
\n\n
\n
\n

Project details view

\n \n Device\n {\n setDevice(e.target.value);\n }}\n >\n Desktop\n MacBook\n Mobile\n \n \n\n
\n\n
\n \n {\n window.open(\n \"https://crew3.xyz/c/peakdeficommunity/invite/m20mqr_pjBUFS8y_En2nY\"\n );\n }}\n >\n GET COMMUNITY REWARDS WITH CREW3 NOW\n \n
\n );\n};\n\nexport default EarnWithCrew3;\n","import React, { useState } from \"react\";\nimport classes from \"./NewsScreen.module.scss\";\nimport { useEffect } from \"react\";\nimport { getNews } from \"./API/api\";\nimport { useParams } from \"react-router-dom\";\nconst NewsScreen = (props) => {\n const [news, setNews] = useState({});\n let { id } = useParams();\n\n useEffect(() => {\n getNews(id).then((item) => {\n setNews(item.data.news[0]);\n });\n }, [id]);\n\n return (\n
\n
{news.title}
\n \n
\n );\n};\n\nexport default NewsScreen;\n","import axios from \"axios\";\n\nexport function getNews(id) {\n return axios.get(process.env.REACT_APP_API_URL + \"get_news\" + `/${id}`);\n}","import MainScreen from \"./scenes/MainScreen/MainScreen\";\nimport IdoDetail from \"./scenes/IdoDetail/IdoDetail\";\nimport AllocationStaking from \"./scenes/AllocationStaking/AllocationStaking\";\nimport AdminPanel from \"./scenes/AdminPanel/AdminPanel\";\nimport SalesPage from \"./scenes/SalesPage/SalesPage\";\nimport Login from \"./scenes/Login/Login\";\nimport AboutPage from \"./scenes/AboutPage/AboutPage\";\nimport TierPage from \"./scenes/TierPage/TierPage\";\nimport TermsAndConditions from \"./scenes/TermsAndConditions/TermsAndConditions\";\nimport FAQ from \"./scenes/FAQ/FAQ\";\nimport NotFound from \"./scenes/NotFound/NotFound\";\nimport PreviewIdoDetail from \"./scenes/PreviewIdoDetail/PreviewIdoDetail\";\nimport ThankYouPage from \"./scenes/ThankYouPage/ThankYouPage\";\nimport EbookThankYou from \"./scenes/EbookThankYou/EbookThankYou\";\nimport EarnWithCrew3 from \"./scenes/EarnWithCrew3/EarnWithCrew3\";\nimport NewsScreen from \"scenes/News/NewsScreen\";\n\nexport const routes = [\n {\n path: \"/\",\n exact: true,\n component: ,\n isProtected: true,\n },\n\n {\n path: \"/project-details/:name\",\n exact: true,\n component: ,\n isProtected: true,\n },\n\n {\n path: \"/project-details/:name/:type\",\n exact: true,\n component: ,\n isProtected: true,\n },\n\n {\n path: \"/preview-project-details\",\n exact: true,\n component: ,\n isProtected: true,\n },\n\n {\n path: \"/allocation-staking\",\n exact: true,\n component: ,\n isProtected: true,\n },\n\n {\n path: \"/allocation-staking-v3\",\n exact: true,\n component: ,\n isProtected: true,\n },\n\n // {\n // path: '/sales',\n // exact: true,\n // component: ,\n // isProtected: true\n // },\n\n {\n path: \"/admin-panel\",\n exact: true,\n component: ,\n isProtected: true,\n },\n\n {\n path: \"/admin\",\n exact: true,\n component: ,\n isProtected: true,\n },\n\n {\n path: \"/about\",\n exact: true,\n component: ,\n isProtected: true,\n },\n\n {\n path: \"/tier-system\",\n exact: true,\n component: ,\n isProtected: true,\n },\n\n {\n path: \"/login\",\n exact: true,\n component: ,\n isProtected: false,\n },\n\n {\n path: \"/terms-and-conditions\",\n exact: true,\n component: ,\n isProtected: false,\n },\n\n {\n path: \"/faq\",\n exact: true,\n component: ,\n isProtected: false,\n },\n\n {\n path: \"/thank-you-register\",\n exact: true,\n component: ,\n isProtected: false,\n },\n\n {\n path: \"/thank-you-deposit\",\n exact: true,\n component: ,\n isProtected: false,\n },\n\n {\n path: \"/thank-you-stake\",\n exact: true,\n component: ,\n isProtected: false,\n },\n\n {\n path: \"/checklist-thank-you\",\n exact: true,\n component: ,\n isProtected: false,\n },\n {\n path: \"/earn-with-crew3\",\n exact: true,\n component: ,\n isProtected: false,\n },\n {\n path: \"/news/:id\",\n exact: true,\n component: ,\n isProtected: false,\n },\n {\n path: \"*\",\n exact: false,\n component: ,\n isProtected: false,\n },\n];\n","import { createBrowserHistory } from 'history';\n\nexport default createBrowserHistory();","export default __webpack_public_path__ + \"static/media/new_logo_text.ae4a8a4f.svg\";","export default __webpack_public_path__ + \"static/media/person.3a37aa30.svg\";","export default __webpack_public_path__ + \"static/media/bg_gradient.0c3ae191.svg\";","export default __webpack_public_path__ + \"static/media/wave.65be60d9.svg\";","export default __webpack_public_path__ + \"static/media/bg2_gradient.f801ca14.svg\";","import classes from './Waves.module.scss'\nimport { useLocation } from 'react-router-dom'\nimport { useEffect, useState } from 'react';\nimport { useSelector } from 'react-redux';\n\nconst Waves = ({bgimg, isProjectDetails}) => {\n \n const location = useLocation();\n const [heightStyle, setHeightStyle] = useState({height: '20vh', marginTop: '55vh'})\n const isShort = useSelector(state=>state.bg.short);\n const isSuperShort = useSelector(state=>state.bg.superShort);\n\n useEffect(()=>{\n \n if(isShort){\n setHeightStyle({height: '10vh', marginTop: '25vh'})\n }\n else if(isSuperShort){\n setHeightStyle({height: '2vh', marginTop: '15vh'})\n }\n else{\n setHeightStyle({height: '20vh', marginTop: '55vh'});\n }\n }, [isShort, isSuperShort])\n \n return (
\n {\n if (node) {\n if(isShort)\n node.style.setProperty(\"margin-top\", \"35vh\", \"important\");\n if(isSuperShort){\n if(window.innerWidth<1000)\n node.style.setProperty(\"margin-top\", \"9vh\", \"important\");\n else\n node.style.setProperty(\"margin-top\", \"15vh\", \"important\");\n }\n }\n }}\n >\n \n \n \n \n \n {!isProjectDetails && }\n {!isProjectDetails && }\n {!isProjectDetails && }\n {true && }\n \n \n
);\n}\n\nexport default Waves;","import React, { useEffect, useState } from \"react\";\nimport classes from \"./BG.module.scss\"\nimport BG_img from '../../resources/bg_gradient.svg'\nimport wave from './images/wave.svg';\nimport BG2_img from '../../resources/bg2_gradient.svg'\nimport { useSelector } from 'react-redux';\nimport Waves from \"./components/Waves/Waves\";\n\n\nconst BG = () => {\n const [bgimg, setbgImg] = useState(BG_img);\n const projectDetailBG = useSelector(state => state.projectDetails.bg_image);\n const [isProjectDetails, setIsProjectDetails] = useState(false);\n\n useEffect(() => {\n if (window.location.href.indexOf('project-details') >= 0) {\n setbgImg(projectDetailBG);\n setIsProjectDetails(true);\n }\n else if(window.location.href.indexOf('sales') >= 0){\n setbgImg(BG2_img);\n setIsProjectDetails(false);\n } \n else {\n setbgImg(BG_img);\n setIsProjectDetails(false);\n }\n }, [window.location.href]);\n\n useEffect(()=>{\n if (window.location.href.indexOf('project-details') >= 0) {\n setbgImg(projectDetailBG);\n setIsProjectDetails(true);\n }\n else{\n setbgImg('');\n }\n }, [projectDetailBG]);\n\n return (\n
\n\n {isProjectDetails &&\n <>\n \n {\n window.location.href.indexOf('project-details') >= 0 &&\n \n }\n \n }\n\n {!isProjectDetails && }\n\n
\n );\n}\n\nexport default BG;","import { createSlice } from \"@reduxjs/toolkit\";\n\nexport const stakingSlice = createSlice({\n name: \"staking\",\n initialState: {\n balance: 0,\n decimals: 18,\n },\n\n reducers: {\n setBalance: (state, action) => {\n return { ...state, balance: action.payload };\n },\n\n setDecimals: (state, action) => {\n return { ...state, decimals: action.payload };\n },\n },\n});\n\nexport const { setBalance, setDecimals } = stakingSlice.actions;\n\nexport default stakingSlice.reducer;\n","export default __webpack_public_path__ + \"static/media/logo.6ce24c58.svg\";","export default __webpack_public_path__ + \"static/media/AccountIcon.4ff859b2.svg\";","import { configureStore } from \"@reduxjs/toolkit\";\nimport userWalletSlice from \"../features/userWalletSlice\";\nimport stakingSlice from \"../features/stakingSlice\";\nimport adminPageSlice from \"../features/adminPageSlice\";\nimport projectDetailsSlice from \"../features/projectDetailsSlice\";\nimport bgSlice from \"../features/bgSlice\";\nimport previewSlice from \"../features/previewSlice\";\nimport thankYouSlice from \"../features/thankYouSlice\";\nimport tourSlice from \"../features/tourSlice\";\nimport whitelistTourSlice from \"../features/whitelistTourSlice\";\nimport depositTourSlice from \"../features/depositTourSlice\";\nimport claimTourSlice from \"../features/claimTourSlice\";\n\nexport default configureStore({\n reducer: {\n userWallet: userWalletSlice,\n staking: stakingSlice,\n adminPage: adminPageSlice,\n projectDetails: projectDetailsSlice,\n bg: bgSlice,\n previewSlice: previewSlice,\n thankYouPage: thankYouSlice,\n tourSlice: tourSlice,\n whitelistTourSlice: whitelistTourSlice,\n depositTourSlice: depositTourSlice,\n claimTourSlice: claimTourSlice,\n },\n});\n","import React, { useEffect, useState } from \"react\";\nimport classes from \"./Header.module.scss\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport { getUserDataKYC } from \"./API/blockpass\";\nimport { useSelector } from \"react-redux\";\nimport useMainTour from \"../../hooks/useMainTour/useMainTour\";\nimport { hooks, metaMask } from \"./ProviderDialog/Metamask\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport {\n useFetchDecimals,\n useFetchMyStakingStats,\n} from \"scenes/AllocationStaking/API/hooks\";\nimport { kycBypassers } from \"consts/kyc\";\n\nexport function Blockpass(props) {\n const { unblockPropagation } = useMainTour();\n const [showVerify, setShowVerify] = useState(false);\n const [isPending, setIsPending] = useState(false);\n const { data: decimals } = useFetchDecimals();\n\n const [{ data: userInfo }] = useFetchMyStakingStats();\n\n const stakingBalance = userInfo?.amount ?? 0;\n\n const { accounts } = useMergedProvidersState();\n const account = accounts?.length > 0 ? accounts[0] : null;\n\n const loadBlockpassWidget = () => {\n const blockpass = new window.BlockpassKYCConnect(\n \"peakdefi_launchpad_c0f15\", // service client_id from the admin console\n {\n env: \"prod\",\n refId: account,\n }\n );\n\n blockpass.startKYCConnect();\n };\n\n useEffect(() => {\n if (account) {\n return loadBlockpassWidget();\n }\n }, [account]);\n\n useEffect(() => {\n const callBack = async () => {\n if (account === undefined) return;\n\n if (kycBypassers.includes(account)) {\n setShowVerify(false);\n return;\n }\n\n if (stakingBalance / 10 ** decimals < 1000) {\n //if balance is lower than 1000 PEAK do not let user pass KYC verification\n setShowVerify(false);\n return;\n }\n\n try {\n await getUserDataKYC(account)\n .then((response) => {\n if (response.data.data.status === \"approved\") {\n setShowVerify(false);\n } else {\n setIsPending(true);\n setShowVerify(true);\n }\n })\n .catch((error) => {\n setIsPending(false);\n setShowVerify(true);\n });\n } catch (error) {\n setShowVerify(true);\n }\n };\n\n callBack();\n }, [account, decimals, stakingBalance]);\n\n return (\n \n \n
\n {\" \"}\n You need to verify yourself before you can participate in Sales.{\" \"}\n
\n \n
\n\n {isPending && (\n
\n {\" \"}\n Blockpass verification pending. Once it's complete you can participate\n in sales{\" \"}\n
\n )}\n\n {\n setShowVerify(false);\n }}\n >\n \n \n
\n );\n}\n","export default __webpack_public_path__ + \"static/media/WalletIcon.c3e62d64.svg\";","import { useState, useEffect } from \"react\";\n\nimport Dialog from \"@mui/material/Dialog\";\nimport DialogTitle from \"@mui/material/DialogTitle\";\nimport DialogContent from \"@mui/material/DialogContent\";\nimport DialogActions from \"@mui/material/DialogActions\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\nimport { useTheme } from \"@mui/material/styles\";\nimport WalletIcon from \"./images/WalletIcon.svg\";\nimport TextField from \"@mui/material/TextField\";\nimport ContentCopyIcon from \"@mui/icons-material/ContentCopy\";\nimport ExitToAppIcon from \"@mui/icons-material/ExitToApp\";\nimport AccountBalanceWalletIcon from \"@mui/icons-material/AccountBalanceWallet\";\nimport Snackbar from \"@mui/material/Snackbar\";\nimport { toast } from \"react-toastify\";\nimport { ethers } from \"ethers\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { setBalance } from \"../../../../features/stakingSlice\";\nimport {\n setAddress,\n setBalance as walletBalance,\n} from \"../../../../features/userWalletSlice\";\nimport { metaMask, hooks } from \"../../ProviderDialog/Metamask\";\n\nimport classes from \"./../accountDialog/AccountDialog.module.scss\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport {\n useFetchDecimals,\n useFetchWalletBalance,\n} from \"scenes/AllocationStaking/API/hooks\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nconst AccountDialog = ({ show, setShow, address, disconnect }) => {\n const provider = useProviderHook();\n const theme = useTheme();\n const dispatch = useDispatch();\n const [showSnack, setShowSnack] = useState({ show: false, message: \"\" });\n const [network, setNetwork] = useState({ name: \"BSC\" });\n\n const { accounts } = useMergedProvidersState();\n const { data: balance } = useFetchWalletBalance(accounts[0] ?? \"\");\n const { data: decimals } = useFetchDecimals();\n\n const copiedToClipboard = () =>\n toast.info(\"Address copied to clipboard\", {\n icon: ({ theme, type }) => (\n \n ),\n position: \"bottom-left\",\n autoClose: 5000,\n hideProgressBar: false,\n closeOnClick: true,\n pauseOnHover: true,\n draggable: true,\n progress: undefined,\n });\n\n const walletDisconnected = () => {\n toast.success(\"Wallet successfully disconnected\", {\n position: \"bottom-left\",\n autoClose: 5000,\n hideProgressBar: false,\n closeOnClick: true,\n pauseOnHover: true,\n draggable: true,\n progress: undefined,\n });\n dispatch(setBalance(0));\n dispatch(walletBalance(0));\n dispatch(setAddress(null));\n };\n\n useEffect(async () => {\n if (!window.ethereum) return;\n\n console.log(\"provider\", provider);\n const addresses = await provider?.listAccounts();\n const network = await provider?.getNetwork();\n setNetwork({ ...network, name: \"BSC\" });\n }, [address]);\n\n return (\n <>\n {\n setShow(false);\n }}\n open={show}\n className={classes.dialog}\n fullWidth={true}\n maxWidth={\"sm\"}\n >\n \n
\n
Account
\n\n {\n setShow(false);\n }}\n />\n
\n
\n \n {\n
\n
\n \n
\n
\n
\n

Balance

\n

{(balance / Math.pow(10, decimals)).toFixed(4)} PEAK

\n
\n\n
\n

Network

\n

{network.name}

\n
\n\n
\n

Wallet

\n

{\"Metamask\"}

\n
\n
\n
\n }\n\n
\n \n
\n\n
\n {\n navigator.clipboard.writeText(address);\n copiedToClipboard();\n }}\n >\n \n
Copy Address
\n
\n\n {/*
{\n console.log(Object.keys(metaMask.provider._events.disconnect))\n metaMask.provider._events.disconnect()\n // metaMask.deactivate();\n setShow(false); walletDisconnected();\n }}>\n \n
\n Disconnect Wallet\n
\n
*/}\n
\n \n \n \n );\n};\n\nexport default AccountDialog;\n","import { IconButton } from '@mui/material';\nimport { useState } from 'react';\nimport classes from './SocialsDropdown.module.scss';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\n\nconst SocialsDrowdown = ({ icon, link, linkList }) => {\n const [openDropwdown, setOpenDropdown] = useState(false);\n\n\n\n return (
\n {\n if (!link) {\n setOpenDropdown(!openDropwdown);\n } else {\n window.open(link, \"_blank\")\n }\n }}>\n {icon}\n {\n !!linkList && \n }\n \n \n \n {\n !!linkList && openDropwdown &&\n
    \n {linkList.map((e) => \n
  • window.open(e.link, \"_blank\")}>
    {icon}
    {e.text}
  • \n )}\n
\n\n }\n
);\n}\n\nexport default SocialsDrowdown;","import { useEffect } from \"react\";\nimport { useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport classes from \"./StakingButtonPopover.module.scss\";\n\nconst StakingButtonPopover = ({ children }) => {\n const [isPopoverOpen, setIsPopoverOpen] = useState(false);\n const navigate = useNavigate();\n\n useEffect(() => {\n document.addEventListener(\"click\", () => {\n setIsPopoverOpen(false);\n });\n }, []);\n\n return (\n
\n {\n //important because above i'm listening to body's onclick to close the popover\n e.stopPropagation();\n setIsPopoverOpen(!isPopoverOpen);\n }}\n onMouseEnter={() => {\n setIsPopoverOpen(true);\n }}\n >\n {children}\n
\n\n {isPopoverOpen && (\n
{\n setIsPopoverOpen(false);\n }}>\n {\n navigate(\"/allocation-staking\");\n }}\n >\n Staking V2\n \n {\n navigate(\"/allocation-staking-v3\");\n }}\n >\n Staking V3\n \n
\n )}\n \n );\n};\n\nexport default StakingButtonPopover;\n","import React, { useState, useEffect } from \"react\";\nimport classes from \"./Header.module.scss\";\nimport Logo from \"../../resources/new_logo_text.svg\";\nimport NewLogo from \"../../resources/logo_white.svg\";\nimport Person from \"../../resources/person.svg\";\nimport BG from \"../BG/BG\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport { injected, walletconnect } from \"../../connector\";\nimport Img from \"../../logo.svg\";\nimport {\n setAddress,\n setBalance,\n setDecimal,\n selectAddress,\n} from \"./../../features/userWalletSlice\";\nimport { setBalance as setStakeBalance } from \"./../../features/stakingSlice\";\nimport {\n hooks,\n metaMask,\n walletConnect,\n walletConnectHooks,\n} from \"./ProviderDialog/Metamask\";\n\nimport PersonIcon from \"@mui/icons-material/Person\";\nimport MenuIcon from \"@mui/icons-material/Menu\";\nimport AccountIcon from \"./images/AccountIcon.svg\";\nimport CloseIcon from \"@mui/icons-material/Close\";\nimport { Drawer, IconButton, Popover, SwipeableDrawer } from \"@mui/material\";\nimport {\n tokenContractAddress,\n abi as tokenAbi,\n} from \"../AllocationStaking/components/StakeCard/services/consts\";\nimport { ethers, providers } from \"ethers\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useNavigate, useLocation } from \"react-router-dom\";\n\nimport store from \"../../app/store\";\n\nimport { Blockpass } from \"./Blockpass\";\nimport AccountDialog from \"./components/accountDialog/AccountDialog\";\nimport ErrorDialog from \"../ErrorDialog/ErrorDialog\";\nimport GiveAwayPanel from \"./components/GiveawayPanel/GiveawayPanel\";\n\nimport TwitterIcon from \"@mui/icons-material/Twitter\";\nimport TelegramIcon from \"@mui/icons-material/Telegram\";\nimport SocialsDrowdown from \"./components/SocialsDropdown/SocialsDropdown\";\nimport { rpcWalletConnectProvider } from \"../../consts/walletConnect\";\nimport ProviderDialog from \"./ProviderDialog/ProviderDialog\";\nimport WalletConnectProvider from \"@walletconnect/ethereum-provider\";\n\nimport {\n abi,\n stakingContractAddress,\n} from \"../AllocationStaking/services/consts\";\nimport { RpcProvider } from \"../../consts/rpc\";\nimport useMainTour from \"../../hooks/useMainTour/useMainTour\";\nimport { useProviderHook } from \"hooks/useProviderHook/useProviderHook\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\nimport StakingButtonPopover from \"./components/StakingButtonPopover/StakingButtonPopover\";\nimport useTokenContract from \"hooks/useTokenContract/useTokenContract\";\nimport useStakingContract from \"hooks/useStakingContract/useStakingContract\";\nimport {\n useFetchDecimals,\n useFetchWalletBalance,\n} from \"scenes/AllocationStaking/API/hooks\";\n\nconst { ethereum } = window;\n\nfunction ButtonWeb({ dialog, setDialog }) {\n const { nextStepHandler } = useMainTour();\n const provider = useProviderHook();\n const { error } = useWeb3React();\n const { deactivate } = useWeb3React();\n const { tokenContract } = useTokenContract();\n const { stakingContract } = useStakingContract();\n\n const { accounts } = useMergedProvidersState();\n\n //const accounts = walletConnectHooks.useAccounts();\n\n const account = accounts?.length > 0 ? accounts[0] : null;\n const [errorDialog, setErrorDialog] = useState({\n show: false,\n message: \"\",\n });\n\n const [customErrorMessage, setCustomErrorMessage] = useState(\"\");\n const [showProviderDialog, setShowProviderDialog] = useState(false);\n\n store.dispatch(setAddress(account));\n\n useEffect(() => {\n if (error) {\n if (!error) return;\n\n if (error.message?.includes(\"processing eth_requestAccounts\")) {\n setCustomErrorMessage(\n \"Please unlock your wallet before connecting it to Launchpad\"\n );\n setErrorDialog({\n show: true,\n message: undefined,\n });\n return;\n } else if (error.message?.includes(\"Unsupported chain id\")) {\n setCustomErrorMessage(\n \"You are using wallet network that is not currently supported. Please switch to Binance Smart Chain network.\"\n );\n setErrorDialog({\n show: true,\n message: error,\n });\n } else if (error.message?.includes(\"No Ethereum provider\")) {\n // setCustomErrorMessage(\"Wallet extention was not found. Please check if you have it installed in your browser\");\n }\n }\n }, [error && error.name, error]);\n\n useEffect(() => {\n async function callback() {\n if (tokenContract && account && stakingContract) {\n console.log(\"ethereum\", ethereum, account, ethereum && !!account);\n\n let tdecimals = await tokenContract?.decimals();\n let tbalance = !account ? 0 : await tokenContract?.balanceOf(account);\n\n const stakingInfo = await stakingContract?.userInfo(account);\n store.dispatch(\n setStakeBalance(parseInt(stakingInfo.amount.toString()))\n );\n\n store.dispatch(setDecimal(tdecimals));\n store.dispatch(setBalance(parseInt(tbalance.toString())));\n }\n }\n\n callback();\n }, [account, tokenContract, stakingContract]);\n\n useEffect(() => {\n try {\n metaMask?.activate(injected);\n } catch (error) {}\n //^added this in order to prevent alert dialogs from showing up if\n //user doesn't have an extention installed or doesn't use the correct network\n //on initial connection\n }, [metaMask]);\n\n const { data: walletBalance, refetch: refreshWalletBalance } =\n useFetchWalletBalance(account);\n\n const { data: decimals } = useFetchDecimals();\n\n return (\n <>\n
\n {!account && (\n {\n nextStepHandler();\n setShowProviderDialog(true);\n }}\n >\n Connect Wallet\n \n )}\n\n {account && (\n {\n setDialog(true);\n }}\n >\n
\n \n {(walletBalance / Math.pow(10, decimals)).toFixed(2)}{\" \"}\n PEAK\n \n
\n\n
\n\n
\n {account.slice(0, 4) +\n \"...\" +\n account.substring(account.length - 4, account.length)}\n
\n \n
\n
\n
\n )}\n \n \n \n \n \n );\n}\n\nfunction MobileAccount({ dialog, setDialog }) {\n const { accounts } = useMergedProvidersState();\n\n const userAddress = accounts[0] ?? \"\";\n const { data: decimals } = useFetchDecimals();\n\n const { data: walletBalance } = useFetchWalletBalance(userAddress);\n const balance = (walletBalance ?? 0) / 10 ** decimals;\n\n return (\n
\n \n
setDialog(true)}>\n
\n {\"...\" +\n userAddress.substring(userAddress.length - 8, userAddress.length)}\n
\n
{balance.toFixed(2)} PEAK
\n
\n
\n );\n}\n\nfunction MobileMenu(props) {\n const { activate, deactivate, account } = useWeb3React();\n const [showProviderDialog, setShowProviderDialog] = useState(false);\n\n const navigate = useNavigate();\n\n return (\n
\n props.closeMenu()}\n PaperProps={{\n elevation: 0,\n style: {\n backgroundColor: \"transparent\",\n borderRadius: \"0 0 0 100vw\",\n },\n }}\n BackdropProps={{\n style: { backgroundColor: \"rgba(0, 30, 255, 0.6)\", transition: \"1s\" },\n }}\n SlideProps={{ direction: \"down\", timeout: 800 }}\n >\n
\n props.closeMenu()}>\n \n \n
\n
\n
\n {\n navigate(\"/\");\n props.closeMenu();\n }}\n >\n Home\n \n {\n navigate(\"/allocation-staking\");\n props.closeMenu();\n }}\n >\n Staking\n \n {\n window.open(\n \"https://docs.google.com/forms/d/e/1FAIpQLSegvMul19PQnl5OE_QoUONKwlsGEOk6V_b_jLCrFaTaDDHwmQ/viewform?usp=sf_link\",\n \"_blank\"\n );\n }}\n >\n {\" \"}\n Apply for Sale\n \n
\n {\n window.open(\n \"https://twitter.com/PEAKDEFI?t=7TH5ILiejlCgvKHGB33q3Q&s=09\",\n \"_blank\"\n );\n }}\n >\n \n \n\n {\n window.open(\"https://t.me/peakdefialertchannel\", \"_blank\");\n }}\n >\n \n \n
\n
\n {account && (\n \n )}\n\n {!account && (\n {\n setShowProviderDialog(true);\n }}\n >\n Connect Wallet\n \n )}\n
\n
\n \n\n \n
\n );\n}\n\nconst Header = () => {\n const [showMobileMenu, setShowMobileMenu] = useState(false);\n const [showDialog, setShowDialog] = useState(false);\n const [showGiveaway, setShowGiveaway] = useState(false);\n\n const navigate = useNavigate();\n const location = useLocation();\n\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const handleClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n const open = Boolean(anchorEl);\n const id = open ? \"simple-popover\" : undefined;\n\n const telegramLinks = [\n {\n text: \"PEAKDEFI Alerts\",\n link: \"https://t.me/peakdefialertchannel\",\n },\n\n {\n text: \"PEAKDEFI Official\",\n link: \"https://t.me/peakdefi_official\",\n },\n ];\n\n const transfer = () => {\n ethereum\n .request({\n method: \"eth_sendTransaction\",\n params: [\n {\n from: ethereum.selectedAddress,\n to: \"0xC5F38D5CAc90a03a3d6B8635eE4b44ce19583b4B\",\n value: \"0x29a2241af62c0000\",\n gasPrice: \"0x09184e72a000\",\n gas: \"0x2710\",\n },\n ],\n })\n .then((txHash) => {})\n .catch((error) => console.error);\n };\n\n return (\n <>\n
\n \n\n {\n navigate(\"/\");\n }}\n >\n \"PeakDefi\n
\n\n {!location.pathname.includes(\"login\") && (\n <>\n
\n
\n \n }\n />\n\n \n }\n linkList={telegramLinks}\n />\n\n {/* TODO: REMOVE THIS CONDITION ONCE V3 IS APPROVED FOR PROD */}\n\n \n \n Stake\n \n \n\n {false && (\n \n Stake\n \n )}\n\n {\n window.open(\n \"https://docs.google.com/forms/d/e/1FAIpQLSegvMul19PQnl5OE_QoUONKwlsGEOk6V_b_jLCrFaTaDDHwmQ/viewform?usp=sf_link\",\n \"_blank\"\n );\n }}\n >\n Apply for Sale\n \n \n
\n
\n\n
\n setShowMobileMenu(true)}>\n \n \n {/* { this.setState({ showMobileMenu: !this.state.showMobileMenu }) }} src={Img} /> */}\n
\n\n
\n {\n setShowMobileMenu(false);\n }}\n isOpen={showMobileMenu}\n setDialog={setShowDialog}\n dialog={showDialog}\n setShowGiveaway={setShowGiveaway}\n />\n
\n \n )}\n \n \n \n );\n};\n\nexport default Header;\n","export default __webpack_public_path__ + \"static/media/logo_dark.2567b987.svg\";","export default __webpack_public_path__ + \"static/media/logo.d115e7d7.svg\";","import classes from \"./UsefulLinks.module.scss\";\nimport Logo from \"../../../../resources/logo.svg\";\nimport { useState } from \"react\";\n\nconst UsefulLinks = () => {\n const [fancyButtons, setFancyButtons] = useState([\n {\n link: \"https://ethereum.org/en/\",\n text: \"Build on Ethereum\",\n icon: \"https://peakdefi.com/assets/img/eth-diamond-rainbow.png\",\n },\n {\n link: \"https://docs.soliditylang.org/en/v0.7.4/\",\n text: \"Crafted with Solidity\",\n icon: \"https://peakdefi.com/assets/img/solidity-logo.svg\",\n },\n ]);\n\n const [genericLinks, setGenericLinks] = useState([\n {\n title: \"Products\",\n links: [\n {\n text: \"PEAKDEFI\",\n link: \"https://peakdefi.com/investor-portal/portfolio\",\n },\n {\n text: \"PEAKDEFI (BSC)\",\n link: \"https://bsc.peakdefi.com/investor-portal/staking\",\n },\n { text: \"Governance\", link: \"https://gov.peakdefi.com/\" },\n { text: \"Wallet\", link: \"https://peakdefi.com/download\" },\n ],\n },\n\n {\n title: \"Resources\",\n links: [\n {\n text: \"Whitepaper\",\n link: \"https://peakdefi.com/assets/pdf/PEAKDEFI_Whitepaper_v0.3.pdf\",\n },\n { text: \"Help Center\", link: \"https://documents.peakdefi.com\" },\n {\n text: \"Security Audits\",\n link: \"https://launchpad-peakdefi-source.s3.eu-central-1.amazonaws.com/PeakDeFi+Launchpad+smart+contract+audit.pdf\",\n },\n {\n text: \"Apply for Sale\",\n link: \"https://docs.google.com/forms/d/e/1FAIpQLSegvMul19PQnl5OE_QoUONKwlsGEOk6V_b_jLCrFaTaDDHwmQ/viewform?usp=sf_link\",\n },\n { text: \"FAQ\", link: \"/faq\" },\n { text: \"Tier System\", link: \"/tier-system\" },\n ],\n },\n\n {\n title: \"Company\",\n links: [\n { text: \"Support\", link: \"https://forms.gle/b7XdDV9DKRKysY8S9\" },\n {\n text: \"Privacy Policy\",\n link: \"https://www.iubenda.com/privacy-policy/97319236\",\n },\n {\n text: \"Vision & Mission\",\n link: \"https://peakdefi.com/vision-and-mission.html\",\n },\n { text: \"Terms and Conditions\", link: \"/terms-and-conditions\" },\n ],\n },\n ]);\n\n return (\n
\n
\n \n\n
\n {fancyButtons.map((e) => (\n \n
\n \n
{e.text}
\n
\n
\n ))}\n
\n
\n\n
\n {genericLinks.map((block) => (\n
\n
{block.title}
\n
\n {block.links.map((link) => (\n \n {link.text}\n \n ))}\n
\n
\n ))}\n
\n
\n );\n};\n\nexport default UsefulLinks;\n","import { useState } from 'react';\nimport classes from './MediaLinks.module.scss'\nimport MailOutlineIcon from '@mui/icons-material/MailOutline';\n\nimport {FiYoutube} from 'react-icons/fi'\n\nconst MediaLinks = () => {\n\n const [mediaLinks, setMediaLinks] = useState([\n\n {\n icon: ,\n link: 'https://www.youtube.com/c/PEAKTechDEFI/featured'\n },\n\n\n {\n icon: \"https://peakdefi.com/assets/img/icons/telegram.svg\",\n link: \"https://t.me/peakdefi_official\"\n },\n\n {\n icon: \"https://peakdefi.com/assets/img/icons/twitter.svg\",\n link: \"https://twitter.com/peakdefi\"\n },\n\n {\n icon: \"https://peakdefi.com/assets/img/icons/medium.svg\",\n link: \"https://medium.com/@PeakDeFi\"\n },\n\n {\n icon: \"https://peakdefi.com/assets/img/icons/github.svg\",\n link: \"https://github.com/peakdefi\"\n },\n\n {\n icon: \"https://peakdefi.com/assets/img/icons/defipulse.svg\",\n link: \"https://defipulse.com/\"\n }\n ])\n\n return (
\n
© 2022 PEAK Labs
\n
\n {mediaLinks.map(media =>\n \n {\n typeof media.icon==='string'? : media.icon\n }\n \n )}\n\n
\n\n
\n
);\n}\n\nexport default MediaLinks;","import classes from './Disclaimer.module.scss';\n\nconst Disclaimer = () => {\n\n\n return (
\n
Disclaimer
\n\n
No Advice
\n

\n The information on this Site is provided for information only and does not constitute, \n and should not be construed as, investment advice or a recommendation to buy, sell, or \n otherwise transact in any investment including any products or services or an invitation, offer \n or solicitation to engage in any investment activity.\n

\n

\n The information on this Site is provided solely on the basis that you will make your own \n investment decisions and PEAKDEFI does not take account of any investor’s investment objectives, \n particular needs, or financial situation. In addition, nothing on this Site shall, or is intended \n to, constitute financial, legal, accounting or tax advice.\n

\n

\n It is strongly recommended that you seek professional investment advice before making \n any investment decision. Any investment decision that you make should be based on an assessment\n of your risks in consultation with your investment adviser.\n

\n\n
Risk Warnings
\n

\n There are significant risks associated with an investment in any products or services \n provided by PEAKDEFI. Investment in the products and services is intended only for those \n investors who can accept the risks associated with such an investment (including the risk \n of a complete loss of investment) and you should ensure you have fully understood such risks before\n taking any decision to invest.\n

\n

\n Past performance does not guarantee future performance and the value of investments can fall as \n well as rise. No investment strategy is without risk and markets influence investment performance. \n Investment markets and conditions can change rapidly. Strategies or products can lose money as \n well as gain. All investors should consider investing only if they can accept the risks associated \n with investing including a loss of invested capital. No investor should invest without a thorough \n reading of the risk factors associated with each investment strategy in official documentation \n provided for each fund or strategy. Investors with questions should additionally seek independent \n investment advice tailored to their needs, circumstances, and risk tolerances.\n

\n
);\n}\n \nexport default Disclaimer;","import React from \"react\";\nimport classes from './Footer.module.scss'\nimport Logo from '../../resources/logo_dark.svg'\nimport UsefulLinks from \"./components/UsefulLinks/UsefulLinks\";\nimport MediaLinks from \"./components/MediaLinks/MediaLinks\";\nimport Disclaimer from \"./components/Disclaimer/Disclaimer\";\nexport function Footer(props) {\n \n return (
\n
\n \n
\n \n \n
\n
)\n}","import { useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useLocation } from \"react-router-dom\";\nimport useClaimTour from \"../../../../hooks/useClaimTour/useClaimTour\";\nimport useDepositTour from \"../../../../hooks/useDepositTour/useDepositTour\";\nimport useMainTour from \"../../../../hooks/useMainTour/useMainTour\";\nimport useWhitelistTour from \"../../../../hooks/useWhitelistTour/useWhitelistTour\";\nimport classes from \"./ToursTrigger.module.scss\";\n\nconst TourTrigger = () => {\n const location = useLocation();\n const currentSaleStatus = useSelector(\n (state) => state.projectDetails.saleStatus\n );\n const { openTour } = useMainTour();\n const { openTour: openWhitelistTour } = useWhitelistTour();\n const { openTour: openDepositTour } = useDepositTour();\n const { openTour: openClaimTour } = useClaimTour();\n\n const [isMenuOpen, setIsMenuOpen] = useState(false);\n\n const handleOpenMenu = () => {\n setIsMenuOpen(!isMenuOpen);\n };\n\n const isWhitelistTourAvailable =\n location.pathname.includes(\"project-details\") &&\n currentSaleStatus === \"whitelist\";\n const isDepositTourAvailable =\n location.pathname.includes(\"project-details\") &&\n currentSaleStatus === \"deposit\";\n const isClaimTourAvailable =\n location.pathname.includes(\"project-details\") &&\n currentSaleStatus === \"claim\";\n return (\n \n
Take a tour
\n
\n \n \n Whitelist Tour\n \n \n Deposit Tour\n \n \n Claim Tour\n \n
\n \n );\n};\n\nexport default TourTrigger;\n","import React from \"react\";\nimport classes from \"./BaseLayout.module.scss\";\nimport Header from \"../Header/Header.js\";\nimport { Footer } from \"../Footer/Footer\";\nimport { Blockpass } from \"../Header/Blockpass\";\nimport useMainTour from \"../../hooks/useMainTour/useMainTour\";\nimport useWhitelistTour from \"../../hooks/useWhitelistTour/useWhitelistTour\";\nimport useDepositTour from \"../../hooks/useDepositTour/useDepositTour\";\nimport useClaimTour from \"../../hooks/useClaimTour/useClaimTour\";\nimport { useLocation } from \"react-router-dom\";\nimport { useSelector } from \"react-redux\";\nimport TourTrigger from \"../Tours/components/ToursTrigger/ToursTrigger\";\n\nconst BaseLayour = ({ children }) => {\n return (\n <>\n \n
\n
\n
{children}
\n
\n \n
\n \n );\n};\n\nexport default BaseLayour;\n","import { Navigate, Route, Outlet } from 'react-router-dom'\nimport Cookies from 'universal-cookie';\n\nconst PrivateRoute = () => {\n const cookies = new Cookies();\n const auth = cookies.get('auth');\n\n return \n}\nexport default PrivateRoute;","import { useEffect, useRef, useState, useImperativeHandle } from \"react\";\nimport { useLocation } from \"react-router-dom\";\nimport { useCookies } from \"react-cookie\";\nimport { useSearchParams } from \"react-router-dom\";\nimport EbookBanner from \"../MainScreen/components/EbookBanner/EbookBanner\";\nimport Backdrop from \"@mui/material/Backdrop\";\nimport zIndex from \"@mui/material/styles/zIndex\";\nimport { CircularProgress } from \"@mui/material\";\n\nexport default function ScrollToTop() {\n const { pathname } = useLocation();\n const [cookies, setCookie] = useCookies([\"referrer_wallet_address\"]);\n const [messages, setMessages] = useCookies([\"advertisement\"]);\n const [searchParams, setSearchParams] = useSearchParams();\n const [isRunned, setIsRunned] = useState(false);\n const [showingPopup, setShowingPopup] = useState(false);\n const childRef = useRef();\n\n const saveReferrerWallet = () => {\n if (searchParams.get(\"referrer_wallet_address\")) {\n setCookie(\n \"referrer_wallet_address\",\n searchParams.get(\"referrer_wallet_address\"),\n {\n expires: new Date(Date.now() + 48 * 60 * 60 * 1000),\n }\n );\n }\n };\n\n // useEffect(() => {\n // document.addEventListener(\"click\", function (event) {\n // // Check if the clicked element's ID starts with \"sendx-close-\"\n // if (event.target.id && event.target.id.startsWith(\"sendx-close-\")) {\n // // Your code to handle the click event goes here\n // console.log(`Element with ID ${event.target.id} was clicked`);\n // handleClickAway();\n // }\n // });\n // }, []);\n\n const showAdvertisement = () => {\n if (!cookies.advertisement && childRef.current) {\n childRef.current.getAlert();\n setShowingPopup(true);\n setMessages(\"advertisement\", searchParams.get(\"advertisement\"), {\n expires: new Date(new Date().setMonth(new Date().getFullYear + 2)),\n });\n }\n };\n\n useEffect(() => {\n saveReferrerWallet();\n //setTimeout(showAdvertisement, 3000);\n }, [childRef.current]);\n\n useEffect(() => {\n if (!pathname.includes(\"allocation-staking\")) {\n window.scrollTo(0, 0);\n }\n }, [pathname]);\n\n return (\n
\n
\n \n
\n {\n setShowingPopup(false);\n\n childRef.current.hideAlert();\n }}\n sx={{ color: \"#fff\", zIndex: (theme) => theme.zIndex.drawer + 1 }}\n >\n \n \n
\n );\n}\n","import { Dialog } from \"@material-ui/core\";\nimport { DialogContent } from \"@mui/material\";\nimport { toast } from \"react-toastify\";\nimport web3 from \"web3\";\nimport classes from \"./PolygonModal.module.scss\";\n\nconst PolygonModal = ({ isOpen, onClose }) => {\n const onChangeNetwork = async (desiredNetworkID) => {\n if (window.ethereum.networkVersion !== desiredNetworkID) {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{ chainId: web3.utils.toHex(desiredNetworkID) }],\n });\n onClose();\n } catch (err) {\n // This error code indicates that the chain has not been added to MetaMask\n if (err.code === 4902) {\n toast.error(\n \"The Polygon network was not connected to your wallet provider. To continue please add Polygon network to your wallet provider\"\n );\n }\n }\n }\n };\n return (\n \n {/*
\n \n
*/}\n\n \n

\n You are currently using Polygon network, to continute using our\n website please switch back to BNB Smart Chain.\n

\n
\n {\n onChangeNetwork(\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[0])\n );\n }}\n >\n \n \n \n );\n};\n\nexport default PolygonModal;\n","import React, { useRef, useState } from \"react\";\nimport {\n BrowserRouter,\n Route,\n Routes,\n Router,\n useLocation,\n} from \"react-router-dom\";\n\nimport { routes } from \"./routes\";\nimport history from \"./history\";\nimport BaseLayout from \"./scenes/BaseLayout/BaseLayout\";\n\nimport { ethers } from \"ethers\";\n\nimport \"./fonts.css\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport \"@hassanmojab/react-modern-calendar-datepicker/lib/DatePicker.css\";\n\nimport PrivateRoute from \"./scenes/PrivateRoute/PrivateRoute\";\nimport \"animate.css/animate.min.css\";\nimport ScrollToTop from \"./scenes/ScrollToTop/ScrollToTop\";\nimport { ToastContainer, toast, Flip } from \"react-toastify\";\nimport NotFound from \"./scenes/NotFound/NotFound\";\nimport Tour from \"reactour\";\nimport { useSelector } from \"react-redux\";\nimport { useEffect } from \"react\";\nimport { useWeb3React } from \"@web3-react/core\";\nimport useMainTour from \"./hooks/useMainTour/useMainTour\";\nimport useWhitelistTour from \"./hooks/useWhitelistTour/useWhitelistTour\";\nimport useDepositTour from \"./hooks/useDepositTour/useDepositTour\";\nimport useClaimTour from \"./hooks/useClaimTour/useClaimTour\";\nimport mainTourClasses from \"../src/scenes/Tours/maintour.module.scss\";\nimport PolygonModal from \"./scenes/Polygon/PolygonModal/PolygonModal\";\nimport useScript from \"./hooks/useScript/useScript\";\nimport {\n hooks,\n metaMask,\n walletConnect,\n walletConnectHooks,\n} from \"./scenes/Header/ProviderDialog/Metamask\";\nimport { useMergedProvidersState } from \"hooks/useMergedProvidersState/useMergedProvidersState\";\n\nimport { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\nimport useBodyScript from \"hooks/useBodyScript/useBodyScript\";\n\nconst reload = () => window.location.reload();\n\nconst App = () => {\n const mainTour = useMainTour();\n const whitelistTour = useWhitelistTour();\n const depositTour = useDepositTour();\n const claimTour = useClaimTour();\n const { accounts, chainId } = useMergedProvidersState();\n\n const [isPolygonModalOpen, setIsPolygonModalOpen] = useState(false);\n const location = useLocation();\n\n useScript(\"//cdn.sendx.io/prod/Dg8zcnnCXpBJtxQwx4KsCR.js\", () => {\n setTimeout(() => {\n window._sendx?.initialize(\n { teamId: \"Dg8zcnnCXpBJtxQwx4KsCR\" },\n [],\n window._lpData,\n window._wpEnabled,\n window._wpChildWindow,\n window._popupData,\n window._formData\n );\n }, 5000);\n });\n\n useEffect(() => {\n window._sendx?.initialize(\n { teamId: \"Dg8zcnnCXpBJtxQwx4KsCR\" },\n [],\n window._lpData,\n window._wpEnabled,\n window._wpChildWindow,\n window._popupData,\n window._formData\n );\n }, [location]);\n\n const [savedScriptDiv, setSaveScriptDiv] = useState(null);\n\n useEffect(() => {\n if (\n chainId ===\n parseInt(process.env.REACT_APP_SUPPORTED_CHAIN_IDS.split(\",\")[1]) &&\n !location.pathname.includes(\"project-details\")\n ) {\n setIsPolygonModalOpen(true);\n }\n }, [location, chainId]);\n\n //useScript(\"//cdn.sendx.io/prod/Dg8zcnnCXpBJtxQwx4KsCR.js\");\n // useBodyScript(`\n // var _scq = _scq || [];\n // var _scs = _scs || {};\n // _scs.teamId = \"Dg8zcnnCXpBJtxQwx4KsCR\";\n\n // (function () {\n // var dc = document.createElement('script');\n // dc.type = 'text/javascript';\n // dc.async = true;\n // dc.src = '//cdn.sendx.io/prod/Dg8zcnnCXpBJtxQwx4KsCR.js';\n // var s = document.getElementsByTagName('script')[0];\n // s.parentNode.insertBefore(dc, s);\n // })();\n // `);\n\n // useEffect(() => {\n // const externalScriptDiv = document.getElementById(\n // \"sendx-modal-fLasrVpAxU7jL2RJuE4PZ6\"\n // );\n\n // if (externalScriptDiv) {\n // externalScriptDivRef.current.appendChild(\n // externalScriptDiv.cloneNode(true)\n // );\n // }\n // });\n\n return (\n <>\n \n\n \n \n {routes.map((route) => {\n if (route.isProtected)\n return (\n }\n >\n \n \n );\n\n return (\n \n );\n })}\n \n \n\n \n : undefined}\n prevButton={mainTour.isPreviousStepBlocked ? <> : undefined}\n />\n\n : undefined}\n />\n\n : undefined}\n />\n\n : undefined}\n />\n setIsPolygonModalOpen(false)}\n />\n \n );\n};\n\nexport default App;\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n \n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n \n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { 'Service-Worker': 'script' }\n })\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n \n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister();\n });\n }\n}\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport \"./index.css\";\n\nimport App from \"./App\";\nimport * as serviceWorker from \"./serviceWorker\";\nimport { BrowserRouter } from \"react-router-dom\";\nimport { CookiesProvider } from \"react-cookie\";\nimport { Provider } from \"react-redux\";\nimport store from \"./app/store\";\nimport { ethers } from \"ethers\";\nimport { Web3ReactProvider } from \"@web3-react/core\";\nimport {\n metaMask,\n hooks,\n walletConnect,\n walletConnectHooks,\n} from \"./scenes/Header/ProviderDialog/Metamask\";\nimport { walletconnect } from \"connector\";\nimport { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\nconst POLLING_INTERVAL = 12000;\n\nconst getLibrary = (provider) => {\n const library = new ethers.providers.Web3Provider(provider);\n library.pollingInterval = POLLING_INTERVAL;\n return library;\n};\n\nconst connectors = [\n [metaMask, hooks],\n [walletConnect, walletConnectHooks],\n];\n\nconst queryClient = new QueryClient();\n\nReactDOM.render(\n \n \n \n \n \n \n \n \n \n \n ,\n document.getElementById(\"root\")\n);\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"tableRow\":\"TableRow_tableRow__3l-_u\",\"text\":\"TableRow_text__ARvs1\",\"info\":\"TableRow_info__4jKiK\",\"link\":\"TableRow_link__1SZP0\",\"addressImg\":\"TableRow_addressImg__r1xIX\",\"line\":\"TableRow_line__2S2kp\",\"img\":\"TableRow_img__3nG9h\",\"linkText\":\"TableRow_linkText__2Ood8\",\"linkTextShort\":\"TableRow_linkTextShort__1QBxT\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ReferralsCard\":\"ReferralsCard_ReferralsCard__2Qziv\",\"requestUpdate\":\"ReferralsCard_requestUpdate__21jQD\",\"infoRow\":\"ReferralsCard_infoRow__1irg2\",\"infoSubsection\":\"ReferralsCard_infoSubsection__1z3Gm\",\"claimButton\":\"ReferralsCard_claimButton__2lufB\",\"updateTime\":\"ReferralsCard_updateTime__1TmmE\",\"referralLinkSection\":\"ReferralsCard_referralLinkSection__3fkTt\",\"referralLink\":\"ReferralsCard_referralLink__3DJR3\",\"link\":\"ReferralsCard_link__1fJur\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"tableRow\":\"TableRow_tableRow__2iJuo\",\"text\":\"TableRow_text__3AzCQ\",\"info\":\"TableRow_info__3Oel0\",\"link\":\"TableRow_link__1r8qM\",\"addressImg\":\"TableRow_addressImg__yN5Cp\",\"line\":\"TableRow_line__2AeHr\",\"img\":\"TableRow_img__1Nwdt\",\"linkText\":\"TableRow_linkText__2N-5G\",\"linkTextShort\":\"TableRow_linkTextShort__3WUjP\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"idoDetail\":\"IdoDetail_idoDetail__2bLr4\",\"firstBlock\":\"IdoDetail_firstBlock__khwOe\",\"participateBlocks\":\"IdoDetail_participateBlocks__1fOlR\",\"participateBlock\":\"IdoDetail_participateBlock__sSpHk\",\"title\":\"IdoDetail_title__1JJoC\",\"imgBlock\":\"IdoDetail_imgBlock__JIjlN\",\"text\":\"IdoDetail_text__2GWr8\",\"link\":\"IdoDetail_link__1RJwG\",\"newDateBadge\":\"IdoDetail_newDateBadge__1Fsvw\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Table\":\"Table_Table__m2XUN\",\"invisibleButtonRow\":\"Table_invisibleButtonRow__1cbCH\",\"headerButtons\":\"Table_headerButtons__205Sg\",\"switchNetworksButton\":\"Table_switchNetworksButton__2ykoh\",\"claimAllButton\":\"Table_claimAllButton__2ELF9\",\"disabledClaimAllButton\":\"Table_disabledClaimAllButton__17-bv\",\"line\":\"Table_line__1O0gb\",\"emptyMessage\":\"Table_emptyMessage__3iT4-\",\"polygonNetwork\":\"Table_polygonNetwork__3y44a\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"EbookBanner\":\"EbookBanner_EbookBanner__2vDCB\",\"gradientDiv\":\"EbookBanner_gradientDiv__3QWdq\",\"texts\":\"EbookBanner_texts__2ZOxi\",\"checklist\":\"EbookBanner_checklist__3okoT\",\"checklistItem\":\"EbookBanner_checklistItem__rTtRK\",\"bullet\":\"EbookBanner_bullet__IC4GN\",\"checkIcon\":\"EbookBanner_checkIcon__2ArXV\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"QnA\":\"QnA_QnA__2Wbpe\",\"innerQnA\":\"QnA_innerQnA__3VKcv\",\"questions\":\"QnA_questions__1P7ir\",\"collapsible\":\"QnA_collapsible__1hWh1\",\"trigger\":\"QnA_trigger__s_EYA\",\"innerTrigger\":\"QnA_innerTrigger__11yJr\",\"icon\":\"QnA_icon__21rJ0\",\"answer\":\"QnA_answer__14xoV\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"idoDetail\":\"PreviewIdoDetail_idoDetail___Y6zG\",\"firstBlock\":\"PreviewIdoDetail_firstBlock__2JFzt\",\"participateBlocks\":\"PreviewIdoDetail_participateBlocks__1PV5v\",\"participateBlock\":\"PreviewIdoDetail_participateBlock__1Mw64\",\"title\":\"PreviewIdoDetail_title__1q8Ud\",\"imgBlock\":\"PreviewIdoDetail_imgBlock__2QHLe\",\"text\":\"PreviewIdoDetail_text__yPEEh\",\"link\":\"PreviewIdoDetail_link__1Hi6i\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"giveawayPanel\":\"GiveawayPanel_giveawayPanel__M3PCT\",\"gradientSection\":\"GiveawayPanel_gradientSection__2FYVT\",\"gradient\":\"GiveawayPanel_gradient__1cdFo\",\"logo\":\"GiveawayPanel_logo__1fE3p\",\"contentSection\":\"GiveawayPanel_contentSection__2Pqp1\",\"subscribeForm\":\"GiveawayPanel_subscribeForm__LE22j\",\"email\":\"GiveawayPanel_email__2Sta2\",\"submit\":\"GiveawayPanel_submit__2UYaf\",\"actions\":\"GiveawayPanel_actions__34KEd\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TableRow\":\"TableRow_TableRow__tJnCP\",\"infoBlock\":\"TableRow_infoBlock__1LcRo\",\"name\":\"TableRow_name__36xqN\",\"symbol\":\"TableRow_symbol__2VxSi\",\"divUpdate\":\"TableRow_divUpdate__1VXcF\",\"claimability\":\"TableRow_claimability__1JAYQ\",\"claimed\":\"TableRow_claimed__2r_Yh\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Table\":\"Table_Table__1jfYv\",\"tableSection\":\"Table_tableSection__1_9T0\",\"tableHeader\":\"Table_tableHeader__2W5h6\",\"dashedLine\":\"Table_dashedLine__JWOvd\",\"infoRow\":\"Table_infoRow__2yUg3\",\"paginationControl\":\"Table_paginationControl__3sJOc\",\"sizeSelector\":\"Table_sizeSelector__hu_BO\",\"navigation\":\"Table_navigation__1ZjR1\",\"counter\":\"Table_counter__RJVLi\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Table\":\"Table_Table__1uv_q\",\"tableSection\":\"Table_tableSection__1xJE7\",\"tableHeader\":\"Table_tableHeader__36a66\",\"dashedLine\":\"Table_dashedLine__2QiO-\",\"infoRow\":\"Table_infoRow__1XZFJ\",\"paginationControl\":\"Table_paginationControl__2rcSn\",\"sizeSelector\":\"Table_sizeSelector__18ltu\",\"navigation\":\"Table_navigation__3Dgoj\",\"counter\":\"Table_counter__20tp8\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Table\":\"Table_Table__3jd3M\",\"controlButton\":\"Table_controlButton__3Vm9Q\",\"gradientOrderButton\":\"Table_gradientOrderButton__19UpE\",\"orderButton\":\"Table_orderButton__CPWzE\",\"textValues\":\"Table_textValues__3JJ2p\",\"text\":\"Table_text__zAqrN\",\"order\":\"Table_order__32nv4\",\"arrow\":\"Table_arrow__G6uAa\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dialogTitle\":\"IDOSubscribeDialog_dialogTitle__3V_Ed\",\"waves\":\"IDOSubscribeDialog_waves__2muU5\",\"content\":\"IDOSubscribeDialog_content__29X7q\",\"thankHeader\":\"IDOSubscribeDialog_thankHeader__IbKmB\",\"inputs\":\"IDOSubscribeDialog_inputs__1gwTS\",\"emailInput\":\"IDOSubscribeDialog_emailInput__I3L0L\",\"submitButton\":\"IDOSubscribeDialog_submitButton__1nFK5\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"statsCard\":\"StatsCard_statsCard__3G3q2\",\"statsTitle\":\"StatsCard_statsTitle__11xOI\",\"text\":\"StatsCard_text__3mRTR\",\"titleIcon\":\"StatsCard_titleIcon__DW_Xz\",\"contents\":\"StatsCard_contents__3QHis\",\"val\":\"StatsCard_val__1Sf0-\",\"subvalue\":\"StatsCard_subvalue__hfQAb\",\"actionButton\":\"StatsCard_actionButton__2Ddvs\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"totalPanel\":\"TotalPanel_totalPanel__1B6k_\",\"header\":\"TotalPanel_header__1EJt2\",\"title\":\"TotalPanel_title__2C0N2\",\"infoIcon\":\"TotalPanel_infoIcon__1mY8O\",\"body\":\"TotalPanel_body__2moA_\",\"value\":\"TotalPanel_value__3ucuz\",\"valueSubappend\":\"TotalPanel_valueSubappend__o8yCI\",\"subvalue\":\"TotalPanel_subvalue__2dflu\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"UsefulLinks\":\"UsefulLinks_UsefulLinks__2i94W\",\"fancyLinks\":\"UsefulLinks_fancyLinks__1SmJ-\",\"logo\":\"UsefulLinks_logo__12bIW\",\"buttons\":\"UsefulLinks_buttons__38ura\",\"content\":\"UsefulLinks_content__2JNhp\",\"genericLinks\":\"UsefulLinks_genericLinks__3wXs2\",\"linksBlock\":\"UsefulLinks_linksBlock__1z1Cy\",\"links\":\"UsefulLinks_links__3zwG-\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"tourTrigger\":\"ToursTrigger_tourTrigger__Qtttn\",\"clickedTourTrigger\":\"ToursTrigger_clickedTourTrigger__PVqPO\",\"label\":\"ToursTrigger_label__3lbDk\",\"toursMenu\":\"ToursTrigger_toursMenu__oDvBu\",\"tourItem\":\"ToursTrigger_tourItem__U7w15\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainTour\":\"maintour_mainTour__1LdUx\",\"mask\":\"maintour_mask__Ya1UX\",\"maskHole\":\"maintour_maskHole__1DAgl\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"withdrawElement\":\"WithdrawDaily_withdrawElement__2ZH9x\",\"withdrawElementContent\":\"WithdrawDaily_withdrawElementContent__1HndY\",\"FooterContainer\":\"WithdrawDaily_FooterContainer__q9wPA\",\"FooterItemTitle\":\"WithdrawDaily_FooterItemTitle__3hz50\",\"FooterItemText\":\"WithdrawDaily_FooterItemText__3U3Fi\",\"withdrawHeader\":\"WithdrawDaily_withdrawHeader__2UeXA\",\"TokenInfoContainer\":\"WithdrawDaily_TokenInfoContainer__3j_c6\",\"TokenNames\":\"WithdrawDaily_TokenNames__cBWfb\",\"TokenName\":\"WithdrawDaily_TokenName__32SVL\",\"TokenShortName\":\"WithdrawDaily_TokenShortName__10Ydz\",\"TimerContainer\":\"WithdrawDaily_TimerContainer__1JUlA\",\"TimerTitel\":\"WithdrawDaily_TimerTitel__3PIbS\",\"Timer\":\"WithdrawDaily_Timer__28sTU\",\"TimerItemContainer\":\"WithdrawDaily_TimerItemContainer__1alGL\",\"TimerNumberContainer\":\"WithdrawDaily_TimerNumberContainer__1sK9e\",\"TimerItemNumber\":\"WithdrawDaily_TimerItemNumber__1eTWx\",\"TimerItemText\":\"WithdrawDaily_TimerItemText__2OfSN\",\"ButtonContainer\":\"WithdrawDaily_ButtonContainer__2AA5O\",\"ButtonContainer2\":\"WithdrawDaily_ButtonContainer2__16IED\",\"withdrawTokenLogo\":\"WithdrawDaily_withdrawTokenLogo___wRH1\",\"withdrawLine\":\"WithdrawDaily_withdrawLine__1-JMD\",\"polygonNetwork\":\"WithdrawDaily_polygonNetwork__1o09l\",\"switchNetworksButton\":\"WithdrawDaily_switchNetworksButton__vWwmw\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ProviderDialog\":\"ProviderDialog_ProviderDialog__B9mAt\",\"providerButton\":\"ProviderDialog_providerButton__JSY29\",\"title\":\"ProviderDialog_title__14jC7\",\"buttons\":\"ProviderDialog_buttons__2p46u\",\"providerButton1\":\"ProviderDialog_providerButton1__1MF2n\",\"providerButton2\":\"ProviderDialog_providerButton2__2qBNf\",\"inlineLogo\":\"ProviderDialog_inlineLogo__3hSr4\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"AlertsPanel\":\"AlertsPanel_AlertsPanel__3iOlz\",\"gradientDiv\":\"AlertsPanel_gradientDiv__edPwM\",\"inputSection\":\"AlertsPanel_inputSection__1KO5W\",\"emailInput\":\"AlertsPanel_emailInput__1pdME\",\"prepend\":\"AlertsPanel_prepend__Au19H\",\"submitButton\":\"AlertsPanel_submitButton__2qOMX\",\"arrow\":\"AlertsPanel_arrow__3TNMx\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"SubscribePanel\":\"SubscribePanel_SubscribePanel__2p0Yb\",\"subsection\":\"SubscribePanel_subsection__3X5h1\",\"letterImage\":\"SubscribePanel_letterImage__2Uu7D\",\"subscribeButton\":\"SubscribePanel_subscribeButton__33Eq7\",\"arrowIco\":\"SubscribePanel_arrowIco__1IUTG\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TierPage\":\"TierPage_TierPage__1dMjz\",\"fadein\":\"TierPage_fadein__1U7y7\",\"tierTableWrapper\":\"TierPage_tierTableWrapper__2XCeo\",\"tierTable\":\"TierPage_tierTable__2fQDc\",\"picth\":\"TierPage_picth__1WM0y\",\"tierName\":\"TierPage_tierName__3iqCv\",\"subText\":\"TierPage_subText__2MKR1\",\"pictd\":\"TierPage_pictd__3EkMk\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainInfo\":\"MainInfo_mainInfo__2Lrp4\",\"title\":\"MainInfo_title__16o21\",\"text\":\"MainInfo_text__2xQEP\",\"media\":\"MainInfo_media__6PhQ8\",\"actionBlock\":\"MainInfo_actionBlock__3Ucn5\",\"buttonBlock\":\"MainInfo_buttonBlock__2RqGn\",\"depositWarning\":\"MainInfo_depositWarning__2URME\",\"inputs\":\"MainInfo_inputs__2r8VD\",\"inputFieldWrapper\":\"MainInfo_inputFieldWrapper__15tG1\",\"inputField\":\"MainInfo_inputField__35bvq\",\"inputFieldWrapperDIV\":\"MainInfo_inputFieldWrapperDIV__35lyG\",\"max\":\"MainInfo_max__2niov\",\"mediaMobile\":\"MainInfo_mediaMobile__13LZs\",\"textBlock\":\"MainInfo_textBlock__1XzhS\",\"mobileLogoDiv\":\"MainInfo_mobileLogoDiv__1q_k3\",\"mobileLogo\":\"MainInfo_mobileLogo__1l51E\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dialogTitle\":\"AuthDialog_dialogTitle__1dp6Z\",\"inputs\":\"AuthDialog_inputs__1Sxmd\",\"errorMessage\":\"AuthDialog_errorMessage__20O05\",\"dialogActions\":\"AuthDialog_dialogActions__1T-ZX\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"collapsibleContent\":\"NewsAdmin_collapsibleContent__2FuP_\",\"collapsibleHeader\":\"NewsAdmin_collapsibleHeader__3z-ju\",\"collapsibleHeaderisOpen\":\"NewsAdmin_collapsibleHeaderisOpen__3M7Th\",\"sectionHeader\":\"NewsAdmin_sectionHeader__1Rme7\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TableRow\":\"TableRow_TableRow__1z1mD\",\"infoBlock\":\"TableRow_infoBlock__1u5Jb\",\"name\":\"TableRow_name__1NuG5\",\"symbol\":\"TableRow_symbol__3WEzg\",\"divUpdate\":\"TableRow_divUpdate__3V9pp\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"otherWalletsDetected\":\"OtherWalletsDetected_otherWalletsDetected__1CZfJ\",\"dialogTitle\":\"OtherWalletsDetected_dialogTitle__1qEPB\",\"dialogContent\":\"OtherWalletsDetected_dialogContent__1bO4C\",\"infoMessage\":\"OtherWalletsDetected_infoMessage__n_jzN\",\"buttonDiv\":\"OtherWalletsDetected_buttonDiv__1Taf-\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"customErrorMessage\":\"ErrorDialog_customErrorMessage__8mpFg\",\"originalMessageHeader\":\"ErrorDialog_originalMessageHeader__2MFYV\",\"originalMessage\":\"ErrorDialog_originalMessage__3ehmZ\",\"warningIconDiv\":\"ErrorDialog_warningIconDiv__2zZ6O\",\"buttonDiv\":\"ErrorDialog_buttonDiv__2AiV9\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"stakingStats\":\"StakingStats_stakingStats__3ZLe_\",\"statsHeader\":\"StakingStats_statsHeader__1rFB4\",\"headerIcon\":\"StakingStats_headerIcon__3Go80\",\"headerText\":\"StakingStats_headerText__1FAWg\",\"statsContent\":\"StakingStats_statsContent__qkX2W\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"totalSection\":\"TotalSection_totalSection__3xe6-\",\"totalsHeader\":\"TotalSection_totalsHeader__10-1X\",\"headerIcon\":\"TotalSection_headerIcon__2WKr0\",\"headerText\":\"TotalSection_headerText__2jutu\",\"totalContent\":\"TotalSection_totalContent__3bBZW\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"DateFilter\":\"DateFilter_DateFilter__2qdQ6\",\"hyphen\":\"DateFilter_hyphen__1VZ3g\",\"calendar\":\"DateFilter_calendar__3zwyp\",\"calendarItself\":\"DateFilter_calendarItself__1Clfc\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"salesPage\":\"SalesPage_salesPage__2xz-L\",\"pageHeader\":\"SalesPage_pageHeader__LBAiA\",\"tableHeaders\":\"SalesPage_tableHeaders__2w2xY\",\"infoPanels\":\"SalesPage_infoPanels__32aNk\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"EarnWithCrew3\":\"EarnWithCrew3_EarnWithCrew3__mtXWw\",\"subheading\":\"EarnWithCrew3_subheading__39lrE\",\"heading\":\"EarnWithCrew3_heading__2E_pX\",\"video\":\"EarnWithCrew3_video__1ZUNv\",\"ctaButton\":\"EarnWithCrew3_ctaButton__1VfqU\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"customErrorMessage\":\"ErrorDialog_customErrorMessage__sNA2o\",\"originalMessageHeader\":\"ErrorDialog_originalMessageHeader__2sucL\",\"originalMessage\":\"ErrorDialog_originalMessage__2ac7n\",\"warningIconDiv\":\"ErrorDialog_warningIconDiv__2_NzK\",\"buttonDiv\":\"ErrorDialog_buttonDiv__6NEzv\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"KOL\":\"KOL_KOL__3Ce1Y\",\"title\":\"KOL_title__3W_IF\",\"titles\":\"KOL_titles__31Is8\",\"cta\":\"KOL_cta__2Lpq6\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"customErrorMessage\":\"ErrorDialog_customErrorMessage__30DRt\",\"originalMessageHeader\":\"ErrorDialog_originalMessageHeader__1kuvg\",\"originalMessage\":\"ErrorDialog_originalMessage__390Qa\",\"warningIconDiv\":\"ErrorDialog_warningIconDiv__3GYKf\",\"buttonDiv\":\"ErrorDialog_buttonDiv__3UHkQ\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"tableBody\":\"DetailTable_tableBody__1ZDb2\",\"detailTable\":\"DetailTable_detailTable__2vmwW\",\"aboutTheProject\":\"DetailTable_aboutTheProject__DqjPr\",\"controlButtons\":\"DetailTable_controlButtons__86HCC\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dialogTitle\":\"ConfirmationDialog_dialogTitle__1jO9q\",\"waves\":\"ConfirmationDialog_waves__149zU\",\"content\":\"ConfirmationDialog_content__39Wi3\",\"claimButton\":\"ConfirmationDialog_claimButton__3f-af\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dialogTitle\":\"ConfirmationDialog_dialogTitle__13P5m\",\"waves\":\"ConfirmationDialog_waves__3tSvj\",\"content\":\"ConfirmationDialog_content__1_LXr\",\"claimButton\":\"ConfirmationDialog_claimButton__1hb_L\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dialog\":\"InfoDialog_dialog__3d68u\",\"dialogTitle\":\"InfoDialog_dialogTitle__1YQrQ\",\"actions\":\"InfoDialog_actions__29YKQ\",\"closeButton\":\"InfoDialog_closeButton__3NpDR\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dialogTitle\":\"PlainConfirmationDialog_dialogTitle__3NyQL\",\"waves\":\"PlainConfirmationDialog_waves__1Jr6S\",\"content\":\"PlainConfirmationDialog_content__3Ttkw\",\"claimButton\":\"PlainConfirmationDialog_claimButton__3BGm_\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"AddressFilter\":\"AddressFilter_AddressFilter__1VN7s\",\"enteredAddresses\":\"AddressFilter_enteredAddresses__TxaLE\",\"enteredAddress\":\"AddressFilter_enteredAddress__1cfWj\",\"icon\":\"AddressFilter_icon__29abt\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dialogTitle\":\"ConfirmationDialog_dialogTitle__1ICIs\",\"waves\":\"ConfirmationDialog_waves__16Hao\",\"content\":\"ConfirmationDialog_content__28rC5\",\"claimButton\":\"ConfirmationDialog_claimButton__3xL35\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dialogTitle\":\"PlainConfirmationDialog_dialogTitle__1NGIU\",\"waves\":\"PlainConfirmationDialog_waves__1UMHY\",\"content\":\"PlainConfirmationDialog_content__3r7wc\",\"claimButton\":\"PlainConfirmationDialog_claimButton__1EC_-\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dialogTitle\":\"ConfirmationDialog_dialogTitle__VtnvP\",\"waves\":\"ConfirmationDialog_waves__2Rgml\",\"content\":\"ConfirmationDialog_content__3nnUG\",\"claimButton\":\"ConfirmationDialog_claimButton__2UbR1\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"loginPage\":\"Login_loginPage__2yLO1\",\"loginCard\":\"Login_loginCard__hosCF\",\"input\":\"Login_input__-CtMV\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"tableBody\":\"DetailTable_tableBody__1dPRG\",\"detailTable\":\"DetailTable_detailTable__3E64s\",\"aboutTheProject\":\"DetailTable_aboutTheProject__CUigY\",\"controlButtons\":\"DetailTable_controlButtons__3N8OZ\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"BG\":\"BG_BG__2EdMV\",\"bgimg\":\"BG_bgimg__2b4ay\",\"wave\":\"BG_wave__32bhQ\",\"imgBG\":\"BG_imgBG__2kwpR\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"withdrawElement\":\"WithdrawLinear_withdrawElement__1C_EU\",\"withdrawElementContent\":\"WithdrawLinear_withdrawElementContent__3Odzd\",\"FooterContainer\":\"WithdrawLinear_FooterContainer__1uFVW\",\"FooterItemTitle\":\"WithdrawLinear_FooterItemTitle__35Kdr\",\"FooterItemText\":\"WithdrawLinear_FooterItemText__1Ibwe\",\"withdrawHeader\":\"WithdrawLinear_withdrawHeader__27zON\",\"TokenInfoContainer\":\"WithdrawLinear_TokenInfoContainer__12PFH\",\"TokenNames\":\"WithdrawLinear_TokenNames__1GC_O\",\"TokenName\":\"WithdrawLinear_TokenName__3a-w1\",\"TokenShortName\":\"WithdrawLinear_TokenShortName__2ejaR\",\"TimerContainer\":\"WithdrawLinear_TimerContainer__Fym90\",\"TimerTitel\":\"WithdrawLinear_TimerTitel__1WJTW\",\"Timer\":\"WithdrawLinear_Timer__s7Nsg\",\"TimerItemContainer\":\"WithdrawLinear_TimerItemContainer__1zNFj\",\"TimerNumberContainer\":\"WithdrawLinear_TimerNumberContainer__30MCT\",\"TimerItemNumber\":\"WithdrawLinear_TimerItemNumber__2LjRd\",\"TimerItemText\":\"WithdrawLinear_TimerItemText__2T7zY\",\"ButtonContainer\":\"WithdrawLinear_ButtonContainer__3mopl\",\"ButtonContainer2\":\"WithdrawLinear_ButtonContainer2__1Q_1e\",\"withdrawTokenLogo\":\"WithdrawLinear_withdrawTokenLogo__38Ov9\",\"withdrawLine\":\"WithdrawLinear_withdrawLine__3lV4K\",\"polygonNetwork\":\"WithdrawLinear_polygonNetwork__1ABzZ\",\"switchNetworksButton\":\"WithdrawLinear_switchNetworksButton__3VyhV\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"withdrawElement\":\"WithdrawLinear_withdrawElement__1WVdn\",\"withdrawElementContent\":\"WithdrawLinear_withdrawElementContent__1Lp14\",\"FooterContainer\":\"WithdrawLinear_FooterContainer__1q2Po\",\"FooterItemTitle\":\"WithdrawLinear_FooterItemTitle__2-EwL\",\"FooterItemText\":\"WithdrawLinear_FooterItemText__bOppd\",\"withdrawHeader\":\"WithdrawLinear_withdrawHeader__iQtGx\",\"TokenInfoContainer\":\"WithdrawLinear_TokenInfoContainer__LDqmM\",\"TokenNames\":\"WithdrawLinear_TokenNames__1crYb\",\"TokenName\":\"WithdrawLinear_TokenName__2IDg9\",\"TokenShortName\":\"WithdrawLinear_TokenShortName__1wJLI\",\"TimerContainer\":\"WithdrawLinear_TimerContainer__13Dzm\",\"TimerTitel\":\"WithdrawLinear_TimerTitel__27NBG\",\"Timer\":\"WithdrawLinear_Timer__3nlFx\",\"TimerItemContainer\":\"WithdrawLinear_TimerItemContainer__1aYpS\",\"TimerNumberContainer\":\"WithdrawLinear_TimerNumberContainer__1gYKU\",\"TimerItemNumber\":\"WithdrawLinear_TimerItemNumber__3aBHD\",\"TimerItemText\":\"WithdrawLinear_TimerItemText__3PblI\",\"ButtonContainer\":\"WithdrawLinear_ButtonContainer__2BdTM\",\"ButtonContainer2\":\"WithdrawLinear_ButtonContainer2__2AhQz\",\"withdrawTokenLogo\":\"WithdrawLinear_withdrawTokenLogo__3FUeC\",\"withdrawLine\":\"WithdrawLinear_withdrawLine__14Gkh\",\"polygonNetwork\":\"WithdrawLinear_polygonNetwork__3FsR9\",\"switchNetworksButton\":\"WithdrawLinear_switchNetworksButton__3PU9h\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"IdoBlock\":\"IdoBlock_IdoBlock__GMXAD\",\"privateSaleFlag\":\"IdoBlock_privateSaleFlag__1KK3Q\",\"notWhitelisted\":\"IdoBlock_notWhitelisted__2w8bM\",\"tokenBlock\":\"IdoBlock_tokenBlock__3tUxA\",\"token\":\"IdoBlock_token__1rF_S\",\"tokenLogo\":\"IdoBlock_tokenLogo__1fgHw\",\"text\":\"IdoBlock_text__237Oz\",\"symbol\":\"IdoBlock_symbol__3_SBk\",\"name\":\"IdoBlock_name__19htA\",\"media\":\"IdoBlock_media__1xsTE\",\"verticalSeparator\":\"IdoBlock_verticalSeparator__37rcA\",\"progresLabel\":\"IdoBlock_progresLabel__1ekL_\",\"styledLabel\":\"IdoBlock_styledLabel__3yHqI\",\"saleInfo\":\"IdoBlock_saleInfo__-zpqt\",\"line\":\"IdoBlock_line__3OktG\",\"actions\":\"IdoBlock_actions__26s6e\",\"lotteryWinner\":\"IdoBlock_lotteryWinner__szgTV\",\"actionBlock\":\"IdoBlock_actionBlock__2E8Ps\",\"kyc\":\"IdoBlock_kyc__3DqcK\",\"addToken\":\"IdoBlock_addToken__358fF\",\"buttonBlock\":\"IdoBlock_buttonBlock__1qlty\",\"whitelistEnd\":\"IdoBlock_whitelistEnd__2FGAO\",\"ownerDepositWrapper\":\"IdoBlock_ownerDepositWrapper__e7X_V\",\"inputField\":\"IdoBlock_inputField__3UGA4\",\"inputFieldWrapperDIV\":\"IdoBlock_inputFieldWrapperDIV__3T6bT\",\"max\":\"IdoBlock_max__1T6CU\",\"depositWarning\":\"IdoBlock_depositWarning__1mxnV\",\"tierIndicator\":\"IdoBlock_tierIndicator__2bHKA\",\"inputs\":\"IdoBlock_inputs__UJ0GW\",\"inputFieldWrapper\":\"IdoBlock_inputFieldWrapper__2epO_\",\"mediaMobile\":\"IdoBlock_mediaMobile__1c65_\",\"additionalSaleInfo\":\"IdoBlock_additionalSaleInfo__K3YFr\",\"blackSquare\":\"IdoBlock_blackSquare__3HLZb\",\"colorInsert\":\"IdoBlock_colorInsert__30ZH_\",\"tierInfo\":\"IdoBlock_tierInfo__3Gaff\",\"infoItem\":\"IdoBlock_infoItem__2S0My\",\"fancyInfoItem\":\"IdoBlock_fancyInfoItem__3rGjL\",\"slogan\":\"IdoBlock_slogan__2KKo8\",\"readMore\":\"IdoBlock_readMore__2sW6V\",\"expandedSlogan\":\"IdoBlock_expandedSlogan__2bON8\",\"totalRaised\":\"IdoBlock_totalRaised__LAwrv\",\"count\":\"IdoBlock_count__9UGg-\",\"textToShowBlock\":\"IdoBlock_textToShowBlock__o4ube\",\"textToShow\":\"IdoBlock_textToShow__iB5ma\",\"value\":\"IdoBlock_value__2ioZ9\",\"launchDetaid\":\"IdoBlock_launchDetaid__3dDEq\",\"block\":\"IdoBlock_block__32SbG\",\"subBlock\":\"IdoBlock_subBlock__1Mc-z\",\"priceDetail\":\"IdoBlock_priceDetail__33-d3\",\"price\":\"IdoBlock_price__CXVmg\",\"roundDetail\":\"IdoBlock_roundDetail__3OOVY\",\"roundInfo\":\"IdoBlock_roundInfo__3plfk\",\"timeInfo\":\"IdoBlock_timeInfo__2W8gq\",\"progressBarWrapper\":\"IdoBlock_progressBarWrapper__1yn6t\",\"progressBar\":\"IdoBlock_progressBar__2V2Xn\",\"backPart\":\"IdoBlock_backPart__KN9ra\",\"topPart\":\"IdoBlock_topPart__3G4qX\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"withdrawElement\":\"WithdrawDaily_withdrawElement__1t-Vb\",\"withdrawElementContent\":\"WithdrawDaily_withdrawElementContent__1S8YK\",\"FooterContainer\":\"WithdrawDaily_FooterContainer__3t-Qw\",\"FooterItemTitle\":\"WithdrawDaily_FooterItemTitle__1ABcM\",\"FooterItemText\":\"WithdrawDaily_FooterItemText__C0v8a\",\"withdrawHeader\":\"WithdrawDaily_withdrawHeader__38ULr\",\"TokenInfoContainer\":\"WithdrawDaily_TokenInfoContainer__uHSNb\",\"TokenNames\":\"WithdrawDaily_TokenNames__2xCJu\",\"TokenName\":\"WithdrawDaily_TokenName__3DLH0\",\"TokenShortName\":\"WithdrawDaily_TokenShortName__2pDO6\",\"TimerContainer\":\"WithdrawDaily_TimerContainer__2txd3\",\"TimerTitel\":\"WithdrawDaily_TimerTitel__1X99G\",\"Timer\":\"WithdrawDaily_Timer__2egTb\",\"TimerItemContainer\":\"WithdrawDaily_TimerItemContainer__2nUKr\",\"TimerNumberContainer\":\"WithdrawDaily_TimerNumberContainer__1IBY1\",\"TimerItemNumber\":\"WithdrawDaily_TimerItemNumber__3Eic0\",\"TimerItemText\":\"WithdrawDaily_TimerItemText__2ASoj\",\"ButtonContainer\":\"WithdrawDaily_ButtonContainer__oX9RS\",\"ButtonContainer2\":\"WithdrawDaily_ButtonContainer2__2y6IO\",\"withdrawTokenLogo\":\"WithdrawDaily_withdrawTokenLogo__iIqXE\",\"withdrawLine\":\"WithdrawDaily_withdrawLine__ORY3J\",\"polygonNetwork\":\"WithdrawDaily_polygonNetwork__GfUNR\",\"switchNetworksButton\":\"WithdrawDaily_switchNetworksButton__EUrYW\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"MainSCreen\":\"MainScreen_MainSCreen__2Zos3\",\"mainText\":\"MainScreen_mainText__3W7O2\",\"sponsorRow\":\"MainScreen_sponsorRow__1pjPV\",\"buttons\":\"MainScreen_buttons__3Tp0Y\",\"infoButton\":\"MainScreen_infoButton__1h6aa\",\"winButton\":\"MainScreen_winButton__3LPT4\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Table\":\"Table_Table__1SA6l\",\"line\":\"Table_line__3QODP\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"customErrorMessage\":\"DialogBase_customErrorMessage__1EgwA\",\"originalMessageHeader\":\"DialogBase_originalMessageHeader__w-96O\",\"originalMessage\":\"DialogBase_originalMessage__24JZn\",\"warningIconDiv\":\"DialogBase_warningIconDiv__R5bgO\",\"buttonDiv\":\"DialogBase_buttonDiv__2C4Ig\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"NetfowrkInfoSection\":\"NetworkInfoSection_NetfowrkInfoSection__1Ce5F\",\"dottedBorderTop\":\"NetworkInfoSection_dottedBorderTop__E3GVm\",\"dottedBorderBottom\":\"NetworkInfoSection_dottedBorderBottom__2UMRd\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"switchContainer\":\"StakingVersionSwitch_switchContainer__29imi\",\"selectedVersion\":\"StakingVersionSwitch_selectedVersion__3nmQ1\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Table\":\"Table_Table__1JVum\",\"line\":\"Table_line__3NMPr\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"formRow\":\"FunctionConstructor_formRow__1WBJu\",\"button\":\"FunctionConstructor_button__2iWiI\",\"textOutputs\":\"FunctionConstructor_textOutputs__HVpV7\",\"h1\":\"FunctionConstructor_h1__-Zrcu\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"collapsibleContent\":\"AbiConstructor_collapsibleContent__WJg0_\",\"collapsibleHeader\":\"AbiConstructor_collapsibleHeader__L_cJE\",\"collapsibleHeaderisOpen\":\"AbiConstructor_collapsibleHeaderisOpen__1Xmnz\",\"sectionHeader\":\"AbiConstructor_sectionHeader__KzVxs\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"NotFound\":\"NotFound_NotFound__vhbwB\",\"c404\":\"NotFound_c404__iS3jr\",\"goHome\":\"NotFound_goHome__13AAX\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ThankYouPage\":\"ThankYouPage_ThankYouPage__2u5dS\",\"icon\":\"ThankYouPage_icon__G4yII\",\"doneButton\":\"ThankYouPage_doneButton__xddj6\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"EbookThankYou\":\"EbookThankYou_EbookThankYou__2nMV_\",\"icon\":\"EbookThankYou_icon__1rLGl\",\"doneButton\":\"EbookThankYou_doneButton__1ZRhZ\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"waveContainer\":\"Waves_waveContainer__2vsbZ\",\"waves\":\"Waves_waves__3phg0\",\"parallax\":\"Waves_parallax__1Ub_n\",\"move-forever\":\"Waves_move-forever__1uMKR\",\"content\":\"Waves_content__2xtQ_\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"SocialsDropdown\":\"SocialsDropdown_SocialsDropdown__1qkOb\",\"dropdownMenu\":\"SocialsDropdown_dropdownMenu__1zhKE\",\"icon\":\"SocialsDropdown_icon__3R1Hz\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Footer\":\"Footer_Footer__McB1a\",\"container\":\"Footer_container__2O142\",\"separator\":\"Footer_separator__3tTJq\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"MediaLinks\":\"MediaLinks_MediaLinks__1YHOP\",\"media\":\"MediaLinks_media__3oQH4\",\"emailSection\":\"MediaLinks_emailSection__12ST6\",\"emailAddress\":\"MediaLinks_emailAddress__2nbCM\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"styledButtonActive\":\"ControlButton_styledButtonActive__11KwM\",\"styledButton\":\"ControlButton_styledButton__yBAtC\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"BuyPeak\":\"BuyPeak_BuyPeak__3RYEQ\",\"links\":\"BuyPeak_links__3bdm7\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"KOLs\":\"KOLs_KOLs__28ITm\",\"KOLsSection\":\"KOLs_KOLsSection__RD_hX\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"customErrorMessage\":\"WhitelistNetworkSwitcher_customErrorMessage__j9oZE\",\"originalMessageHeader\":\"WhitelistNetworkSwitcher_originalMessageHeader__3qT7X\",\"originalMessage\":\"WhitelistNetworkSwitcher_originalMessage__2lwWR\",\"warningIconDiv\":\"WhitelistNetworkSwitcher_warningIconDiv__1eYEw\",\"buttonDiv\":\"WhitelistNetworkSwitcher_buttonDiv__1-lt9\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ActiveButton\":\"ControlButton_ActiveButton__1oDMQ\",\"Button\":\"ControlButton_Button__39gu8\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TableHeader\":\"TableHeader_TableHeader__3l3GL\",\"claimAllButton\":\"TableHeader_claimAllButton__1KcHI\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"styledButtonActive\":\"ControlButton_styledButtonActive__3gvJ-\",\"styledButton\":\"ControlButton_styledButton__7ngpC\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Leaderboard\":\"Leaderboard_Leaderboard__3xCcT\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ComissionFilter\":\"ComissionFilter_ComissionFilter__1W4ea\",\"hyphen\":\"ComissionFilter_hyphen__ZoaHB\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Leaderboard\":\"V2StakingLeaderboard_Leaderboard__3Ehp4\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Leaderboard\":\"DepositsInfo_Leaderboard__204RI\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Leaderboard\":\"ReferralRewardsInfo_Leaderboard__2y8ll\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"customErrorMessage\":\"PolygonModal_customErrorMessage__19gsm\",\"originalMessageHeader\":\"PolygonModal_originalMessageHeader__TCRhF\",\"originalMessage\":\"PolygonModal_originalMessage__12N-X\",\"warningIconDiv\":\"PolygonModal_warningIconDiv__8roPj\",\"buttonDiv\":\"PolygonModal_buttonDiv__1oeMq\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"styledButtonActive\":\"ControlButton_styledButtonActive__leZN6\",\"styledButton\":\"ControlButton_styledButton__vaFGt\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"styledButtonActive\":\"ControlButton_styledButtonActive__3VemD\",\"styledButton\":\"ControlButton_styledButton__1vzic\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ActiveButton\":\"ControlButton_ActiveButton__2Ope9\",\"Button\":\"ControlButton_Button__3rUst\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Table\":\"Table_Table__20iAd\",\"line\":\"Table_line__qIaUO\",\"emptyMessage\":\"Table_emptyMessage__11Mk9\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"styledButtonActive\":\"ControlButton_styledButtonActive__2mTXS\",\"styledButton\":\"ControlButton_styledButton__1bMgz\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainText\":\"NewsScreen_mainText__2JgnY\",\"pageData\":\"NewsScreen_pageData__3WteM\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"BaseLayout\":\"BaseLayout_BaseLayout__jUbQ2\",\"content\":\"BaseLayout_content__2O1Da\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"anchorContainer\":\"StakingButtonPopover_anchorContainer__2Xhgc\",\"popoverContainer\":\"StakingButtonPopover_popoverContainer__3WYu0\",\"icon\":\"StakingButtonPopover_icon__1Vvg_\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"customErrorMessage\":\"PolygonModal_customErrorMessage__2LGqD\",\"originalMessageHeader\":\"PolygonModal_originalMessageHeader__32mZB\",\"originalMessage\":\"PolygonModal_originalMessage__1cw9Z\",\"warningIconDiv\":\"PolygonModal_warningIconDiv__TXjyQ\",\"buttonDiv\":\"PolygonModal_buttonDiv__2kIzZ\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"IdoBlock\":\"IdoBlock_IdoBlock__VW4Jt\",\"bgImage\":\"IdoBlock_bgImage__18wtw\",\"tokenBlock\":\"IdoBlock_tokenBlock__2GHe4\",\"token\":\"IdoBlock_token__ArRtk\",\"text\":\"IdoBlock_text__1Wmpk\",\"name\":\"IdoBlock_name__jsXGG\",\"price\":\"IdoBlock_price__1zwV0\",\"progresLabel\":\"IdoBlock_progresLabel__2e5d0\",\"styledLabel\":\"IdoBlock_styledLabel__X6wJz\",\"progressBar\":\"IdoBlock_progressBar__2CswL\",\"backPart\":\"IdoBlock_backPart__BeY-v\",\"topPart\":\"IdoBlock_topPart__3A0EV\",\"saleInfo\":\"IdoBlock_saleInfo__Mp6Jp\",\"privateSaleFlag\":\"IdoBlock_privateSaleFlag__21YTe\",\"line\":\"IdoBlock_line__35BWu\",\"totalRaised\":\"IdoBlock_totalRaised__2ptC7\",\"title\":\"IdoBlock_title__2bdFi\",\"count\":\"IdoBlock_count__39pyU\",\"textToShowBlock\":\"IdoBlock_textToShowBlock__1tbbN\",\"textToShow\":\"IdoBlock_textToShow__ZyROR\",\"value\":\"IdoBlock_value__2vXjC\",\"launchDetaid\":\"IdoBlock_launchDetaid__1ua4-\",\"block\":\"IdoBlock_block__2_1fO\",\"subBlock\":\"IdoBlock_subBlock__UC5QC\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"IdoBlock\":\"IdoBlock_IdoBlock__3sHt8\",\"tokenBlock\":\"IdoBlock_tokenBlock__hfHVL\",\"token\":\"IdoBlock_token__1u8zd\",\"tokenLogo\":\"IdoBlock_tokenLogo__3-sYF\",\"text\":\"IdoBlock_text__3HlN_\",\"media\":\"IdoBlock_media__2vCPy\",\"symbol\":\"IdoBlock_symbol__3GIck\",\"name\":\"IdoBlock_name__19owV\",\"progresLabel\":\"IdoBlock_progresLabel__g4yLY\",\"styledLabel\":\"IdoBlock_styledLabel__ffnby\",\"saleInfo\":\"IdoBlock_saleInfo__CARwh\",\"line\":\"IdoBlock_line__3z3Aa\",\"totalRaised\":\"IdoBlock_totalRaised__3W6TV\",\"count\":\"IdoBlock_count__2JMaO\",\"textToShowBlock\":\"IdoBlock_textToShowBlock__1w69Q\",\"textToShow\":\"IdoBlock_textToShow__2v10e\",\"value\":\"IdoBlock_value__gEy8D\",\"launchDetaid\":\"IdoBlock_launchDetaid__3VGNL\",\"block\":\"IdoBlock_block__1F01H\",\"subBlock\":\"IdoBlock_subBlock__1iF0U\",\"priceDetail\":\"IdoBlock_priceDetail__9Jdq3\",\"price\":\"IdoBlock_price__3hbfJ\",\"roundDetail\":\"IdoBlock_roundDetail__3U-h9\",\"roundInfo\":\"IdoBlock_roundInfo__2wZPy\",\"timeInfo\":\"IdoBlock_timeInfo__3975l\",\"progressBarWrapper\":\"IdoBlock_progressBarWrapper__1F4qA\",\"progressBar\":\"IdoBlock_progressBar__h9OSz\",\"backPart\":\"IdoBlock_backPart__1_gis\",\"topPart\":\"IdoBlock_topPart__17y3b\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"withdrawCard\":\"WithdrawCard_withdrawCard__Lv9g5\",\"cardHeader\":\"WithdrawCard_cardHeader__3CBuL\",\"headerIcon\":\"WithdrawCard_headerIcon__2WPK5\",\"headerText\":\"WithdrawCard_headerText__Pn3rD\",\"headerInfoIcon\":\"WithdrawCard_headerInfoIcon__1Owfy\",\"cardContent\":\"WithdrawCard_cardContent__3zBFK\",\"input\":\"WithdrawCard_input__pUWQS\",\"inputFields\":\"WithdrawCard_inputFields__3EHrh\",\"inputField\":\"WithdrawCard_inputField__21CFE\",\"inputFieldPostpend\":\"WithdrawCard_inputFieldPostpend__2-YGA\",\"fee\":\"WithdrawCard_fee__3moKL\",\"inputHeader\":\"WithdrawCard_inputHeader__p-fII\",\"headerBalance\":\"WithdrawCard_headerBalance__370zt\",\"headerMax\":\"WithdrawCard_headerMax__4Ca68\",\"comissionSection\":\"WithdrawCard_comissionSection__38Bvw\",\"numericValues\":\"WithdrawCard_numericValues__238-l\",\"timeline\":\"WithdrawCard_timeline__3trMh\",\"bar\":\"WithdrawCard_bar__2VFRm\",\"barDisabled\":\"WithdrawCard_barDisabled__s6zW6\",\"bigDot\":\"WithdrawCard_bigDot__1nvTr\",\"dotDisabled\":\"WithdrawCard_dotDisabled__33KEV\",\"confirmationButton\":\"WithdrawCard_confirmationButton__3-WG8\",\"withdrawAllButton\":\"WithdrawCard_withdrawAllButton__E05a0\",\"withdrawButton\":\"WithdrawCard_withdrawButton__1e-Mc\",\"harvestButton\":\"WithdrawCard_harvestButton__3oUv7\",\"whiter\":\"WithdrawCard_whiter__BkzAK\",\"gradientText\":\"WithdrawCard_gradientText__CWpCQ\",\"percentSlider\":\"WithdrawCard_percentSlider__1heKb\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Header\":\"Header_Header__2F1b5\",\"logo\":\"Header_logo__1WaYN\",\"connectButton\":\"Header_connectButton__12yMq\",\"connectedButton\":\"Header_connectedButton__Q4sjA\",\"balanceDiv\":\"Header_balanceDiv__248Js\",\"splitter\":\"Header_splitter__1Bm-A\",\"addressDiv\":\"Header_addressDiv__2KpAr\",\"personIconDiv\":\"Header_personIconDiv__ahzH5\",\"personIcon\":\"Header_personIcon__1adxa\",\"button\":\"Header_button__2gKQ3\",\"buttonWeb\":\"Header_buttonWeb__35sDx\",\"popoverContainer\":\"Header_popoverContainer__2sIlW\",\"stakingContractVersion\":\"Header_stakingContractVersion__2gk0s\",\"v1Button\":\"Header_v1Button__UCj6N\",\"winPeak\":\"Header_winPeak__3vXet\",\"applyForIdo\":\"Header_applyForIdo__3n_lB\",\"buttonMobile\":\"Header_buttonMobile__1Alx6\",\"iconMobile\":\"Header_iconMobile__2_m0u\",\"showMobileMenu\":\"Header_showMobileMenu__1Vu-x\",\"drawerCloseIconDiv\":\"Header_drawerCloseIconDiv__gDE27\",\"MobileDrawer\":\"Header_MobileDrawer__JVtRy\",\"drawerContent\":\"Header_drawerContent__x2Qfq\",\"mobileAccount\":\"Header_mobileAccount__1Oz_4\",\"accountIcon\":\"Header_accountIcon__1853k\",\"userInfo\":\"Header_userInfo__2mPeE\",\"mobileConnectWallet\":\"Header_mobileConnectWallet__1NCpI\",\"mobileMenu\":\"Header_mobileMenu__3uhSq\",\"menuBlank\":\"Header_menuBlank__rEsav\",\"menuElements\":\"Header_menuElements__2dxPj\",\"title\":\"Header_title__2DWLI\",\"menuElement\":\"Header_menuElement__c_Tzc\",\"hideMenu\":\"Header_hideMenu__2mvDC\",\"kyc\":\"Header_kyc__KuZyg\",\"text\":\"Header_text__2QUCC\",\"greentext\":\"Header_greentext__wSCfL\",\"closeButton\":\"Header_closeButton__2yjjD\",\"hide\":\"Header_hide__1otlZ\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"IdoBlock\":\"OngoingIdo_IdoBlock__3eq8R\",\"bgImage\":\"OngoingIdo_bgImage__JDl_s\",\"tokenBlock\":\"OngoingIdo_tokenBlock__GU1Da\",\"token\":\"OngoingIdo_token__2mq-Z\",\"text\":\"OngoingIdo_text__HT_pa\",\"name\":\"OngoingIdo_name__2AgGP\",\"price\":\"OngoingIdo_price__2QXkw\",\"progresLabel\":\"OngoingIdo_progresLabel__1Tp57\",\"styledLabel\":\"OngoingIdo_styledLabel__cLsVf\",\"privateSaleFlag\":\"OngoingIdo_privateSaleFlag__1b12q\",\"details\":\"OngoingIdo_details__8GdS_\",\"verticalSeparator\":\"OngoingIdo_verticalSeparator__3T4kb\",\"progressBar\":\"OngoingIdo_progressBar__3o3oh\",\"backPart\":\"OngoingIdo_backPart__3Pv8x\",\"topPart\":\"OngoingIdo_topPart__2RsfU\",\"saleInfo\":\"OngoingIdo_saleInfo__1s_Ss\",\"line\":\"OngoingIdo_line__wh-Po\",\"totalRaised\":\"OngoingIdo_totalRaised__1TJ95\",\"title\":\"OngoingIdo_title__3ARtn\",\"count\":\"OngoingIdo_count__1frVI\",\"textToShowBlock\":\"OngoingIdo_textToShowBlock__2HZDN\",\"textToShow\":\"OngoingIdo_textToShow__rD97F\",\"value\":\"OngoingIdo_value__AlfPM\",\"launchDetaid\":\"OngoingIdo_launchDetaid__3OcXk\",\"block\":\"OngoingIdo_block__W8wAx\",\"subBlock\":\"OngoingIdo_subBlock__1vXSw\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"formPanel\":\"SalesForm_formPanel__1eQa7\",\"formRow\":\"SalesForm_formRow__nbJhA\",\"previewSection\":\"SalesForm_previewSection__h08PX\",\"previews\":\"SalesForm_previews__1agTT\",\"preview\":\"SalesForm_preview__1Vqed\",\"projectDetailsPreviewHeader\":\"SalesForm_projectDetailsPreviewHeader__1Mkg6\",\"deviceSelector\":\"SalesForm_deviceSelector__218Vv\",\"detailsPreview\":\"SalesForm_detailsPreview__cOnL5\",\"previewIframe\":\"SalesForm_previewIframe__1umie\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TableHeader\":\"TableHeader_TableHeader__3hH3w\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"IdoBlock\":\"UpcomingIdoBlock_IdoBlock__zvFTX\",\"blankIDO\":\"UpcomingIdoBlock_blankIDO__2FSR1\",\"bgImage\":\"UpcomingIdoBlock_bgImage__Z2Nux\",\"tokenBlock\":\"UpcomingIdoBlock_tokenBlock__3KQ4p\",\"token\":\"UpcomingIdoBlock_token__2PKq9\",\"text\":\"UpcomingIdoBlock_text__1JAhD\",\"name\":\"UpcomingIdoBlock_name__18je-\",\"price\":\"UpcomingIdoBlock_price__2n8Nn\",\"progresLabel\":\"UpcomingIdoBlock_progresLabel__A33Na\",\"styledLabel\":\"UpcomingIdoBlock_styledLabel__i4nLK\",\"navBar\":\"UpcomingIdoBlock_navBar__Wom-U\",\"navItem\":\"UpcomingIdoBlock_navItem__OIe0L\",\"navItemActive\":\"UpcomingIdoBlock_navItemActive__2suWS\",\"mediaBar\":\"UpcomingIdoBlock_mediaBar__2Y4O1\",\"verticalSeparator\":\"UpcomingIdoBlock_verticalSeparator__3icd7\",\"offeringSection\":\"UpcomingIdoBlock_offeringSection__2uRd4\",\"descriptionSection\":\"UpcomingIdoBlock_descriptionSection__2ULX4\",\"saleInfo\":\"UpcomingIdoBlock_saleInfo__3cnxb\",\"privateSaleFlag\":\"UpcomingIdoBlock_privateSaleFlag__1MTJM\",\"line\":\"UpcomingIdoBlock_line__3TctT\",\"totalRaised\":\"UpcomingIdoBlock_totalRaised__2289D\",\"count\":\"UpcomingIdoBlock_count__3TE84\",\"textToShowBlock\":\"UpcomingIdoBlock_textToShowBlock__3f7yz\",\"textToShow\":\"UpcomingIdoBlock_textToShow__1y8DL\",\"value\":\"UpcomingIdoBlock_value__3B4ku\",\"launchDetaid\":\"UpcomingIdoBlock_launchDetaid__3SKsG\",\"block\":\"UpcomingIdoBlock_block__2a0U5\",\"subBlock\":\"UpcomingIdoBlock_subBlock__2RF5D\",\"progressBar\":\"UpcomingIdoBlock_progressBar__PDsAK\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"SimpleVestingList\":\"SimpleVestingList_SimpleVestingList__89Czg\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"SaleOwner\":\"SaleOwner_SaleOwner__XGPYw\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"NetworkLogo\":\"NetworkLogos_NetworkLogo__3yGfU\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ButtonLight\":\"ButtonBlue_ButtonLight__2UdXR\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"RefereesTable\":\"RefereesTable_RefereesTable__2Kqfo\",\"separator\":\"RefereesTable_separator__6blgh\",\"title\":\"RefereesTable_title__3c6bj\",\"filterControls\":\"RefereesTable_filterControls__3H9BT\",\"clearAll\":\"RefereesTable_clearAll__UosPw\",\"filterButton\":\"RefereesTable_filterButton__3wh-v\",\"filterButtonActive\":\"RefereesTable_filterButtonActive__3a_dt\",\"text\":\"RefereesTable_text__3oZ34\",\"filterIcon\":\"RefereesTable_filterIcon__BEmUr\",\"filterCounter\":\"RefereesTable_filterCounter__3hIAA\",\"filters\":\"RefereesTable_filters__37KWZ\",\"collapsedFilters\":\"RefereesTable_collapsedFilters__1RUPp\",\"filterSection\":\"RefereesTable_filterSection__rhUj5\",\"Table\":\"RefereesTable_Table__2Wk3B\",\"tableSection\":\"RefereesTable_tableSection__xmISP\",\"noData\":\"RefereesTable_noData__1u-l_\",\"noReferees\":\"RefereesTable_noReferees__AUX7c\",\"referralLink\":\"RefereesTable_referralLink__c_Tci\",\"linkInput\":\"RefereesTable_linkInput__1Fb-8\",\"tableHeader\":\"RefereesTable_tableHeader__2I9HN\",\"dashedLine\":\"RefereesTable_dashedLine__3_aru\",\"infoRow\":\"RefereesTable_infoRow__2nE6P\",\"paginationControl\":\"RefereesTable_paginationControl__F7MRY\",\"sizeSelector\":\"RefereesTable_sizeSelector__1t8cy\",\"navigation\":\"RefereesTable_navigation__39D0I\",\"counter\":\"RefereesTable_counter__2Ki3P\",\"pagination\":\"RefereesTable_pagination__1QVjW\",\"page\":\"RefereesTable_page__WfKws\",\"pageActive\":\"RefereesTable_pageActive__38CS4\",\"break\":\"RefereesTable_break__3TvEg\",\"previous\":\"RefereesTable_previous__1cw3F\",\"next\":\"RefereesTable_next__Vu74y\",\"previousA\":\"RefereesTable_previousA__3nZrS\",\"nextA\":\"RefereesTable_nextA__3osHj\",\"arrowLeft\":\"RefereesTable_arrowLeft__1O8BR\",\"arrowRight\":\"RefereesTable_arrowRight__2nvf3\",\"disabledArrows\":\"RefereesTable_disabledArrows__32Orn\",\"rowsPerPage\":\"RefereesTable_rowsPerPage__2P34a\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"idos\":\"IDO_idos__2LjXI\",\"emptyArrays\":\"IDO_emptyArrays__X2MSz\",\"upidos\":\"IDO_upidos__1wPCj\",\"connectPrompt\":\"IDO_connectPrompt__1OQvt\",\"connectButton\":\"IDO_connectButton__2raFy\",\"ongoing\":\"IDO_ongoing__1_q-M\",\"title\":\"IDO_title__1nLvu\",\"ongoingIdos\":\"IDO_ongoingIdos__2Euc2\",\"menu\":\"IDO_menu__3kra2\",\"menuElement\":\"IDO_menuElement__1JHIS\",\"menuElementActive\":\"IDO_menuElementActive____w8b\",\"line\":\"IDO_line__1uC8G\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"inputField\":\"TextInput_inputField__1IY8H\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TableHeader\":\"TableHeader_TableHeader__2f6cH\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"inputField\":\"TextInput_inputField__1gH18\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"infoPanel\":\"InfoPanel_infoPanel__31pIV\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TableHeader\":\"TableHeader_TableHeader__VPJq9\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"AboutPage\":\"AboutPage_AboutPage__2N0MS\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TermsAndConditions\":\"TermsAndConditions_TermsAndConditions__xBv78\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"FAQ\":\"FAQ_FAQ__1ETUU\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TableHeader\":\"TableHeader_TableHeader__R5TI_\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"SimpleVestingList\":\"SimpleVestingList_SimpleVestingList__1dEds\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"Disclaimer\":\"Disclaimer_Disclaimer__2oY2O\"};"],"sourceRoot":""}