{"version":3,"sources":["components/Footer.js","components/common/Button.js","components/common/Modal/index.js","hooks/useOnClickOutside.js","wallet/connectors.js","wallet/ethereum.js","components/common/ConnectModal/index.js","components/HidingText/index.tsx","components/Header/index.js","components/AllocationHeader.js","hooks/useContracts.js","utils/getRpcUrl.js","utils/getAddress.js","components/AllocationContainer/index.js","utils/common.js","components/common/BorderCard/index.js","hooks/useBalance.js","components/common/Spinner/index.js","components/AllocationItem/index.js","pages/Allocation/index.js","App.js","index.js"],"names":["Footer","className","style","minWidth","href","target","rel","src","alt","width","color","bgColor","showBorder","onClick","children","uppercase","disabled","cx","transition","borderRadius","padding","fontSize","border","fontWeight","Modal","onClose","title","ref","useRef","handler","useEffect","listener","event","current","contains","document","addEventListener","removeEventListener","useOnClickOutside","querySelector","classList","remove","injected","InjectedConnector","supportedChainIds","walletconnect","WalletConnectConnector","rpc","56","97","qrcode","bridge","switchNetwork","window","ethereum","isConnected","isMetaMask","chainId","a","request","method","params","code","rpcUrls","chainName","nativeCurrency","name","decimals","symbol","blockExplorerUrls","console","error","ConnectModal","props","useWeb3React","activate","active","opened","closeHandle","setError","initNetwork","height","HidingText","defaultText","hidingText","peekOut","Header","str","account","deactivate","useState","isOpen","setIsOpen","disconnectIsPossible","setDisconnectIsPossible","zIndex","Button","log","setTimeout","length","substr","AllocationHeader","RPC_URL","getRpcUrl","httpProvider","Web3","providers","HttpProvider","timeout","useContract","abi","address","web3","library","useMemo","currentProvider","useWeb3","eth","Contract","useBUSDContract","BUSD","useAllocationMarketplaceContract","AllocationMarketplace","AllocationContainer","wei2eth","val","Number","BigInt","noLine","useBalanceOfToken","tokenContract","balance","setBalance","balanceLoading","setBalanceLoading","updateBalance","useCallback","methods","balanceOf","call","b","then","Spinner","animationDuration","size","borderWidth","borderTopColor","borderBottomColor","defaultProps","ALLOWANCE","allocationValues","AllocationItem","tier","price","initAmount","allocationMarketplaceContract","pancakeRouterContract","PancakeRouter","usePancakeRouterContract","BUSDContract","loadingBuy","setLoadingBuy","amount","setAmount","allocationLimit","setAllocationLimit","allocatedAmount","setAllocatedAmount","limit","displayError","text","time","getMinAmountOut","path","getAmountsOut","getDeadline","Math","floor","Date","getTime","getAllowance","allowance","approve","amount2eth","fromExponential","send","from","mint","amountOutMin","handleBuy","parseInt","videoRef","React","createRef","playbackRate","autoPlay","loop","muted","type","undefined","TIERS","Allocation","contact","useBalanceOfBUSD","Array","fill","allocationBalances","setAllocationBalances","allocationPrices","setAllocationPrices","loadingBalances","setLoadingBalances","loadingPrices","setLoadingPrices","loadAllocationBalances","accounts","balanceOfBatch","balances","map","loadAllocationPrices","prices","allocationPrice","tierPrice","push","showConnectWallet","showLoading","showAllocationBody","balanceMessage","ind","App","networkError","isAuthorized","minHeight","display","flexDirection","justifyContent","baseUrl","getElementsByTagName","getAttribute","rootElement","getElementById","ReactDOM","render","basename","getLibrary","provider"],"mappings":"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","file":"static/js/main.40c2b220.chunk.js","sourcesContent":["import React from \"react\";\n\nexport const Footer = () => {\n return (\n
\n \n
\n );\n};\n","import React from \"react\";\nimport cx from \"classnames\";\n\nexport default ({\n color = \"white\",\n bgColor = \"primary\",\n showBorder = false,\n onClick,\n className,\n children,\n uppercase,\n disabled,\n }) => {\n return (\n \n {children}\n \n );\n};\n","import React, {useRef} from \"react\";\nimport useOnClickOutside from \"../../../hooks/useOnClickOutside\";\nimport './index.css'\n\nconst Modal = ({children, onClose, title}) => {\n const ref = useRef(null);\n\n const closeModal = () => {\n document.querySelector(\"body\").classList.remove(\"overflow-hidden\");\n onClose();\n };\n\n useOnClickOutside(ref, () => {\n closeModal();\n });\n\n return (\n \n \n
\n
{title}
\n
\n {children}\n \n \n );\n};\n\nexport default Modal;\n","import {useEffect} from \"react\";\n\nexport default function useOnClickOutside(ref, handler) {\n useEffect(() => {\n const listener = (event) => {\n // Do nothing if clicking ref's element or descendent elements\n if (!ref.current || ref.current.contains(event.target)) {\n return;\n }\n\n handler(event);\n };\n\n document.addEventListener(\"mousedown\", listener);\n document.addEventListener(\"touchstart\", listener);\n\n return () => {\n document.removeEventListener(\"mousedown\", listener);\n document.removeEventListener(\"touchstart\", listener);\n };\n }, [ref, handler]);\n}\n","import {InjectedConnector} from \"@web3-react/injected-connector\";\nimport {WalletConnectConnector} from \"@web3-react/walletconnect-connector\";\nimport Web3 from \"web3\";\n\n// Chain IDs\n// These are the IDs of the Ethereum chains that MetaMask supports by default. Consult chainid.network (opens new window)for more.\n// Hex\tDecimal\tNetwork\n// 0x1\t1\tEthereum Main Network (Mainnet)\n// 0x3\t3\tRopsten Test Network\n// 0x4\t4\tRinkeby Test Network\n// 0x5\t5\tGoerli Test Network\n// 0x2a\t42\tKovan Test Network\nexport const injected = new InjectedConnector({\n supportedChainIds: [56, 97],\n});\n\nexport const walletconnect = new WalletConnectConnector({\n rpc: {\n 56: \"https://bsc-dataseed.binance.org/\",\n 97: \"https://data-seed-prebsc-1-s1.binance.org:8545/\",\n },\n qrcode: true,\n bridge: \"https://bridge.walletconnect.org\",\n});\n\nexport const getLibrary = (provider) => new Web3(provider);\n","export const ethereumConnect = () =>\n window.ethereum.request({method: \"eth_requestAccounts\"});\nexport const isEthereumConnected = window.ethereum\n ? window.ethereum.isConnected()\n : false;\nexport const isEthereumMetaMask = window.ethereum\n ? window.ethereum.isMetaMask\n : null;\nexport const ethereumSendTransaction = (params) =>\n window.ethereum.request({\n method: \"eth_sendTransaction\",\n params,\n });\n\nexport const switchNetwork = async (chainId) => {\n try {\n await window.ethereum.request({\n method: \"wallet_switchEthereumChain\",\n params: [{chainId: \"0x61\"}],\n });\n } catch (switchError) {\n // This error code indicates that the chain has not been added to MetaMask.\n if (switchError.code === 4902) {\n try {\n await window.ethereum.request({\n method: \"wallet_addEthereumChain\",\n params: [\n {\n chainId: \"0x61\",\n rpcUrls: [\"https://data-seed-prebsc-1-s1.binance.org:8545\"],\n chainName: \"BSC Mainnet\",\n nativeCurrency: {name: \"BNB\", decimals: 18, symbol: \"BNB\"},\n blockExplorerUrls: [\"https://testnet.bscscan.com\"],\n },\n ],\n });\n } catch (error) {\n console.error(error);\n }\n }\n }\n};\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, {useEffect} from \"react\";\nimport Modal from \"../Modal\";\nimport './index.css'\nimport {useWeb3React} from \"@web3-react/core\";\nimport {injected, walletconnect, switchNetwork} from \"../../../wallet\";\n\nexport default function ConnectModal(props) {\n const {chainId, activate, active, error} = useWeb3React();\n const {opened, closeHandle, setError} = props;\n\n useEffect(() => {\n if(chainId){\n const initNetwork = async () => {\n setError(56 !== chainId && active);\n if (56 !== chainId) {\n await switchNetwork();\n }\n };\n initNetwork();\n }\n }, [active, chainId, error]);\n\n return (\n <>\n {opened && (\n \n
\n {\n activate(injected);\n // setProvider(\"coinbaseWallet\");\n closeHandle();\n }}\n >\n \n

Metamask

\n \n {\n activate(walletconnect);\n // setProvider(\"coinbaseWallet\");\n closeHandle();\n }}\n >\n \n

Wallet connect

\n \n
\n
\n )}\n \n );\n}\n","import React from \"react\";\nimport './index.css'\n\ntype hidingTextProps = {\n defaultText: string,\n hidingText: string,\n peekOut: boolean\n}\n\nexport const HidingText = ({defaultText, hidingText, peekOut}: hidingTextProps) => {\n\n return (\n <>\n
\n {defaultText}\n
\n
\n {hidingText}\n
\n \n );\n};","import React, {useState} from \"react\";\nimport Button from \"../common/Button.js\";\nimport ConnectModal from \"../common/ConnectModal\";\nimport {useWeb3React} from \"@web3-react/core\";\nimport './index.css'\nimport {HidingText} from \"../HidingText\";\n\nexport const Header = () => {\n const {account, deactivate, active} = useWeb3React();\n const [isOpen, setIsOpen] = useState(false);\n // eslint-disable-next-line no-unused-vars\n const [error, setError] = useState(false);\n const [disconnectIsPossible, setDisconnectIsPossible] = useState(false)\n\n const disconnect = () => {\n if (disconnectIsPossible) {\n console.log({disconnectIsPossible})\n deactivate();\n } else {\n setDisconnectIsPossible(true)\n setTimeout(() => {\n setDisconnectIsPossible(false)\n }, 1500)\n }\n };\n\n function truncate(str) {\n return str.length > 0\n ? str.substr(0, 6) + \"...\" + str.substr(str.length - 4, str.length - 1)\n : str;\n }\n\n return (\n <>\n
\n
\n
\n \n \n \n
\n {!active ? (\n {\n setIsOpen(true);\n }}\n >\n Connect Wallet\n \n ) : (\n
\n
\n \n
\n
\n )}\n
\n
\n {\n setIsOpen(false);\n }}\n />\n \n );\n};","import React from 'react';\n\nexport const AllocationHeader = () => {\n return (\n
\n
\n
\n

Allocation Market

\n

\n Connect your wallet & get allocation for METAMASK shares.\n

\n
\n
\n
\n )\n};\n","import Web3 from \"web3\";\nimport {useWeb3React} from \"@web3-react/core\";\n\nimport {\n getAllocationMarketplaceAddress,\n getBUSDAddress,\n getMMProAddress,\n getPancakeRouterAddress,\n} from \"../utils/getAddress\";\n\nimport MMPRO from \"../contracts/MMPRO.json\";\nimport BUSD from \"../contracts/Busd.json\";\nimport AllocationMarketplace from \"../contracts/AllocationMarketplace.json\";\nimport PancakeRouter from \"../contracts/PancakeRouter.json\"\nimport getRpcUrl from \"../utils/getRpcUrl\";\nimport {useMemo} from \"react\";\n\nconst RPC_URL = getRpcUrl();\nconst httpProvider = new Web3.providers.HttpProvider(RPC_URL, {\n timeout: 10000,\n});\n\nexport const useWeb3 = () => {\n const {library} = useWeb3React();\n return useMemo(() => {\n if (library) {\n return new Web3(library.currentProvider || httpProvider);\n } else {\n return new Web3(httpProvider);\n }\n }, [library]);\n};\n\nconst useContract = (abi, address) => {\n const web3 = useWeb3();\n return useMemo(() => new web3.eth.Contract(abi, address), [web3, abi, address]);\n};\n\nexport const useBUSDContract = () => {\n const abi = useMemo(() => BUSD.abi, []);\n return useContract(abi, getBUSDAddress());\n};\n\nexport const useMMProContract = () => {\n const abi = useMemo(() => MMPRO.abi, []);\n return useContract(abi, getMMProAddress());\n};\n\nexport const useAllocationMarketplaceContract = () => {\n const abi = useMemo(() => AllocationMarketplace.abi, []);\n return useContract(abi, getAllocationMarketplaceAddress());\n};\n\nexport const usePancakeRouterContract = () => {\n const abi = useMemo(() => PancakeRouter.abi, []);\n return useContract(abi, getPancakeRouterAddress());\n}\n","const getRpcUrl = () => {\n return \"https://bsc-dataseed.binance.org/\";\n};\n\nexport default getRpcUrl;\n","export const getBUSDAddress = () => {\n return \"0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56\";\n};\n\nexport const getMMProAddress = () => {\n return \"0x6067490d05F3cF2fdFFC0e353b1f5Fd6E5CCDF70\";\n};\n\nexport const getAllocationMarketplaceAddress = () => {\n return \"0x15f77CB389D16E95ffbeb8ad395Bb140B0E868E3\";\n};\n\nexport const getPancakeRouterAddress = () => {\n return \"0x10ed43c718714eb63d5aa57b78b54704e256024e\";\n};","import React from \"react\";\nimport './index.css'\n\nexport const AllocationContainer = ({children}) => {\n return (\n
\n {children}\n
\n )\n};","/* eslint-disable no-undef */\nexport const wei2eth = (val) => {\n if (val) {\n console.log()\n return Number((BigInt(val) * BigInt(100)) / BigInt(1000000000000000000)) / 100;\n }\n return BigInt(0);\n};\n","import React from \"react\";\nimport './index.css'\n\nexport default ({title, className, noLine, children}) => {\n return (\n \n \n {title}\n \n {children}\n \n );\n};\n","import {useCallback, useEffect, useState} from \"react\";\nimport {useBUSDContract, useMMProContract} from \"./useContracts\";\nimport {useWeb3React} from \"@web3-react/core\";\n\nexport const useBalanceOfToken = (tokenContract) => {\n\n const {account, active} = useWeb3React();\n\n const [balance, setBalance] = useState();\n const [balanceLoading, setBalanceLoading] = useState(true)\n\n const updateBalance = useCallback(async () => {\n if (active) {\n setBalanceLoading(true)\n const b = await tokenContract.methods.balanceOf(account).call();\n setBalance(b)\n setBalanceLoading(false)\n }\n\n }, [tokenContract, account, active])\n\n useEffect(() => {\n\n updateBalance().then()\n }, [updateBalance])\n\n return {balance, balanceLoading, updateBalance}\n};\n\nexport const useBalanceOfBUSD = () => {\n const contact = useBUSDContract()\n return useBalanceOfToken(contact)\n};\n\nexport const useBalanceOfMMPRO = () => {\n const contact = useMMProContract()\n return useBalanceOfToken(contact)\n};","import React from \"react\";\nimport \"./index.css\";\n\nconst Spinner = ({ animationDuration, size, color }) => {\n return (\n \n \n \n \n );\n};\n\nSpinner.defaultProps = {\n animationDuration: 1000,\n size: 40,\n color: \"#2c6fa5\",\n};\n\nexport default Spinner;\n","import React, {useEffect, useState} from \"react\";\nimport Spinner from \"../common/Spinner\";\nimport {wei2eth} from \"../../utils/common\";\nimport {useAllocationMarketplaceContract, useBUSDContract, usePancakeRouterContract} from \"../../hooks/useContracts\";\nimport fromExponential from \"from-exponential\";\nimport {getAllocationMarketplaceAddress, getBUSDAddress, getMMProAddress} from \"../../utils/getAddress\";\nimport {useWeb3React} from \"@web3-react/core\";\nimport './index.css'\nimport {HidingText} from \"../HidingText\";\n\n\nconst INSUFFICIENT_BALANCE_ERROR_MESSAGE = \"Insufficient balance\";\nconst TRANSACTION_ERROR_MESSAGE = \"Transaction failed\";\n\nconst DEADLINE_OVER_NOW = 60 * 5 // 5 min\nconst ALLOWANCE = 10 ** 10 * 10 ** 18\n\nconst allocationValues = ['500', '2,000', '5,000', '10,000', '50,000']\n\nexport const AllocationItem = ({tier, price, initAmount, updateBalance, balance}) => {\n const {account} = useWeb3React();\n\n const allocationMarketplaceContract = useAllocationMarketplaceContract();\n const pancakeRouterContract = usePancakeRouterContract();\n const BUSDContract = useBUSDContract()\n const [loadingBuy, setLoadingBuy] = useState(false)\n const [error, setError] = useState(\"\")\n const [amount, setAmount] = useState(initAmount)\n const [allocationLimit, setAllocationLimit] = useState(0)\n const [allocatedAmount, setAllocatedAmount] = useState(0)\n\n useEffect( () => {\n allocationMarketplaceContract\n .methods\n .allocationLimit(tier)\n .call()\n .then(limit => setAllocationLimit(limit))\n allocationMarketplaceContract\n .methods\n .allocatedAmount(tier)\n .call()\n .then(amount => setAllocatedAmount(amount))\n })\n\n const displayError = (text, time) => {\n setError(text)\n setTimeout(()=>{\n setError(\"\")\n }, time)\n }\n\n const getMinAmountOut = async () => {\n const path = [getBUSDAddress(), getMMProAddress()]\n return (await pancakeRouterContract\n .methods\n .getAmountsOut(price, path)\n .call())[1]\n }\n\n const getDeadline = () => {\n return Math.floor(new Date().getTime() / 1000) + DEADLINE_OVER_NOW;\n }\n\n const getAllowance = async () => {\n return await BUSDContract\n .methods\n .allowance(account, getAllocationMarketplaceAddress())\n .call();\n }\n\n const approve = async () => {\n const amount2eth = fromExponential(ALLOWANCE);\n await BUSDContract\n .methods\n .approve(getAllocationMarketplaceAddress(), amount2eth)\n .send({from: account});\n };\n\n async function mint() {\n const amountOutMin = await getMinAmountOut()\n await allocationMarketplaceContract\n .methods\n .mint(tier, amountOutMin, getDeadline())\n .send({from: account})\n }\n\n const handleBuy = async () => {\n if (loadingBuy){\n return\n }\n\n if (parseInt(price) > parseInt(balance)) {\n displayError(INSUFFICIENT_BALANCE_ERROR_MESSAGE, 2000);\n return\n }\n\n setLoadingBuy(true)\n try {\n const allowance = await getAllowance()\n\n if (parseInt(price) > parseInt(allowance)) {\n await approve()\n }\n await mint()\n await updateBalance()\n setError(\"\")\n setAmount(amount + 1)\n } catch (e) {\n displayError(TRANSACTION_ERROR_MESSAGE, 2000)\n console.log({error: e})\n }\n setLoadingBuy(false)\n\n }\n\n const videoRef = React.createRef();\n\n useEffect(()=>{\n if(videoRef.current){\n videoRef.current.playbackRate = 0.7;\n }\n }, [videoRef])\n\n return (\n \n
0 && `border-t-${tier + 1}`}`}>\n {amount > 0 &&\n
\n Owned\n
\n }\n {amount === 0 &&\n
\n Only {allocationLimit - allocatedAmount} left\n
\n }\n \n {price !== undefined &&\n
\n
\n Allocation up to {allocationValues[tier]}$\n
\n
\n Price: {wei2eth(price)} BUSD\n
\n
\n }\n {amount === 0 &&\n \n {loadingBuy ? (\n \n ) : (\n \n )}\n \n }\n
\n \n )\n\n}","import React, {useCallback, useEffect, useState} from \"react\";\nimport {AllocationHeader} from \"../../components/AllocationHeader\";\nimport {useWeb3React} from \"@web3-react/core\";\nimport {useAllocationMarketplaceContract} from \"../../hooks/useContracts\";\nimport {AllocationContainer} from \"../../components/AllocationContainer\";\nimport {wei2eth} from \"../../utils/common\";\nimport BorderCard from \"../../components/common/BorderCard\"\nimport {useBalanceOfBUSD} from \"../../hooks/useBalance\";\nimport {AllocationItem} from \"../../components/AllocationItem\";\n\nconst TIERS = [0, 1, 2, 3, 4];\n\nexport const Allocation = () => {\n const {active, account} = useWeb3React();\n const allocationMarketplaceContract = useAllocationMarketplaceContract();\n\n const {balance, balanceLoading, updateBalance} = useBalanceOfBUSD(account)\n\n const [allocationBalances, setAllocationBalances] = useState(Array(TIERS.length).fill(0));\n const [allocationPrices, setAllocationPrices] = useState(Array(TIERS.length).fill(undefined));\n const [loadingBalances, setLoadingBalances] = useState(false);\n const [loadingPrices, setLoadingPrices] = useState(false);\n\n const loadAllocationBalances = useCallback(async () => {\n const accounts = Array(TIERS.length).fill(account);\n if (active) {\n const balances = await allocationMarketplaceContract\n .methods\n .balanceOfBatch(accounts, TIERS)\n .call();\n setAllocationBalances(balances.map(val => parseInt(val)));\n }\n }, [active, account, allocationMarketplaceContract]);\n\n const loadAllocationPrices = useCallback(async () => {\n const prices = [];\n\n for (let tier of TIERS) {\n let tierPrice = await allocationMarketplaceContract\n .methods\n .allocationPrice(tier)\n .call();\n prices.push(tierPrice);\n }\n\n setAllocationPrices(prices);\n }, [allocationMarketplaceContract]);\n\n useEffect(() => {\n setLoadingBalances(true);\n loadAllocationBalances()\n .then(() => setLoadingBalances(false));\n }, [loadAllocationBalances]);\n\n useEffect(() => {\n setLoadingPrices(true);\n loadAllocationPrices()\n .then(() => setLoadingPrices(false))\n }, [loadAllocationPrices]);\n\n const showConnectWallet = !active\n const showLoading = loadingBalances && loadingPrices\n const showAllocationBody = !showLoading && !showConnectWallet\n\n const balanceMessage = balanceLoading ? \"Loading...\" : `Available: ${wei2eth(balance)} BUSD`\n\n return (\n
\n \n {showConnectWallet &&
Connect Wallet
}\n {showLoading &&
Loading...
}\n {showAllocationBody &&\n \n \n {TIERS.map((tier, ind) =>\n \n )}\n \n \n }\n\n
\n )\n};\n\n","/* eslint-disable react-hooks/exhaustive-deps */\n/* eslint-disable no-undef */\nimport React, {useEffect} from \"react\";\nimport {useWeb3React} from \"@web3-react/core\";\nimport {Footer} from \"./components/Footer\";\nimport {Header} from \"./components/Header\";\n\nimport {injected} from \"./wallet\";\nimport {Allocation} from \"./pages/Allocation\";\n\nexport const App = () => {\n const {active, activate, networkError} = useWeb3React();\n\n\n useEffect(() => {\n injected.isAuthorized().then((isAuthorized) => {\n if (isAuthorized && !active && !networkError) {\n activate(injected);\n }\n });\n }, [activate, networkError]);\n\n return (\n
\n
\n
\n \n
\n
\n
\n );\n};\n","import \"./styles/tailwind.css\";\nimport \"./styles/index.css\";\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport {BrowserRouter} from \"react-router-dom\";\nimport {Web3ReactProvider} from \"@web3-react/core\";\nimport {App} from \"./App\";\nimport {getLibrary} from \"./wallet\";\n\nconst baseUrl = document.getElementsByTagName(\"base\")[0].getAttribute(\"href\");\nconst rootElement = document.getElementById(\"root\");\n\nReactDOM.render(\n \n \n \n \n ,\n rootElement\n);\n"],"sourceRoot":""}