import Image from 'next/image'; import {useTranslation} from 'next-i18next'; import {CSSProperties, useEffect, useState} from 'react'; import {faArrowRight} from '@fortawesome/free-solid-svg-icons'; import {FontAwesomeIcon} from '@fortawesome/react-fontawesome'; import Button from '@components/Button'; import ButtonCopy from '@components/ButtonCopy'; import Share from '@components/Share'; import ErrorMessage from '@components/Error'; import AdminModalEmail from '@components/admin/AdminModalEmail'; import {ElectionCreatedPayload, ErrorPayload} from '@services/api'; import {AppTypes, useAppContext} from '@services/context'; import {getUrl, RouteTypes} from '@services/routes'; import urne from '../public/urne.svg'; import star from '../public/star.svg'; import {Container} from 'reactstrap'; import {useRouter} from 'next/router'; import {getLocaleShort} from '@services/utils'; export interface WaitingBallotInterface { election?: ElectionCreatedPayload; error?: ErrorPayload; } interface InfoElectionInterface extends WaitingBallotInterface { display: string; } const InfoElection = ({election, error, display}: InfoElectionInterface) => { const {t} = useTranslation(); const router = useRouter(); const [modal, setModal] = useState(false); const toggleModal = () => setModal((m) => !m); if (!election) return null; const locale = getLocaleShort(router); const urlVote = getUrl(RouteTypes.VOTE, locale, election.ref); const urlResults = getUrl(RouteTypes.RESULTS, locale, election.ref); return (