import React from "react"; import { Box, CircularProgress, LinearProgress, Paper, Typography, } from "@mui/material"; interface ServerLoadingIndicatorProps { progress?: { attempt: number; maxAttempts: number; } | null; message?: string; } export const ServerLoadingIndicator: React.FC = ({ progress, message = "Starting server...", }) => { const progressPercentage = progress ? Math.round((progress.attempt / progress.maxAttempts) * 100) : 0; // Fun quotes about agents taking over const agentQuotes = [ "Agents are calibrating the space protocols...", "Teaching agents the fine art of space conquest...", "Agents are learning to navigate the cosmic frontier...", "Preparing agents for their intergalactic mission...", "Agents are studying the universe's source code...", "Installing agent confidence modules...", "Agents are fine-tuning their cosmic algorithms...", "Briefing agents on proper space etiquette...", "Agents are calculating optimal space trajectories...", "Teaching agents to think beyond planetary boundaries...", ]; // Select quote based on progress attempt const currentQuoteIndex = progress ? (progress.attempt - 1) % agentQuotes.length : 0; return ( {/* Main spinner */} {/* Status message */} {message} {/* Progress bar */} {progress && ( {/* Fun rotating quote */} {agentQuotes[currentQuoteIndex]} )} ); };