{"version":3,"sources":["assets/images/zora.png","assets/images/twitter.png","assets/images/medium.svg","assets/images/icon-avatar.svg","assets/images/user.png","context/Web3Context.js","components/Utils/history.js","utils/config.js","utils/init.js","utils/precision.js","components/Utils/AlertModal.js","components/Layout/Header/index.js","components/Layout/Footer/index.js","utils/thegraph.js","components/Dashboard/Overview/index.js","components/Dashboard/RecentProposals/index.js","components/Dashboard/TopAddresses/index.js","components/Dashboard/index.js","components/Proposals/Overview/index.js","components/Proposals/index.js","components/Leaderboard/index.js","components/Utils/SuccessModal.js","utils/constant.js","components/DisplayProposal/ProposalBody/index.js","components/DisplayProposal/ProposalHeader/index.js","components/DisplayProposal/index.js","components/AddressInfo/index.js","components/Vesting/index.js","utils/actionAddress.js","components/Utils/ActionModal.js","components/CreateProposal/index.js","components/Airdrop/index.js","components/App.js","index.js","assets/images/redirect-icon.png","assets/images/logo.svg","assets/images/metamask.png"],"names":["module","exports","Web3Context","createContext","initialState","admin","address","balance","totalSupply","currentVotes","Web3Reducer","state","userData","Web3ContextProvider","props","useReducer","dispatch","Provider","value","children","createHistory","require","createBrowserHistory","config","networkId","zoraAbi","zoraAddress","govAbi","govAddress","vestingAbi","vestingAddress","timelockAbi","timelockAddress","xanaAbi","xanaAddress","airdropAbi","airdropAddress","etherscanLink","initContracts","callback","a","window","correctChainId","web3","Web3","ethereum","request","method","eth","getAccounts","userAddress","zoraContract","Contract","from","govContract","vestingContract","timelockContract","xanaContract","airdropContract","ethInitialized","chainId","autoRefreshOnNetworkChange","on","location","reload","accounts","precision","decimals","String","Decimal","times","pow","Number","dividedBy","AlertModal","open","toggle","Modal","show","onHide","Header","closeButton","Title","Body","Footer","Button","variant","onClick","useState","path","setPath","zoraBalance","setZoraBalance","showError","setShowError","isWrongNetwork","setIsWrongNetwork","useContext","isMetamaskInstalled","fetchBalance","methods","balanceOf","call","guardian","getCurrentVotes","getNetworkName","useEffect","history","listen","pathname","id","className","to","alt","src","logo","style","marginLeft","toFixed","zora","width","toLowerCase","substr","metamask","rel","href","marginTop","display","twitterIcon","mediumIcon","height","marginRight","apiUrl","fetchBlockTimestamp","blockNumber","Promise","resolve","reject","axios","post","variables","headers","then","res","timestamp","data","blocks","catch","error","thegraph","proposalId","proposal","proposals","startBlock","startTime","endBlock","endTime","governance","delegates","console","log","tokenHolders","Overview","governanceData","setGovernanceData","msg","errorModal","setErrorModal","message","target","delegatedVotes","currentDelegates","RecentProposals","setProposals","userBalance","slice","length","map","key","status","description","split","TopAddresses","addresses","setAddresses","totalVoteDelegated","setTotalVoteDelegated","element","userLogo","color","votes","Dashboard","ProposalsOverview","setData","marginBottom","Proposals","date","Leaderboard","SuccessModal","onConfirm","proposalState","ProposalBody","userVote","setUserVote","userVotePower","setUserVotePower","castingVote","setCastingVote","setProposalState","voted","setVoted","total","voter","quantity","supportVotes","setSupportVotes","againstVotes","setAgainstVotes","successModal","setSuccessModal","getLocalDate","unixTimestamp","Date","toDateString","getLocalTime","toLocaleTimeString","getUserCurrentVotes","initialize","supportCount","againstCount","supportVotes1","againstVotes1","forEach","support","push","i","toUpperCase","getProposalState","proposalState1","fontSize","disabled","castVote","send","toString","splice","ProposalHeader","processing","setProcessing","queueing","setQueueing","handleCancel","cancel","handleQueue","queue","handleExecute","execute","proposer","DisplayProposal","useParams","setProposal","fetchData","AddressInfo","delegatedVotesRaw","tokenHoldersRepresentedAmount","delegateInfo","setDelegateInfo","delegating","setDelegating","addressRank","setAddressRank","fetchAddressInfo","tokenBalance","position","redirectIcon","iconAvatar","delegate","vote","Vesting","zoraInLockup","cliffPeriod","vestingPeriod","amountAvailable","vestingStartTime","daysAlreadyPassed","isCliffPeriodPassed","totalTokenVested","setState","beneficiary","amount","details","setDetails","depositing","setDepositing","metamaskError","showMetamaskError","getHoldings","addressInfo","info","totalTokensVested","getAvailableTokens","tokensAlreadyWithdrawn","alreadyWithdrawn","vestedTokens","Math","floor","now","handleVerifyAndDeposit","checkTokenApproval","allowance","tokenApproved","approve","handleDeposit","deposit","isConnected","selectedAddress","withdraw","fontWeight","paddingBottom","textAlign","Row","Col","sm","placeholder","type","onChange","e","step","min","actionAddress","ActionModal","handleSetAction","setTarget","selected","setSelected","targetAddress","setTargetAddress","functions","setFunctions","selectedFunction","setSelectedfunction","size","aria-labelledby","centered","Form","Group","controlId","Label","Control","as","item","name","index","background","CreateProposal","timelockBalance","receiverAddress","releaseAmount","title","detail","actionModal","setActionModal","function","targetContract","setTargetContract","getState","handleVerifyAndSubmit","createProposal","propose","encodeParameters","types","values","abi","rows","float","xmlns","fill","viewBox","d","Airdrop","xanaAmount","setXanaamount","zoraHolders","setZoraholder","zoraClaimFlg","setZoraclaimflg","xanatoClaim","setXanatoclaim","claimButton","setClaimButton","activeButton","setActive","claimed","setClaimed","setStarttime","period","setPeriod","validated","setValidated","timeLeft","setTimeLeft","numberOfXana","XanaBalance","getXanaForUser","Xanatoclaim","period_contract","startAt","startAt_contract","validator","holders","flgClaim","timer","setTimeout","events","setNextAirdropEvent","err","difference","days","hours","minutes","seconds","calculateTimeLeft","clearTimeout","timerComponents","Object","keys","interval","handleClaim","claim","App","routes","exact","ReactDOM","render","document","querySelector","initConnected"],"mappings":"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","file":"static/js/main.fa8a5ae1.chunk.js","sourcesContent":["module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"static/media/twitter.418a7124.png\";","module.exports = __webpack_public_path__ + \"static/media/medium.9af82c58.svg\";","module.exports = __webpack_public_path__ + \"static/media/icon-avatar.072eb02b.svg\";","module.exports = __webpack_public_path__ + \"static/media/user.0441000e.png\";","import React, { createContext, useReducer } from \"react\";\n\nexport const Web3Context = createContext();\n\nconst initialState = {\n admin: \"\",\n address: \"\",\n balance: \"\",\n totalSupply: \"\",\n currentVotes: \"\",\n};\n\nconst Web3Reducer = (state, userData) => {\n state = userData;\n return state;\n};\n\nexport function Web3ContextProvider(props) {\n const [state, dispatch] = useReducer(Web3Reducer, initialState);\n\n return {props.children};\n}\n","const createHistory = require(\"history\").createBrowserHistory;\n\nexport default createHistory();\n","import * as tokenAbi from './abis/tokenAbi.json';\nimport * as govAbi from './abis/govAbi.json';\nimport * as vestingAbi from './abis/vestingAbi.json';\nimport * as timelockAbi from './abis/timelockAbi.json';\nimport * as xanaAbi from './abis/xanaAbi.json';\nimport * as airdropAbi from './abis/airdropAbi.json';\nexport const config = {\n networkId: 42,\n zoraAbi: tokenAbi.default,\n zoraAddress: \"0xa2B2A54ad0cD9286eD0D78CF949ED5273983e9F0\",\n govAbi: govAbi.default,\n govAddress: \"0xb14EbAd2F43EE65262071ae6d992fDA70A3decEf\",\n vestingAbi: vestingAbi.default,\n vestingAddress: \"0x10B62117932aC9B6D012269f071574922e464B83\",\n timelockAbi: timelockAbi.default,\n timelockAddress: \"0x183555C2cCD6c7dE867e3CB06d398fd932eAb17B\",\n xanaAbi: xanaAbi.default,\n xanaAddress: \"0x69599240b82D45Abe83efBB2693A6B6955b92F47\",\n airdropAbi: airdropAbi.default,\n airdropAddress: \"0x5CC52Db224cf4f5ca4627e05AF2Fd0283e772c62\",\n etherscanLink: \"https://kovan.etherscan.io\",\n};\n","import Web3 from 'web3';\nimport { config } from './config';\n\n// Initialize contract & set global variables\nexport async function initContracts(callback) {\n window.correctChainId = config.networkId;\n window.web3 = new Web3(window.ethereum);\n\n await window.ethereum\n .request({ method: 'eth_requestAccounts' })\n\n window.userAddress = (\n await window.web3.eth.getAccounts()\n )[0];\n\n window.zoraContract = new window.web3.eth.Contract(\n config.zoraAbi,\n config.zoraAddress,\n { from: window.userAddress }\n );\n\n window.govContract = new window.web3.eth.Contract(\n config.govAbi,\n config.govAddress,\n { from: window.userAddress }\n );\n\n window.vestingContract = new window.web3.eth.Contract(\n config.vestingAbi,\n config.vestingAddress,\n { from: window.userAddress }\n );\n\n window.timelockContract = new window.web3.eth.Contract(\n config.timelockAbi,\n config.timelockAddress,\n { from: window.userAddress }\n );\n window.xanaContract = new window.web3.eth.Contract(\n config.xanaAbi,\n config.xanaAddress,\n { from: window.userAddress }\n );\n window.airdropContract = new window.web3.eth.Contract(\n config.airdropAbi,\n config.airdropAddress,\n { from: window.userAddress }\n );\n\n window.ethInitialized = true;\n window.chainId = window.ethereum.chainId;\n window.ethereum.autoRefreshOnNetworkChange = false;\n\n window.ethereum.on('accountsChanged', () => {\n window.location.reload();\n });\n\n window.ethereum.on('chainChanged', () => {\n window.location.reload();\n });\n\n if (callback) {\n callback();\n }\n}\n\nexport async function initConnected() {\n const accounts = await window.ethereum\n .request({ method: 'eth_accounts' });\n\n if (\n typeof window.ethereum !== 'undefined'\n && accounts > 0\n ) {\n await initContracts();\n }\n}\n","import { Decimal } from \"decimal.js\";\n\nconst defaultDecimal = 9;\n\nconst add = (value, decimals) => {\n return String(new Decimal(value)\n .times(new Decimal(10).pow(\n decimals ? decimals : defaultDecimal\n )));\n}\n\nconst remove = (value, decimals) => {\n return Number(new Decimal(value)\n .dividedBy(new Decimal(10).pow(\n decimals ? decimals : defaultDecimal\n )));\n}\n\nexport const precision = {\n add,\n remove,\n};\n","import React from \"react\";\nimport {\n Button,\n Modal,\n} from \"react-bootstrap\";\n\nexport default function AlertModal({\n open,\n toggle,\n children,\n}) {\n return (\n \n \n Opps!! Error...\n \n {children}\n \n \n \n \n );\n}\n","import React, { useEffect, useState, useContext } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { initContracts } from \"../../../utils/init\";\nimport logo from \"../../../assets/images/logo.svg\"\nimport zora from \"../../../assets/images/zora.png\"\nimport metamask from \"../../../assets/images/metamask.png\"\nimport \"../../../styles/header.css\";\nimport { precision } from \"../../../utils/precision\";\nimport AlertModal from \"../../Utils/AlertModal\";\nimport history from \"../../Utils/history\";\nimport { Web3Context } from \"../../../context/Web3Context\";\n\nconst Header = () => {\n const [path, setPath] = useState(\"/\");\n const [zoraBalance, setZoraBalance] = useState(null);\n const [showError, setShowError] = useState(false);\n const [isWrongNetwork, setIsWrongNetwork] = useState(false);\n const web3 = useContext(Web3Context);\n\n const handleConnectMetamask = () => {\n if (isMetamaskInstalled()) {\n initContracts(fetchBalance);\n } else {\n setShowError(true);\n }\n };\n\n const isMetamaskInstalled = () => {\n return (typeof window.ethereum !== 'undefined');\n }\n\n const fetchBalance = async () => {\n const balance = await window.zoraContract\n .methods\n .balanceOf(window.userAddress)\n .call();\n\n setZoraBalance(balance);\n\n const totalSupply = await window.zoraContract\n .methods\n .totalSupply()\n .call();\n\n const admin = await window.govContract\n .methods\n .guardian()\n .call();\n\n const currentVotes = await window.zoraContract.methods\n .getCurrentVotes(window.userAddress)\n .call();\n\n const userData = {\n address: window.userAddress,\n balance: balance,\n admin: admin,\n totalSupply: totalSupply,\n currentVotes: currentVotes,\n };\n web3.dispatch(userData);\n }\n\n const getNetworkName = (chainId) => {\n chainId = Number(chainId);\n\n if (chainId === 1) {\n return \"Mainnet\";\n } else if (chainId === 3) {\n return \"Ropsten\";\n } else if (chainId === 4) {\n return \"Rinkeby\";\n } else if (chainId === 42) {\n return \"Kovan\";\n } else {\n return \"Unknown\";\n }\n };\n\n useEffect(() => {\n history.listen(location => {\n setPath(location.pathname);\n });\n\n if (window.userAddress) {\n fetchBalance();\n }\n\n if (window.userAddress &&\n Number(window.chainId) !== Number(window.correctChainId)\n ) {\n setShowError(true);\n setIsWrongNetwork(true);\n }\n }, []);\n\n return (\n
\n
\n
\n
\n \n \n \n
\n\n
\n \n Leaderboard\n \n\n \n Dashboard\n \n\n \n Proposals\n \n \n Airdrop\n \n
\n\n {window.userAddress ?\n
\n
\n {zoraBalance ?\n precision.remove(zoraBalance).toFixed(4) :\n
\n }\n \n
\n
\n : null\n }\n\n
\n \n {window.userAddress ?\n \n
\n {window.userAddress.substr(0, 5)}...\n {window.userAddress.substr(38, 42)}\n
\n \n :\n
\n Connect\n \n
\n }\n
\n
\n\n
\n \n \n \n
\n
\n \n\n
\n
\n
    \n \n Leaderboard\n \n\n \n Dashboard\n \n\n \n Proposals\n \n \n Airdrop\n \n
\n
\n\n \n App\n \n
\n\n setShowError(false)}\n >\n {isWrongNetwork ?\n
\n You have chosen incorrect network\n {getNetworkName(window.chainId)} \n in Metamask.\n
\n Please choose network as\n {getNetworkName(window.correctChainId)} in\n \"Metamask\n
\n :\n
\n You don't have Metamask Wallet Installed.\n
\n Please install\n \"Metamask\n first !!\n
\n }\n \n
\n );\n};\n\nexport default Header;\n","import React from \"react\";\nimport \"../../../styles/footer.css\";\nimport logo from \"../../../assets/images/logo.svg\";\nimport twitterIcon from \"../../../assets/images/twitter.png\";\n\nimport mediumIcon from \"../../../assets/images/medium.svg\";\nconst Footer = () => {\n return (\n \n );\n};\n\nexport default Footer;\n","import axios from 'axios';\nconst apiUrl = \"https://api.thegraph.com/subgraphs/name/qualifydev/zoragover\";\n// const blockApi = \"https://api.thegraph.com/subgraphs/name/blocklytics/ethereum-blocks\";\nconst blockApi = \"https://api.thegraph.com/subgraphs/name/blocklytics/kovan-blocks\";\nconst fetchAggregatedData = () => {\n return new Promise((resolve, reject) => {\n axios.post\n (`${apiUrl}`,\n {\n \"query\": `{\n governance(id: \"GOVERNANCE\") {\n proposals,\n totalDelegates,\n totalTokenHolders,\n currentDelegates,\n currentTokenHolders,\n delegatedVotes,\n delegatedVotesRaw,\n proposalsQueued,\n }\n }`\n }, {\n headers: {\n 'Content-Type': 'application/json',\n }\n })\n .then((res) => {\n resolve(res.data.data.governance);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n\nconst fetchProposal = (proposalId) => {\n return new Promise((resolve, reject) => {\n axios.post\n (`${apiUrl}`,\n {\n \"query\": `\n query ($proposalId: String!) {\n proposals(\n where: {\n id: $proposalId\n }\n ) \n {\n id,\n proposer {\n id,\n },\n targets,\n values,\n signatures,\n calldatas,\n startBlock,\n endBlock,\n description,\n status,\n executionETA,\n votes {\n support,\n votes,\n voter {\n id\n },\n },\n }\n }`,\n variables: {\n proposalId: String(proposalId)\n }\n }, {\n headers: {\n 'Content-Type': 'application/json',\n }\n })\n .then(async (res) => {\n const proposal = res.data.data.proposals[0];\n\n await fetchBlockTimestamp(proposal.startBlock)\n .then((res) => {\n proposal.startTime = res;\n })\n .catch((error) => {\n proposal.startTime = null;\n })\n \n await fetchBlockTimestamp(proposal.endBlock)\n .then((res) => {\n proposal.endTime = res;\n })\n .catch((error) => {\n proposal.endTime = null;\n })\n\n resolve(proposal);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n\nconst fetchProposals = () => {\n return new Promise((resolve, reject) => {\n axios.post\n (`${apiUrl}`,\n {\n \"query\": `{\n proposals(\n orderBy: startBlock,\n orderDirection: desc,\n ) {\n id,\n proposer {\n id,\n },\n targets,\n values,\n signatures,\n calldatas,\n startBlock,\n endBlock,\n description,\n status,\n executionETA,\n votes {\n support,\n votes,\n },\n }\n }`\n }, {\n headers: {\n 'Content-Type': 'application/json',\n }\n })\n .then((res) => {\n resolve(res.data.data.proposals);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n\nconst fetchActiveDelegates = () => {\n return new Promise((resolve, reject) => {\n axios.post\n (`${apiUrl}`,\n {\n \"query\": `{\n delegates(\n first: 100,\n orderBy: delegatedVotesRaw,\n orderDirection: desc,\n where: {delegatedVotes_gt: 0}\n ) {\n id,\n delegatedVotesRaw,\n delegatedVotes,\n tokenHoldersRepresentedAmount,\n tokenHoldersRepresented {\n id,\n },\n votes {\n id,\n support,\n votes,\n proposal {\n id,\n },\n },\n proposals {\n id,\n status,\n },\n },\n }`\n }, {\n headers: {\n 'Content-Type': 'application/json',\n }\n })\n .then((res) => {\n resolve(res.data.data.delegates);\n })\n .catch((error) => {\n console.log(error)\n reject(error);\n });\n });\n};\n\nconst fetchDelegateInfo = (address) => {\n return new Promise((resolve, reject) => {\n axios.post\n (`${apiUrl}`,\n {\n \"query\": `\n query ($address: String!) {\n delegates(\n where: {\n id: $address\n }\n ) \n {\n id,\n delegatedVotes,\n delegatedVotesRaw,\n tokenHoldersRepresentedAmount,\n proposals {\n id,\n description,\n status\n },\n votes {\n id,\n support,\n proposal {\n id,\n description,\n status,\n }\n },\n }\n }`,\n variables: {\n address: String(address)\n }\n }, {\n headers: {\n 'Content-Type': 'application/json',\n }\n })\n .then((res) => {\n resolve(res.data.data.delegates[0]);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n\nconst fetchAddressBalance = (address) => {\n return new Promise((resolve, reject) => {\n axios.post\n (`${apiUrl}`,\n {\n \"query\": `\n query ($address: String!) {\n tokenHolders(\n where: {\n id: $address\n }\n ) \n {\n tokenBalance,\n tokenBalanceRaw,\n }\n }`,\n variables: {\n address: String(address)\n }\n }, {\n headers: {\n 'Content-Type': 'application/json',\n }\n })\n .then((res) => {\n resolve(res.data.data.tokenHolders[0]);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n\nconst fetchHolders = () => {\n return new Promise((resolve, reject) => {\n axios.post\n (`${apiUrl}`,\n {\n \"query\": `{\n tokenHolders(\n orderBy: tokenBalance\n ) {\n id,\n tokenBalance,\n }\n }`\n }, {\n headers: {\n 'Content-Type': 'application/json',\n }\n })\n .then((res) => {\n resolve(res.data.data.tokenHolders);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n\nconst fetchBlockTimestamp = (blockNumber) => {\n return new Promise((resolve, reject) => {\n axios.post\n (`${blockApi}`,\n {\n \"query\": `\n query ($blockNumber: String!) {\n blocks(\n where: {\n number: $blockNumber\n }\n ) \n {\n timestamp\n }\n }`,\n variables: {\n blockNumber: String(blockNumber)\n }\n }, {\n headers: {\n 'Content-Type': 'application/json',\n }\n })\n .then((res) => {\n const timestamp = res.data.data.blocks[0].timestamp;\n resolve(Number(timestamp));\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n\nexport const thegraph = {\n fetchProposal,\n fetchProposals,\n fetchAggregatedData,\n fetchActiveDelegates,\n fetchDelegateInfo,\n fetchAddressBalance,\n fetchBlockTimestamp,\n fetchHolders,\n};\n","import React, { useEffect, useState, useContext } from \"react\";\nimport { config } from \"../../../utils/config\";\nimport { thegraph } from \"../../../utils/thegraph\";\nimport AlertModal from \"../../Utils/AlertModal\";\nimport { Web3Context } from \"../../../context/Web3Context\";\nimport { precision } from \"../../../utils/precision\";\n\nconst Overview = () => {\n const [governanceData, setGovernanceData] = useState({});\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false\n });\n\n const fetchData = () => {\n thegraph.fetchAggregatedData()\n .then((data) => {\n setGovernanceData(data);\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n const userData = useContext(Web3Context);\n const totalSupply = userData.state.totalSupply;\n\n useEffect(() => {\n fetchData();\n }, []);\n\n return (\n
\n

Zora Labs Governance

\n\n
\n
\n
\n \n
\n
{totalSupply? precision.remove(totalSupply): \"-\"} ZORA
\n \n
\n\n
\n
\n View\n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n
\n
\n {governanceData.delegatedVotes ?\n Number(governanceData.delegatedVotes).toFixed(0) :\n null}\n
\n \n
\n
\n
\n\n
\n
\n
\n
\n {governanceData.currentDelegates}\n
\n \n
\n
\n
\n
\n\n setErrorModal({\n ...errorModal, open: false\n })}\n >\n {errorModal.msg}\n \n
\n );\n};\n\nexport default Overview;\n","import React, { useEffect, useState, useContext } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { thegraph } from \"../../../utils/thegraph\";\nimport AlertModal from \"../../Utils/AlertModal\";\nimport { Web3Context } from \"../../../context/Web3Context\";\nimport \"../../../styles/recentProposal.css\";\n\nconst RecentProposals = () => {\n const [proposals, setProposals] = useState([]);\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false\n });\n\n const userData = useContext(Web3Context);\n const userBalance = userData.state.balance;\n const totalSupply = userData.state.totalSupply;\n\n const fetchData = () => {\n thegraph.fetchProposals()\n .then((data) => {\n setProposals(data.slice(0, 3));\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n useEffect(() => {\n fetchData();\n }, []);\n\n return (\n
\n
\n
\n

Recent Proposals

\n {userBalance && userBalance * 100 / totalSupply > 1 ?\n Create Proposal\n : null\n }\n
\n
\n {proposals.length > 0 ?\n (proposals.map((proposal, key) => (\n proposal.status !== \"CANCELLED\" ?\n \n
\n
\n
\n {proposal.id}\n \n \n {proposal.status === \"ACTIVE\" ? \"Active\" : (\n proposal.status === \"QUEUED\"\n ) ? \"In Queue\" : \"Created\"}\n \n {proposal.description.split(\"/#\")[0]}\n
\n
\n
\n
\n
\n

\n {proposal.status}\n

\n
\n
\n \n :\n \n
\n
\n
\n {proposal.id}\n \n \n Failed\n {\" \"}\n {proposal.description.split(\"/#\")[0]}\n
\n
\n
\n
\n
\n

\n {proposal.status}\n

\n
\n
\n \n ))) :\n
\n
\n No Proposal\n
\n
\n }\n
\n {proposals.length > 0 ?\n \n View All Proposals\n \n : null\n }\n
\n\n setErrorModal({\n ...errorModal, open: false\n })}\n >\n {errorModal.msg}\n \n
\n );\n};\n\nexport default RecentProposals;\n","import React, { useEffect, useState } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport userLogo from \"../../../assets/images/user.png\";\nimport { thegraph } from \"../../../utils/thegraph\";\nimport AlertModal from \"../../Utils/AlertModal\";\nimport \"../../../styles/topAddresses.css\";\n\nconst TopAddresses = () => {\n const [addresses, setAddresses] = useState([]);\n const [\n totalVoteDelegated,\n setTotalVoteDelegated\n ] = useState(\"\");\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false\n });\n\n const fetchData = () => {\n thegraph.fetchActiveDelegates()\n .then((data) => {\n setAddresses(data.slice(0, 5));\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n\n thegraph.fetchAggregatedData()\n .then((data) => {\n setTotalVoteDelegated(\n data.delegatedVotes\n );\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n useEffect(() => {\n fetchData();\n }, []);\n\n return (\n
\n
\n
\n

Top Zora Voting Power

\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n {addresses.length > 0 ?\n (addresses.map((element, key) => (\n \n
\n
\n
\n \n \n
\n\n \n {element.id}\n \n \n {element.id.substr(0, 18)}...\n \n
\n
\n\n
\n {Number(element.delegatedVotes).toFixed(0)}\n
\n\n
\n {((Number(element.delegatedVotes) /\n Number(totalVoteDelegated)) * 100).toFixed(0)} %\n
\n\n
\n {element.votes.length}\n
\n \n ))) :\n
\n
\n No Voters\n
\n
\n }\n
\n\n {addresses.length > 0 ?\n \n View All Stakeholders\n \n : null\n }\n
\n\n setErrorModal({\n ...errorModal, open: false\n })}\n >\n {errorModal.msg}\n \n
\n );\n};\n\nexport default TopAddresses;\n","import React from \"react\";\nimport Overview from \"./Overview\";\nimport RecentProposals from \"./RecentProposals\";\nimport TopAddresses from \"./TopAddresses\";\n\nconst Dashboard = () => {\n return (\n <>\n
\n
\n \n
\n\n
\n
\n
\n \n \n
\n
\n
\n
\n \n );\n};\n\nexport default Dashboard;\n","import React, { useEffect, useState } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { thegraph } from \"../../../utils/thegraph\";\nimport AlertModal from \"../../Utils/AlertModal\";\nimport \"../../../styles/proposalsOverview.css\";\n\nconst ProposalsOverview = () => {\n const [data, setData] = useState({});\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false\n });\n\n const fetchData = () => {\n thegraph.fetchAggregatedData()\n .then((data) => {\n setData(data);\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n useEffect(() => {\n fetchData();\n }, []);\n\n return (\n
\n
\n
\n
\n \n

\n ⬅ Dashboard\n

\n \n\n
\n
\n
\n Governance Proposals\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n {data.proposals ? data.proposals :\n \n }\n
\n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n\n setErrorModal({\n ...errorModal, open: false\n })}\n >\n {errorModal.msg}\n \n
\n );\n};\n\nexport default ProposalsOverview;\n","import React, { useEffect, useState, useContext } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { thegraph } from \"../../utils/thegraph\";\nimport ProposalsHeader from \"./Overview\";\nimport AlertModal from \"../Utils/AlertModal\";\nimport { Web3Context } from \"../../context/Web3Context\";\nimport \"../../styles/proposals.css\";\n\nconst Proposals = () => {\n const [proposals, setProposals] = useState([]);\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false\n });\n\n const userData = useContext(Web3Context);\n const userBalance = userData.state.balance;\n const totalSupply = userData.state.totalSupply;\n\n const fetchData = () => {\n thegraph.fetchProposals()\n .then((data) => {\n setProposals(data);\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n useEffect(() => {\n fetchData();\n }, []);\n\n return (\n <>\n \n\n
\n
\n
\n
\n
\n

All Proposals

\n
\n\n
\n

Recent Proposals

\n {userBalance && userBalance * 100 / totalSupply > 1 ?\n Create Proposal\n : null\n }\n
\n\n
\n {proposals.map((proposal, key) => (\n proposal.status !== \"CANCELLED\" ?\n \n
\n
\n
\n {proposal.description.split(\"/#\")[0]}\n
\n
\n
\n {proposal.status === \"ACTIVE\" ? \"Active\" : (\n proposal.status === \"QUEUED\"\n ) ? \"In Queue\" : \"Created\"}\n
\n
\n {proposal.id}\n \n {proposal.status} {proposal.date}\n
\n
\n
\n
\n
\n
\n

\n {proposal.status}\n

\n
\n
\n \n :\n \n
\n
\n
\n {proposal.description.split(\"/#\")[0]}\n
\n
\n
\n Failed\n
\n
\n {proposal.id}\n \n {proposal.status} {proposal.date}\n
\n
\n
\n
\n
\n
\n

\n {proposal.status}\n

\n
\n
\n \n ))}\n\n {proposals.length === 0 ?\n
\n
\n
\n
\n
\n —\n
\n
\n
\n
\n

\n —\n

\n
\n
\n
\n : null\n }\n
\n
\n
\n
\n
\n\n setErrorModal({\n ...errorModal, open: false\n })}\n >\n {errorModal.msg}\n \n \n );\n};\n\nexport default Proposals;\n","import React, { useEffect, useState } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { thegraph } from \"../../utils/thegraph\";\nimport userLogo from \"../../assets/images/user.png\";\nimport \"../../styles/leaderboard.css\";\nimport AlertModal from \"../Utils/AlertModal\";\n\nconst Leaderboard = () => {\n const [addresses, setAddresses] = useState([]);\n const [\n totalVoteDelegated,\n setTotalVoteDelegated\n ] = useState(\"\");\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false\n });\n\n const fetchData = () => {\n thegraph.fetchActiveDelegates()\n .then((data) => {\n setAddresses(data);\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n\n thegraph.fetchAggregatedData()\n .then((data) => {\n setTotalVoteDelegated(\n data.delegatedVotes\n );\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n\n };\n\n useEffect(() => {\n fetchData();\n }, []);\n\n return (\n <>\n
\n
\n
\n
\n \n

\n ⬅ Dashboard\n

\n \n
\n
Leaderboard
\n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n

Top Zora Voting Power

\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n\n
\n {addresses.map((element, key) => (\n \n
\n
\n
\n \n
\n\n
\n \n \n
\n\n \n {element.id}\n \n \n {element.id.substr(0, 24)}...\n \n
\n
\n\n
\n {Number(element.delegatedVotes).toFixed(2)}\n
\n\n
\n {((Number(element.delegatedVotes) /\n Number(totalVoteDelegated)) * 100).toFixed(0)} %\n
\n\n
\n {element.votes.length}\n
\n \n ))}\n
\n
\n
\n
\n
\n
\n\n setErrorModal({\n ...errorModal, open: false\n })}\n >\n {errorModal.msg}\n \n \n );\n};\n\nexport default Leaderboard;\n","import React from \"react\";\nimport {\n Button,\n Modal,\n} from \"react-bootstrap\";\n\nexport default function SuccessModal({\n open,\n toggle,\n children,\n onConfirm,\n}) {\n const handleClick = () => {\n toggle();\n if (onConfirm) {\n onConfirm();\n }\n };\n\n return (\n \n \n Notification\n \n {children}\n \n \n \n \n );\n}\n","import { PersonBoundingBox } from \"react-bootstrap-icons\";\n\nexport const Proposals = (proposalState) => {\n switch(proposalState) {\n case '0': return \"Pending\";\n case '1': return \"Active\";\n case '2': return \"Canceled\";\n case '3': return \"Defeated\";\n case '4': return \"Succeeded\";\n case '5': return \"Queued\";\n case '6': return \"Expired\";\n case '7': return \"Executed\";\n }\n}","import React, { useEffect, useState } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport { precision } from \"../../../utils/precision\";\nimport AlertModal from \"../../Utils/AlertModal\";\nimport SuccessModal from \"../../Utils/SuccessModal\";\nimport { Proposals } from \"../../../utils/constant\";\nimport \"../../../styles/proposalBody.css\";\n\nconst ProposalBody = ({ proposal, callback }) => {\n const [userVote, setUserVote] = useState(\"\");\n const [userVotePower, setUserVotePower] = useState(\"\");\n const [castingVote, setCastingVote] = useState(false);\n const [proposalState, setProposalState] = useState(\"\");\n const [voted, setVoted] = useState(false);\n\n const [supportVotes, setSupportVotes] = useState({\n total: \"\",\n votes: [\n {\n voter: \"\",\n quantity: \"\",\n },\n ],\n });\n\n const [againstVotes, setAgainstVotes] = useState({\n total: \"\",\n votes: [\n {\n voter: \"\",\n quantity: \"\",\n },\n ],\n });\n\n const [successModal, setSuccessModal] = useState({\n msg: \"\",\n open: false,\n });\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false,\n });\n\n const getLocalDate = (unixTimestamp) => {\n const data = new Date(1000 * unixTimestamp);\n const date = data.toDateString();\n return date;\n };\n\n const getLocalTime = (unixTimestamp) => {\n const data = new Date(1000 * unixTimestamp);\n const time = data.toLocaleTimeString();\n return time;\n };\n\n const handleCastVote = () => {\n window.govContract.methods\n .castVote(proposal.id, userVote)\n .send({ from: window.userAddress })\n .on(\"transactionHash\", () => {\n setCastingVote(true);\n })\n .on(\"receipt\", () => {\n setCastingVote(false);\n setSuccessModal({\n open: true,\n msg:\n \"Congratulations 🎉 !! \" +\n \"You have successfully casted your vote !!\",\n });\n })\n .catch((error) => {\n setCastingVote(false);\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n const getUserCurrentVotes = async () => {\n const currentVotes = await window.zoraContract.methods\n .getCurrentVotes(window.userAddress)\n .call();\n setUserVotePower(currentVotes);\n };\n const initialize = () => {\n let supportCount = 0,\n againstCount = 0;\n let supportVotes1 = [],\n againstVotes1 = [];\n\n if (proposal.votes) {\n proposal.votes.forEach((element, key) => {\n if (element.support) {\n supportCount += Number(element.votes);\n supportVotes1.push({\n voter: element.voter.id,\n quantity: element.votes,\n });\n } else {\n againstCount += Number(element.votes);\n againstVotes1.push({\n voter: element.voter.id,\n quantity: element.votes,\n });\n }\n });\n setSupportVotes({\n total: supportCount,\n votes: supportVotes1,\n });\n setAgainstVotes({\n total: againstCount,\n votes: againstVotes1,\n });\n\n for (var i = 0; i < proposal.votes.length; i ++) {\n if(proposal.votes[i].voter.id.toUpperCase() === window.userAddress.toUpperCase()) setVoted(true);\n }\n }\n };\n const getProposalState = async () => {\n const proposalState1 = await window.govContract.methods\n .state(proposal.id)\n .call();\n setProposalState(Proposals(proposalState1));\n };\n useEffect(() => {\n initialize();\n if (window.userAddress) {\n getUserCurrentVotes();\n }\n if (window.userAddress && proposal.id) {\n getProposalState();\n }\n }, [proposal]);\n\n useEffect(() => {\n initialize();\n }, [proposalState, userVotePower]);\n\n return (\n
\n
\n
\n {window.userAddress && proposal.state === \"Active\" && !voted && proposal.votes ? (\n
\n
\n
\n
\n
\n
\n

Cast Your Vote

\n

\n Vote Power:{\" \"}\n {userVotePower\n ? precision.remove(userVotePower).toFixed(4)\n : \"-\"}\n

\n
\n
\n \n
\n
\n\n
\n
\n setUserVote(true)}\n >\n Yes, I support this proposal\n \n setUserVote(false)}\n >\n No, I don't support this proposal\n \n
\n\n \n {castingVote ? (\n
\n Processing\n \n
\n ) : (\n
Vote
\n )}\n \n\n {userVotePower && userVotePower <= 0 ? (\n
\n You can't cast vote because either You don't have ZORA\n or you have not delegated your votes\n
\n ) : null}\n
\n
\n
\n
\n
\n ) : null}\n\n
\n
\n
\n
\n
\n

For

\n

{Number(supportVotes.total).toFixed(0)}

\n
\n
\n 0?Number(100*supportVotes.total/(supportVotes.total + againstVotes.total)).toFixed(0).toString()+\"%\":\"0%\" }}\n />\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n {supportVotes.votes.splice(0, 3).map((element, key) => (\n \n
\n {element.voter.substr(0, 5)}...\n {element.voter.substr(38, 42)}\n
\n
\n {Number(element.quantity).toFixed(4)}\n
\n \n ))}\n\n {supportVotes.votes.length < 3 ? (\n
\n
\n —\n
\n
\n —\n
\n
\n ) : (\n \n View All\n \n )}\n
\n
\n\n
\n
\n
\n
\n

Against

\n

{Number(againstVotes.total).toFixed(0)}

\n
\n
\n 0?Number(100*againstVotes.total/(supportVotes.total + againstVotes.total)).toFixed(0).toString()+\"%\":\"0%\" }}\n />\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n {againstVotes.votes.splice(0, 3).map((element, key) => (\n \n
\n {element.voter.substr(0, 5)}...\n {element.voter.substr(38, 42)}\n
\n
\n {Number(element.quantity).toFixed(4)}\n
\n \n ))}\n\n {againstVotes.votes.length < 3 ? (\n
\n
\n —\n
\n
\n —\n
\n
\n ) : (\n \n View All\n \n )}\n
\n
\n
\n\n
\n
\n
\n
\n

Details

\n
\n\n \n {proposal.description\n ? proposal.description.split(\"/#\").map((element, key) =>\n key !== 0 ? (\n \n {element}\n
\n ) : null\n )\n : null}\n
\n
\n
\n\n
\n
\n
\n

Proposal History

\n
\n\n
\n {proposal.startTime && proposalState ? (\n
\n
\n
\n
\n
\n Created\n
\n
\n {getLocalDate(proposal.startTime - 10000)} -{\" \"}\n {getLocalTime(proposal.startTime - 10000)}\n
\n
\n \n
\n \n
\n
\n\n
\n
\n
\n
\n Active\n
\n
\n {getLocalDate(proposal.startTime)} –{\" \"}\n {getLocalTime(proposal.startTime)}\n
\n
\n
\n
\n\n {proposalState === \"Succeeded\" ? (\n
\n
\n
\n
\n Succeeded\n
\n
\n {getLocalDate(proposal.endTime)} –{\" \"}\n {getLocalTime(proposal.endTime)}\n
\n
\n
\n
\n ) : null}\n\n {proposalState === \"Defeated\" ? (\n
\n
\n
\n
\n Defeated\n
\n
\n {getLocalDate(proposal.endTime)} –{\" \"}\n {getLocalTime(proposal.endTime)}\n
\n
\n
\n
\n ) : null}\n\n {proposal.status === \"QUEUED\" ||\n proposal.status === \"EXECUTED\" ? (\n
\n
\n
\n
\n Succeeded\n
\n
\n {getLocalDate(proposal.endTime)} –{\" \"}\n {getLocalTime(proposal.endTime)}\n
\n
\n
\n
\n ) : null}\n\n {proposal.status === \"QUEUED\" ||\n proposal.status === \"EXECUTED\" ? (\n
\n
\n
\n
\n Queued\n
\n
\n {getLocalDate(proposal.endTime)} –{\" \"}\n {getLocalTime(proposal.endTime)}\n
\n
\n
\n
\n ) : null}\n\n {proposalState === \"Expired\" ? (\n
\n
\n
\n
\n Expired\n
\n
\n {getLocalDate(proposal.endTime)} –{\" \"}\n {getLocalTime(proposal.endTime)}\n
\n
\n
\n
\n ) : null} \n\n {proposal.status === \"EXECUTED\" ? (\n
\n
\n
\n
\n Executed\n
\n
\n {getLocalDate(Number(proposal.endTime) + 172800)}\n \n {getLocalTime(Number(proposal.endTime) + 172800)}\n
\n
\n
\n
\n ) : proposal.status === \"CANCELLED\" ? (\n
\n
\n
\n
\n Canceled\n
\n
\n {getLocalDate(proposal.endTime)} –{\" \"}\n {getLocalTime(proposal.endTime)}\n
\n
\n
\n
\n ) : null}\n\n
\n ) : null}\n
\n
\n
\n
\n
\n \n\n \n setSuccessModal({\n ...successModal,\n open: false,\n })\n }\n onConfirm={callback}\n >\n {successModal.msg}\n \n\n \n setErrorModal({\n ...errorModal,\n open: false,\n })\n }\n >\n {errorModal.msg}\n \n
\n );\n};\n\nexport default ProposalBody;\n","import React, { useContext, useEffect, useState } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport userLogo from \"../../../assets/images/user.png\";\nimport { Web3Context } from \"../../../context/Web3Context\";\nimport AlertModal from \"../../Utils/AlertModal\";\nimport { Proposals } from \"../../../utils/constant\";\n\nconst ProposalHeader = ({ proposal }) => {\n const [processing, setProcessing] = useState(false);\n const [queueing, setQueueing] = useState(false);\n const [proposalState, setProposalState] = useState(\"\");\n const getLocalDate = (unixTimestamp) => {\n const data = new Date(1000 * unixTimestamp);\n const date = data.toDateString();\n return date;\n };\n const getProposalState = async () => {\n const proposalState = await window.govContract.methods\n .state(proposal.id)\n .call();\n setProposalState(Proposals(proposalState));\n };\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false,\n });\n\n const handleCancel = async () => {\n window.govContract.methods\n .cancel(proposal.id)\n .send({ from: window.address })\n .on(\"transactionHash\", () => {\n setProcessing(true);\n })\n .then(() => {\n setProcessing(false);\n })\n .catch((error) => {\n console.error();\n setProcessing(false);\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n const handleQueue = async () => {\n window.govContract.methods\n .queue(proposal.id)\n .send({ from: window.address })\n .on(\"transactionHash\", () => {\n setQueueing(true);\n })\n .then(() => {\n setQueueing(false);\n })\n .catch((error) => {\n console.error();\n setQueueing(false);\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n const handleExecute = async () => {\n window.govContract.methods\n .execute(proposal.id)\n .send({ from: window.address })\n .on(\"transactionHash\", () => {\n setQueueing(true);\n })\n .then(() => {\n setQueueing(false);\n })\n .catch((error) => {\n console.error();\n setQueueing(false);\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n useEffect(() => {\n if(proposal.id) getProposalState();\n }, [proposal.id])\n\n const userData = useContext(Web3Context);\n const userAddress = userData.state.address;\n const userBalance = userData.state.balance;\n const admin = userData.state.admin;\n\n return (\n
\n
\n
\n
\n \n \n ⬅ Proposals\n

\n \n\n
\n
\n
\n \n {proposal.id ? (\n
{String(proposal.description).split(\"/#\")[0]}
\n ) : null}\n
\n\n {proposal.id ? (\n
\n {proposal.status === \"EXECUTED\" ? (\n
\n Passed\n
\n ) : proposal.status === \"CANCELLED\" ? (\n
\n Failed\n
\n ) : (\n
\n Active\n
\n )}\n
\n {proposal.id}\n \n {proposal.status === \"EXECUTED\" ? (\n {getLocalDate(proposal.endTime + 172800)}\n ) : proposal.status === \"ACTIVE\" ||\n proposal.status === \"PENDING\" ? (\n {getLocalDate(proposal.startTime)}\n ) : proposal.status === \"QUEUED\" ? (\n {getLocalDate(proposal.endTime)}\n ) : proposal.status === \"CANCELLED\" ? (\n {getLocalDate(proposal.endTime)}\n ) : null}\n
\n
\n ) : null}\n
\n
\n
\n
\n\n {admin === userAddress && admin && proposal.endTime && proposalState == \"Succeeded\" ? (\n
\n \n
\n ) : admin === userAddress && admin && proposal.endTime && proposalState == \"Queued\" ?\n
\n \n
\n : null\n }\n\n {admin === userAddress && admin && proposalState !== \"Canceled\" ? (\n
\n \n
\n ) : null}\n\n
\n \n
\n \n
\n
\n\n
\n
\n {proposal.proposer ? (\n
\n {proposal.proposer.id.substr(0, 5)}...\n {proposal.proposer.id.substr(38, 42)}\n
\n ) : null}\n
\n
\n \n
\n
\n
\n \n setErrorModal({\n ...errorModal,\n open: false,\n })\n }\n >\n {errorModal.msg}\n \n
\n );\n};\n\nexport default ProposalHeader;\n","import React, { useEffect, useState } from \"react\";\nimport ProposalBody from \"./ProposalBody\";\nimport ProposalHeader from \"./ProposalHeader\";\nimport { thegraph } from \"../../utils/thegraph\";\nimport { useParams } from \"react-router-dom\";\nimport AlertModal from \"../Utils/AlertModal\";\n\nconst DisplayProposal = () => {\n const { proposalId } = useParams();\n const [proposal, setProposal] = useState({});\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false\n });\n\n const fetchData = () => {\n thegraph.fetchProposal(proposalId)\n .then((data) => {\n setProposal(data);\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n useEffect(() => {\n fetchData();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <>\n
\n \n \n
\n\n setErrorModal({\n ...errorModal, open: false\n })}\n >\n {errorModal.msg}\n \n \n );\n};\n\nexport default DisplayProposal;\n","import React, { useEffect, useState } from \"react\";\nimport { Link, useParams } from \"react-router-dom\";\nimport userLogo from \"../../assets/images/user.png\";\nimport iconAvatar from \"../../assets/images/icon-avatar.svg\";\nimport redirectIcon from \"../../assets/images/redirect-icon.png\";\nimport { thegraph } from \"../../utils/thegraph\";\nimport AlertModal from \"../Utils/AlertModal\";\nimport SuccessModal from \"../Utils/SuccessModal\";\nimport { config } from \"../../utils/config\";\nimport \"../../styles/addressInfo.css\";\n\nconst AddressInfo = () => {\n const { address } = useParams();\n const [delegateInfo, setDelegateInfo] = useState({\n id: \"\",\n delegatedVotes: \"\",\n delegatedVotesRaw: \"\",\n tokenHoldersRepresentedAmount: \"\",\n proposals: [],\n votes: [],\n });\n\n const [zoraBalance, setZoraBalance] = useState(0);\n const [delegating, setDelegating] = useState(false);\n const [addressRank, setAddressRank] = useState(\"\");\n\n const [successModal, setSuccessModal] = useState({\n msg: \"\",\n open: false,\n });\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false,\n });\n\n const fetchAddressInfo = () => {\n thegraph.fetchAddressBalance(address)\n .then((data) => {\n setZoraBalance(\n data ? data.tokenBalance : 0\n );\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n\n thegraph.fetchDelegateInfo(address)\n .then((data) => {\n setDelegateInfo(\n data ? data : {\n id: \"\",\n delegatedVotes: \"\",\n delegatedVotesRaw: \"\",\n proposals: [],\n votes: [],\n }\n );\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n\n thegraph.fetchActiveDelegates()\n .then((data) => {\n if (data && data.length > 0) {\n data.forEach((element, position) => {\n if (element.id.toLowerCase() ===\n address.toLowerCase()\n ) {\n setAddressRank(position + 1);\n }\n });\n }\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n }\n\n const handleDelegate = () => {\n window.zoraContract.methods\n .delegate(window.userAddress)\n .send({ from: window.userAddress })\n .on(\"transactionHash\", () => {\n setDelegating(true);\n })\n .on(\"receipt\", () => {\n setDelegating(false);\n setSuccessModal({\n open: true,\n msg: \"Congratulations 🎉 !! \" +\n \"You have successfully delegated your ZORA !!\",\n });\n })\n .catch((error) => {\n setDelegating(false);\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n useEffect(() => {\n fetchAddressInfo();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n
\n
\n
\n
\n
\n \n

\n ⬅ Dashboard\n

\n \n
\n
\n
\n \n
\n
\n
\n \n {address}\n\n \n \n \n \n\n \n {address.substr(0, 10)}.....{address.substr(32, 42)}\n\n \n \n \n \n\n
\n
\n
\n
\n
\n
\n \n

\n {delegateInfo.id ? {addressRank} :\n }\n

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

Holdings

\n
\n
\n
\n \n

\n {Number(zoraBalance).toFixed(4)}\n

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

\n {delegateInfo.id ? Number(delegateInfo.delegatedVotes).toFixed(4) :\n }\n

\n\n {window.userAddress && address === window.userAddress.toLowerCase() &&\n Number(delegateInfo.delegatedVotes) < Number(zoraBalance) ?\n \n {delegating ?\n
\n Processing\n \n
\n :\n
Delegate Token
\n }\n
\n : null\n }\n\n {/*
\n
\n \n
\n

\n 345,028\n \n \n 100,000\n

\n\n

\n If you have over 100,000 votes, you are able to\n create a proposal.\n

\n \n Learn more\n \n
\n
\n
*/}\n
\n\n
\n \n

\n {delegateInfo.id ? delegateInfo.proposals.length :\n }\n

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

Voting History

\n
\n\n
\n {delegateInfo.votes.map((vote, key) => (\n \n
\n
\n
\n {vote.proposal.id}\n \n {vote.proposal.status === \"CANCELLED\" ?\n \n Failed\n \n :\n \n {vote.proposal.status === \"ACTIVE\" ? \"Active\" : (\n vote.proposal.status === \"QUEUED\"\n ) ? \"In Queue\" : \"Created\"}\n \n }\n {vote.proposal.description.split(\"/#\")[0]}\n
\n
\n
\n {vote.support ?\n
\n

For

\n
\n :\n
\n

Against

\n
\n }\n \n ))}\n
\n
\n
\n
\n\n
\n
\n
\n
\n

Proposals Created

\n
\n
\n {delegateInfo.proposals.map((proposal, key) => (\n \n
\n
\n
\n {proposal.id}\n \n {proposal.status === \"CANCELLED\" ?\n \n Failed\n \n :\n \n {proposal.status === \"ACTIVE\" ? \"Active\" : (\n proposal.status === \"QUEUED\"\n ) ? \"In Queue\" : \"Created\"}\n \n }\n {proposal.description.split(\"/#\")[0]}\n
\n
\n
\n\n
\n
\n

\n {proposal.status}\n

\n
\n
\n \n ))}\n
\n
\n
\n
\n
\n \n\n setSuccessModal({\n ...successModal, open: false\n })}\n onConfirm={fetchAddressInfo}\n >\n {successModal.msg}\n \n\n setErrorModal({\n ...errorModal, open: false\n })}\n >\n {errorModal.msg}\n \n \n );\n};\n\nexport default AddressInfo;\n","import React, { useEffect, useState } from \"react\";\nimport \"../../styles/addressInfo.css\";\nimport AlertModal from \"../Utils/AlertModal\";\nimport { Row, Col } from \"react-bootstrap\";\nimport { precision } from \"../../utils/precision\";\nimport { config } from '../../utils/config';\nimport redirectIcon from \"../../assets/images/redirect-icon.png\";\n\nconst Vesting = () => {\n const [state, setState] = useState({\n balance: 0,\n zoraInLockup: 0,\n cliffPeriod: \"\",\n vestingPeriod: \"\",\n amountAvailable: \"\",\n vestingStartTime: \"\",\n daysAlreadyPassed: \"\",\n isCliffPeriodPassed: false,\n totalTokenVested: \"\",\n });\n\n const [details, setDetails] = useState({\n beneficiary: \"\",\n amount: \"\",\n cliffPeriod: \"\",\n vestingPeriod: \"\",\n });\n\n const [processing, setProcessing] = useState(false);\n const [depositing, setDepositing] = useState(false);\n\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false\n });\n const [metamaskError, showMetamaskError] =\n useState(false);\n\n const getHoldings = async () => {\n const balance = await window.zoraContract\n .methods\n .balanceOf(window.userAddress)\n .call();\n\n const info = await window.vestingContract\n .methods\n .addressInfo(window.userAddress)\n .call();\n\n\n const totalTokenVested = await window.vestingContract\n .methods\n .totalTokensVested()\n .call();\n\n if (info) {\n const amountAvailable = await window.vestingContract\n .methods\n .getAvailableTokens(window.userAddress)\n .call();\n\n const alreadyWithdrawn = await window.vestingContract\n .methods\n .tokensAlreadyWithdrawn(window.userAddress)\n .call();\n\n const zoraInLockup = Number(info.vestedTokens) -\n Number(alreadyWithdrawn)\n\n const daysAlreadyPassed = (Math.floor(Date.now() / 1000) -\n Number(info.vestingStartTime)) / 86400;\n\n const isCliffPeriodPassed = (Math.floor(Date.now() / 1000)) >\n (Number(info.vestingStartTime) + (Number(info.vestingPeriod) * 86400))\n\n setState({\n balance,\n zoraInLockup,\n amountAvailable,\n daysAlreadyPassed,\n isCliffPeriodPassed,\n totalTokenVested,\n cliffPeriod: info.cliffPeriod,\n vestingPeriod: info.vestingPeriod,\n vestingStartTime: info.vestingStartTime,\n });\n }\n };\n\n const handleVerifyAndDeposit = async () => {\n let info = null;\n let message = null;\n\n if (details.beneficiary) {\n info = await window.vestingContract\n .methods\n .addressInfo(details.beneficiary)\n .call();\n }\n\n if (\n !details.beneficiary || !details.amount ||\n !details.cliffPeriod || !details.vestingPeriod\n ) {\n message = \"All four fields are mandatory !!\";\n } else if (details.beneficiary.length !== 42) {\n message = \"Beneficiary must be an ethereum address !!\";\n } else if (Number(details.vestingPeriod) < Number(details.cliffPeriod)) {\n message = \"Vesting period must be more than cliff period !!\";\n } else if (\n Number(state.balance) <=\n Number(precision.add(details.amount))\n ) {\n message = \"Lockup Token amount must be less than available balance !!\";\n } else if (Number(info.vestedTokens) > 0) {\n message = \"Beneficiary already have locked ZORA in vesting contract !!\";\n }\n\n if (message) {\n setErrorModal({\n open: true,\n msg: message,\n });\n } else {\n checkTokenApproval();\n }\n };\n\n const checkTokenApproval = async () => {\n const tokenApproved = await window.zoraContract\n .methods.allowance(\n details.beneficiary,\n config.vestingAddress,\n )\n .call();\n\n if (Number(tokenApproved) < Number(details.amount)) {\n window.zoraContract.methods.approve\n (\n config.vestingAddress,\n precision.add(10000),\n )\n .send({ from: window.userAddress })\n .on(\"transactionHash\", () => {\n setDepositing(true);\n })\n .then(() => {\n setDepositing(false);\n handleDeposit();\n })\n .catch((error) => {\n setDepositing(false);\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n } else {\n handleDeposit();\n }\n };\n\n const handleDeposit = () => {\n window.vestingContract\n .methods\n .deposit(\n details.beneficiary,\n precision.add(details.amount),\n details.cliffPeriod,\n details.vestingPeriod,\n )\n .send({ from: window.userAddress })\n .on(\"transactionHash\", () => {\n setDepositing(true);\n })\n .on(\"receipt\", () => {\n setDepositing(false);\n getHoldings();\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n const handleWithdraw = () => {\n window.vestingContract\n .methods\n .withdraw()\n .send({ from: window.userAddress })\n .on(\"transactionHash\", () => {\n setProcessing(true);\n })\n .on(\"receipt\", () => {\n setProcessing(false);\n getHoldings();\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n useEffect(() => {\n if (typeof window.ethereum === 'undefined' ||\n !window.ethereum.isConnected() ||\n !window.ethereum.selectedAddress ||\n config.networkId !== Number(window.chainId)\n ) {\n showMetamaskError(true);\n } else {\n getHoldings();\n }\n }, []);\n\n return (\n
\n
\n
\n
\n

\n Vesting\n

\n\n
\n \n {config.vestingAddress}\n \n \n \n \n\n \n {config.vestingAddress.substr(0, 10)}.....{config.vestingAddress.substr(32, 42)}\n \n \n \n \n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
\n

Account Summary

\n
\n
\n
\n \n

\n {precision.remove(Number(state.zoraInLockup))} \n

\n
\n\n {Number(state.zoraInLockup) > 0 ?\n
\n
\n
\n \n
\n\n

\n {state.amountAvailable ?\n {precision.remove(Number(state.amountAvailable))} :\n }\n

\n\n {Number(state.amountAvailable) > 0 ?\n \n {processing ?\n
\n Processing\n \n
\n :\n
Withdraw Tokens
\n }\n \n : null\n }\n
\n\n
\n
\n \n
\n\n

\n {state.daysAlreadyPassed ?\n {state.daysAlreadyPassed.toFixed(2)} Days :\n }\n

\n
\n
\n : null\n }\n\n
\n
\n \n
\n\n

\n {Number(state.cliffPeriod) > 0 ?\n {state.cliffPeriod} Days :\n }\n

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

\n {Number(state.vestingPeriod) > 0 ?\n {state.vestingPeriod} Days :\n }\n

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

\n Deposit In Vesting Contract\n

\n
\n {Number(state.totalTokenVested) > 0 ?\n \n Total Vested: \n \n {precision.remove(state.totalTokenVested)}\n \n ZORA\n \n : 0.00 ZORA\n }\n
\n
\n
\n \n
\n
\n\n {!metamaskError ?\n
\n \n \n Beneficiary Address:\n \n \n setDetails({\n ...details,\n beneficiary: e.target.value\n })}\n value={details.beneficiary}\n />\n \n \n\n \n \n Deposit Amount:\n \n \n setDetails({\n ...details,\n amount: e.target.value\n })}\n value={details.amount}\n />\n \n \n\n \n \n Cliff Period:\n \n \n setDetails({\n ...details,\n cliffPeriod: e.target.value\n })}\n value={details.cliffPeriod}\n />\n \n \n\n \n \n Vesting Period:\n \n \n setDetails({\n ...details,\n vestingPeriod: e.target.value\n })}\n value={details.vestingPeriod}\n />\n \n \n\n \n \n Withdrawal Per Day:\n \n \n \n \n \n\n \n {depositing ?\n \n Processing\n \n
\n :\n
Deposit
\n }\n \n\n {Number(state.zoraInLockup) > 0 ?\n
\n You already have locked ZORA in Vesting contract.\n
\n : null\n }\n
\n :\n \n

\n You have not connected to metamask or You don't have Metamask.
\n Please connect first !!\n

\n
\n }\n
\n\n
\n\n
\n
\n \n \n\n setErrorModal({\n ...errorModal, open: false\n })}\n >\n {errorModal.msg}\n \n \n );\n};\n\nexport default Vesting;\n","const actionAddress = [\n { \n \"name\": \"Zoracles\", \n \"address\": \"0xa2B2A54ad0cD9286eD0D78CF949ED5273983e9F0\" ,\n \"functions\" : [\n \"delegate\", \"getCurrentVotes\", \"getChainId\"\n ]\n },\n // { \"name\": \"Governance\", \"address\": \"0xb14EbAd2F43EE65262071ae6d992fDA70A3decEf\" }\n];\nexport default actionAddress;","import React, { useEffect, useState } from \"react\";\nimport { Button, Modal, Form } from \"react-bootstrap\";\nimport \"../../styles/actionModal.css\";\nimport actionAddress from \"../../utils/actionAddress\";\n\nexport default function ActionModal({ open, toggle, handleSetAction }) {\n const [target, setTarget] = useState(\"\");\n const [selected, setSelected] = useState(false);\n const [targetAddress, setTargetAddress] = useState(\"\");\n const [functions, setFunctions] = useState([]);\n const [selectedFunction, setSelectedfunction] = useState(\"\");\n useEffect(() => {\n setSelected(false);\n setFunctions([]);\n setSelectedfunction(\"\");\n setTarget(\"\");\n setTargetAddress(\"\");\n }, [open])\n const handelChangeTarget = (e) => {\n setTarget(e.target.value);\n actionAddress.map((item) => {\n if(item.name === e.target.value) {\n setTargetAddress(item.address);\n setFunctions(item.functions);\n }\n })\n setSelected(true);\n }\n const handleChangeFunction = (e) => {\n setSelectedfunction(e.target.value);\n };\n const handleAction = () => {\n toggle();\n handleSetAction(target, targetAddress, selectedFunction);\n }\n return (\n \n \n Add action\n \n \n \n Select Target\n \n \n {actionAddress?actionAddress.map((item, index) =>\n \n ):}\n \n

{targetAddress.length > 0 ? \"Target Address : \" + targetAddress: \"\" }

\n
\n \n Select Function\n \n \n {functions?functions.map((item) =>\n \n ):}\n \n

{selectedFunction.length > 0 ? \"Signature : \" + selectedFunction: \"\" }

\n
\n
\n \n \n \n \n \n );\n}\n","import React, { useEffect, useState, useContext } from \"react\";\nimport \"../../styles/addressInfo.css\";\nimport AlertModal from \"../Utils/AlertModal\";\nimport ActionModal from \"../Utils/ActionModal\";\nimport { config } from \"../../utils/config\";\nimport { Web3Context } from \"../../context/Web3Context\";\n\nconst CreateProposal = () => {\n const [state, setState] = useState({\n timelockBalance: \"\",\n });\n\n const [details, setDetails] = useState({\n receiverAddress: \"\",\n releaseAmount: \"\",\n title: \"\",\n detail: \"\",\n });\n\n const [processing, setProcessing] = useState(false);\n const [metamaskError, showMetamaskError] = useState(false);\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false,\n });\n const [actionModal, setActionModal] = useState({\n msg: \"\",\n open: false,\n });\n\n // Action part\n const [targetContract, setTargetContract] = useState({\n name:\"\",\n address:\"\",\n function:\"\"\n });\n const userData = useContext(Web3Context);\n const userAddress = userData.state.address;\n const userBalance = userData.state.balance;\n\n const getState = async () => {\n const timelockBalance = await window.zoraContract.methods\n .balanceOf(config.timelockAddress)\n .call();\n\n setState({ timelockBalance });\n };\n const handleActionModal = () => {\n // alert(\"warning\", \"You need to add it for you.\");\n setActionModal({\n open: true,\n msg: \"action\",\n }); \n }\n const handleVerifyAndSubmit = async () => {\n let message = null;\n console.log(userAddress);\n\n // if (!details.receiverAddress || !details.releaseAmount) {\n // message = \"Both fields are mandatory !!\";\n // } else if (details.receiverAddress.length !== 42) {\n // message = \"receiverAddress must be an ethereum address !!\";\n // } else if (details.title === '' && details.detail === '') {\n // message = \"Please type title or overview !!\";\n // } else if (\n // Number(state.timelockBalance) <=\n // Number(precision.add(details.releaseAmount))\n // ) {\n // message = \"Release amount must be less than locked balance !!\";\n // }\n console.log(state.timelockBalance);\n // console.log(precision.add(userBalance));\n\n if (!userAddress || !userBalance) {\n message = \"Both fields are mandatory !!\";\n } else if (userAddress.length !== 42) {\n message = \"receiverAddress must be an ethereum address !!\";\n } else if (details.title === '' && details.detail === '') {\n message = \"Please type title or overview !!\";\n } \n if (!targetContract.name) {\n message = \"Please select action type and function.\";\n }\n // else if (\n // Number(state.timelockBalance) <=\n // Number(userBalance)\n // ) {\n // message = \"Release amount must be less than locked balance !!\";\n // console.log(userBalance);\n // }\n\n if (message) {\n setErrorModal({\n open: true,\n msg: message,\n });\n } else {\n createProposal();\n }\n };\n\n const createProposal = () => {\n const description = details.title + \"/#\" + details.detail;\n console.log(description);\n window.govContract.methods\n .propose(\n [targetContract.address],\n [\"0\"],\n [targetContract.function],\n [\n encodeParameters(\n [\"address\", \"uint256\"],\n [userAddress, userBalance]\n ),\n ],\n description\n )\n .send({ from: window.userAddress })\n .on(\"transactionHash\", () => {\n setProcessing(true);\n })\n .then(() => {\n setProcessing(false);\n getState();\n })\n .catch((error) => {\n console.log(error);\n setProcessing(false);\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n };\n\n const encodeParameters = (types, values) => {\n console.log(window.web3.eth.abi.encodeParameters(types, values));\n return window.web3.eth.abi.encodeParameters(types, values);\n };\n\n useEffect(() => {\n if (\n typeof window.ethereum === \"undefined\" ||\n !window.ethereum.isConnected() ||\n !window.ethereum.selectedAddress ||\n config.networkId !== Number(window.chainId)\n ) {\n showMetamaskError(true);\n } else {\n getState();\n }\n }, []);\n const handleSetAction = (target, targetAddress, selectedFunction) => {\n setTargetContract({\n name: target,\n address: targetAddress,\n function: selectedFunction\n })\n }\n return (\n
\n
\n
\n
\n

Create Proposal

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

Proposal Description

\n
\n
\n
\n \n \n setDetails({\n ...details,\n title: e.target.value,\n })\n }\n value={details.title}\n />\n
\n\n
\n
\n \n
\n\n \n setDetails({\n ...details,\n detail: e.target.value,\n })\n }\n value={details.detail}\n />\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n

Actions

\n
\n
\n \n
\n
\n\n {!metamaskError ? (\n
\n {targetContract.name?\n
\n
{targetContract.name} / {targetContract.function}
\n
:\n \n Add Actions{\" \"}\n \n \n \n \n \n \n }\n
\n ) : (\n
\n \n You have not connected to metamask or You don't have\n Metamask.\n
\n Please connect first !!\n

\n
\n )}\n
\n
\n
\n
\n
\n \n Submit\n \n
\n
\n
\n\n \n setErrorModal({\n ...errorModal,\n open: false,\n })\n }\n >\n {errorModal.msg}\n \n\n \n setActionModal({\n ...actionModal,\n open: false,\n })\n }\n handleSetAction = {handleSetAction}\n >\n {actionModal.msg}\n \n
\n );\n};\n\nexport default CreateProposal;\n","import React, { useEffect, useState } from \"react\";\nimport { thegraph } from \"../../utils/thegraph\";\nimport AlertModal from \"../Utils/AlertModal\";\nimport { precision } from \"../../utils/precision\";\nimport { Link } from \"react-router-dom\";\nimport axios from \"axios\";\n\nconst Airdrop = () => {\n const [xanaAmount, setXanaamount] = useState(0);\n const [zoraHolders, setZoraholder] = useState(0);\n const [zoraClaimFlg, setZoraclaimflg] = useState(false);\n const [xanatoClaim, setXanatoclaim] = useState(0);\n const [claimButton, setClaimButton] = useState(\"Claim now\");\n const [activeButton, setActive] = useState(true);\n const [claimed, setClaimed] = useState(false);\n const [startTime, setStarttime] = useState();\n const [period, setPeriod] = useState(0);\n const [validated, setValidated] = useState(true);\n const [timeLeft, setTimeLeft] = useState({});\n const [errorModal, setErrorModal] = useState({\n msg: \"\",\n open: false,\n });\n\n const fetchData = async () => {\n const XanaBalance = await window.airdropContract.methods\n .numberOfXana()\n .call();\n const Xanatoclaim = await window.airdropContract.methods\n .getXanaForUser(window.userAddress)\n .call();\n const period_contract = await window.airdropContract.methods\n .period()\n .call();\n const startAt_contract = await window.airdropContract.methods\n .startAt()\n .call();\n const validator = await window.airdropContract.methods\n .validator(window.userAddress)\n .call();\n setXanaamount(XanaBalance);\n setXanatoclaim(Xanatoclaim);\n setStarttime(startAt_contract);\n setPeriod(period_contract);\n setValidated(validator);\n axios\n .post(\"http://localhost:5000/getHolders\", {\n userAddress: window.userAddress,\n })\n .then((res) => {\n console.log(res.data);\n setZoraholder(res.data.holders);\n setZoraclaimflg(res.data.flgClaim);\n });\n };\n const calculateTimeLeft = () => {\n let difference =\n +new Date((Number(startTime) + Number(period)) * 1000) - +new Date();\n let timeLeft = {};\n\n if (difference > 0) {\n timeLeft = {\n days: Math.floor(difference / (1000 * 60 * 60 * 24)),\n hours: Math.floor((difference / (1000 * 60 * 60)) % 24),\n minutes: Math.floor((difference / 1000 / 60) % 60),\n seconds: Math.floor((difference / 1000) % 60),\n };\n setActive(true);\n } else {\n setActive(false);\n }\n return timeLeft;\n };\n const getCurrentAirdropEvent = () => {\n window.airdropContract.events.setNextAirdropEvent((err, events) => {\n if (err) {\n console.log(\"Can't reset airdrop now.\");\n } else {\n try {\n thegraph\n .fetchHolders()\n .then(async (data) => {\n console.log(data);\n axios\n .post(\"http://localhost:5000/setHolders\", data)\n .then((res) => {\n console.log(res);\n });\n setZoraholder(data.length);\n })\n .catch((error) => {\n setErrorModal({\n open: true,\n msg: error.message,\n });\n });\n } catch (err) {\n console.log(err);\n }\n }\n });\n };\n useEffect(() => {\n fetchData();\n }, []);\n useEffect(() => {\n const timer = setTimeout(() => {\n getCurrentAirdropEvent();\n setTimeLeft(calculateTimeLeft());\n }, 1000);\n return () => clearTimeout(timer);\n });\n const timerComponents = [];\n\n Object.keys(timeLeft).forEach((interval, index) => {\n if (!timeLeft[interval]) {\n return;\n }\n timerComponents.push(\n \n {timeLeft[interval] ? (\"0\" + timeLeft[interval]).slice(-2) : \"00\"}{\" \"}\n {interval}{\" \"}\n \n );\n });\n const handleClaim = async () => {\n try {\n await window.airdropContract.methods\n .claim()\n .send()\n .on(\"transactionHash\", async () => {\n console.log(\"claiming\");\n setClaimButton(\"Claiming ...\");\n })\n .on(\"receipt\", async () => {\n // setClaimButton(\"Claimed\");\n setClaimed(true);\n });\n } catch (err) {\n console.log(err);\n }\n };\n return (\n <>\n
\n
\n
\n
\n \n \n ⬅ Dashboard\n

\n \n
\n
Airdrop
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n {xanaAmount ? precision.remove(xanaAmount, 18) : \"-\"} XANA\n
\n \n XANA To Airdrop\n \n
\n
\n
\n
\n\n
\n
\n
\n \n {zoraHolders ? Number(zoraHolders).toFixed(0) : \"-\"}\n
\n \n Zora holders\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n {xanatoClaim\n ? activeButton\n ? precision.remove(xanatoClaim, 18)\n : \"-\"\n : \"-\"}{\" \"}\n XANA\n
\n \n XANA To Claim\n \n
\n
\n
\n
\n
\n
\n {window.userAddress ? (\n
\n \n {timerComponents.length ? timerComponents : }\n \n We are going to airdrop some Xana token to Zora token holders.\n
\n If you have zora tokens, you can receive xana tokens before\n the airdrop end time.\n
\n {zoraClaimFlg === false ? (\n \n You aren't in whitelist for this chance.\n \n ) : validated ? (\n \n You have already claimed.\n \n ) : activeButton ? (\n claimed ? (\n \n You claimed xana token.\n \n ) : (\n \n {claimButton}\n \n )\n ) : (\n \n Airdrop finished.\n \n )}\n \n \n ) : (\n
\n \n \n Please connect metamask to claim.\n \n
\n \n )}\n \n
\n \n setErrorModal({\n ...errorModal,\n open: false,\n })\n }\n >\n {errorModal.msg}\n \n \n );\n};\n\nexport default Airdrop;\n","import React from 'react';\nimport 'bootstrap/dist/css/bootstrap.css';\nimport {\n Switch,\n Router,\n Route,\n Redirect,\n} from \"react-router-dom\";\nimport { Web3ContextProvider } from '../context/Web3Context';\nimport history from './Utils/history';\nimport Header from './Layout/Header';\nimport Footer from './Layout/Footer';\nimport Dashboard from './Dashboard';\nimport Proposals from './Proposals';\nimport Leaderboard from './Leaderboard';\nimport DisplayProposal from './DisplayProposal';\nimport AddressInfo from './AddressInfo';\nimport Vesting from './Vesting';\nimport CreateProposal from './CreateProposal';\nimport Airdrop from './Airdrop';\n\nexport default function App() {\n const routes = (\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 return (\n
\n \n \n
\n {routes}\n
\n \n \n
\n );\n}\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport App from './components/App';\nimport { initContracts, initConnected } from './utils/init';\n\nif (\n typeof window.ethereum !== 'undefined' &&\n window.ethereum.selectedAddress &&\n window.ethereum.isConnected()\n) {\n initContracts()\n .then(() => {\n ReactDOM.render(\n ,\n document.querySelector('#root')\n )\n })\n .catch(console.error);\n} else if (typeof window.ethereum === 'undefined') {\n ReactDOM.render(\n ,\n document.querySelector('#root')\n )\n} else {\n initConnected()\n .then(() => {\n ReactDOM.render(\n ,\n document.querySelector('#root')\n )\n });\n}\n\n// ReactDOM.render(\n// \n// \n// ,\n// document.getElementById('root')\n// );","module.exports = \"data:image/png;base64,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LwBkE2D+AkA2AeYvAGQTYP4CQDYB5i8AZBNg/gLgCbIJMH8EIJsA80cAsgkwfwQgmwDzRwCyCTB/BCCbAPNHALIJMH8EIJsA80cAsgkwfwQgmwDzRwCyCTB/BCCbAPNHALIJMH8EIJsA80cAsgkwfwQgmwDzRwCyCTB/BCCbgPfmjwBkE3B4av4IACAAgAAAAgAIAAiAJwABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAEAAAAEABAAQAEAAAAEABAAQAEAAAAEABAAQAEAAAAEABAAQAEAAAAEABAAQAEAAAAEABAAQAEAAAAEABAAQAEAAAAEABAAQAEAAAAEABAAQAEAAQAAAAQAEABAAQAAAAQAEABAAQAAAAQAEABAAQAAAAQAEABAAQAAAAQAEABAAQAAAAQAEABAAQAAAAQAEABAAQAAAAQAEABAAQAAAAQAEABAAQABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAAABAAQAEABAAEAAAAEABAAQAEAAAAEABOB7VzfOdc8XACAAgAAAAgAIACAAgAAAAgAIACAAgAAAAgAIACAAgAAAAgAIACAAgAAAAgAIACAAgAAAAgAIACAAgAAAAgACAAgAIABAxhcLBaemqU06tgAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"static/media/logo.c8a1f94c.svg\";","module.exports = __webpack_public_path__ + \"static/media/metamask.e9ada72b.png\";"],"sourceRoot":""}