import React from 'react'; interface ScanningToastProps { isVisible: boolean; message: string; progress?: number; // 0-100 for progress bar type?: 'scanning' | 'processing' | 'success' | 'error'; } const ScanningToast: React.FC = ({ isVisible, message, progress, type = 'scanning' }) => { if (!isVisible) return null; const getTypeStyles = () => { switch (type) { case 'scanning': return 'bg-blue-600 text-white'; case 'processing': return 'bg-purple-600 text-white'; case 'success': return 'bg-green-600 text-white'; case 'error': return 'bg-red-600 text-white'; default: return 'bg-blue-600 text-white'; } }; const getIcon = () => { switch (type) { case 'scanning': return '📷'; case 'processing': return '🤖'; case 'success': return '✅'; case 'error': return '❌'; default: return '📷'; } }; return (
{/* Icon */}
{getIcon()}
{/* Content */}
{message}
{/* Progress bar */} {progress !== undefined && (
)}
{/* Spinner for scanning/processing */} {(type === 'scanning' || type === 'processing') && (
)}
); }; export default ScanningToast;