import React, {Component} from 'react'; import {broker_status} from "../openapi"; import {Alert, AlertColor} from "@mui/material"; import { ReactNode } from "react"; type MyProps = { s?: broker_status } type MyState = {} class ErrorMessage extends Component { severity(input?: broker_status.message_severity) : AlertColor { if (input === undefined) return "error"; switch (input) { case broker_status.message_severity.INFO: return "info"; case broker_status.message_severity.WARNING: return "warning"; case broker_status.message_severity.ERROR: return "error"; case broker_status.message_severity.SUCCESS: return "success"; } } alert(input: AlertColor, message: string) : ReactNode { return {message} } render() { if (this.props.s === undefined) return this.alert("error", "Not connected to Jungfraujoch instance; check if jfjoch_broker is running"); if (this.props.s.message === undefined) return this.alert("info", ""); return this.alert(this.severity(this.props.s.message_severity),this.props.s.message); } } export default ErrorMessage;