import { useQuery } from "@apollo/client"; import { Box, Flex, useToast } from "@chakra-ui/core"; import { Redirect, RouteComponentProps } from "@reach/router"; import React, { useState } from "react"; import { MutationUpdatePlayerIdArgs, useUpdatePlayerIdMutation, } from "../../generated/graphql"; import { USER } from "../../graphql/queries/user"; import { UserData } from "../../types"; import Error from "../common/Error"; import Loading from "../common/Loading"; import PageHeader from "../common/PageHeader"; import SubHeader from "../common/SubHeader"; import Button from "../elements/Button"; import Input from "../elements/Input"; import VotingManager from "./VotingManager"; const AdminPage: React.FC = () => { const [updatePlayerIdForms, setUpdatePlayerIdForms] = useState< Partial >({}); const toast = useToast(); const { data: userData, error: userError, loading: userLoading } = useQuery< UserData >(USER); const [updatePlayerId] = useUpdatePlayerIdMutation({ onCompleted: () => { toast({ description: "Player ID updated", position: "top-right", status: "success", duration: 10000, }); }, onError: (error) => { toast({ title: "An error occurred", description: error.message, position: "top-right", status: "error", duration: 10000, }); }, }); if (userError) return ; if (userLoading) return ; if (!userData!.user) return ; if (userData!.user.discord_id !== "79237403620945920") return ; return ( <> Update player ID setUpdatePlayerIdForms({ ...updatePlayerIdForms, playerId: value, }) } label="Player ID" /> setUpdatePlayerIdForms({ ...updatePlayerIdForms, discordId: value }) } label="Discord ID" /> ); }; export default AdminPage;