import { getSubmissionStatus, SubmissionState, SubmissionStatus } from "@/state/reducer/submission"; import { Button, ButtonProps, Theme } from "@material-ui/core"; import { createStyles, makeStyles } from "@material-ui/core/styles"; import { useTranslation } from "react-i18next"; import React from "react"; import { CommentQuestion } from "mdi-material-ui/index"; export const getColorByStatus = (status: SubmissionStatus, theme: Theme) => { switch (status) { case "awaiting": return theme.palette.info.dark; case "accepted": return theme.palette.success.dark; case "declined": return theme.palette.error.dark; case "draft": return theme.palette.grey["800"]; default: return "textPrimary"; } } export const useStatusStyles = makeStyles((theme: Theme) => { const colorByStatusGetter = ({ status }: any) => getColorByStatus(status, theme); return createStyles({ foreground: { color: colorByStatusGetter }, background: { backgroundColor: colorByStatusGetter } }) }) export type SubmissionStatusProps = { submission: SubmissionState, } export const Status = ({ submission } : SubmissionStatusProps) => { const status = getSubmissionStatus(submission); const classes = useStatusStyles({ status }); const { t } = useTranslation(); return { t(`submission.status.${ status }`) }; } export const ContactAction = (props: ButtonProps) => { const { t } = useTranslation(); return }