import React, { useState } from "react"; import { RecruitModal } from "./RecruitModal"; import { formatRespect } from "../../ui/formatNumber"; import { useGang } from "./Context"; import Typography from "@mui/material/Typography"; import Button from "@mui/material/Button"; import Box from "@mui/material/Box"; interface IProps { onRecruit: () => void; } /** React Component for the recruitment button and text on the gang main page. */ export function RecruitButton(props: IProps): React.ReactElement { const gang = useGang(); const [open, setOpen] = useState(false); const recruitsAvailable = gang.getRecruitsAvailable(); if (!gang.canRecruitMember()) { const respectNeeded = gang.respectForNextRecruit(); return ( {respectNeeded === Infinity ? ( Maximum gang members already recruited ) : ( {formatRespect(respectNeeded)} respect needed to recruit next member )} ); } return ( <> Can recruit {recruitsAvailable} more gang member{recruitsAvailable === 1 ? "" : "s"} setOpen(false)} onRecruit={props.onRecruit} /> ); }