import React from "react" import { Alert, AlertTitle, Box } from "@mui/material" import { IRequestResult } from "../hooks/use-request-result" import { Icon } from "./icon" import { faCheck, faExclamationCircle } from "@fortawesome/free-solid-svg-icons" interface IRequestResultProps { result: IRequestResult["result"] completeRender?: (data: T) => React.ReactNode } export function RequestResult({ result, completeRender }: IRequestResultProps) { switch (result.type) { case "empty": return null case "error": return }> Request rejected {result.error} case "complete": return }> Request completed {completeRender?.(result.data)} } }