Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | 3x | import { Alert, Box } from "@mui/material";
import { useEffect, useState } from "react";
import useFeatureFlag from "@/utils/hooks/useFeatureFlag";
const GlobalMaintenanceBanner = ({ userType }) => {
const { maintenanceMode } = useFeatureFlag(userType);
const [eventMessage, setEventMessage] = useState("");
useEffect(() => {
const handleMaintenanceDialog = (event) => {
const detail = event?.detail || {};
if (!detail.isMaintenance) return;
setEventMessage(detail.message || "The platform is temporarily under maintenance.");
};
window.addEventListener("showMaintenanceDialog", handleMaintenanceDialog);
return () => window.removeEventListener("showMaintenanceDialog", handleMaintenanceDialog);
}, []);
if (!maintenanceMode && !eventMessage) return null;
return (
<Box sx={{ px: 2, pt: 2 }}>
<Alert severity="warning">{eventMessage || "The platform is temporarily under maintenance."}</Alert>
</Box>
);
};
export default GlobalMaintenanceBanner;
|