// src/components/Controls.js import React from "react"; import { FaMicrophone, FaRegStopCircle, FaCog } from "react-icons/fa"; const Controls = ({ status, isBusy, isRecording, isAutoMode, isAutoListening, onMicClick, onToggleAutoMode, }) => { const micButtonColorClass = isRecording ? "bg-red-600 hover:bg-red-700 active:bg-red-800" : "bg-indigo-600 hover:bg-indigo-700 active:bg-indigo-800"; const micButtonState = isAutoMode && isAutoListening ? isAutoListening : isRecording; return ( <div className="bg-white dark:bg-gray-800 p-4 border-t border-gray-200 dark:border-gray-700 flex flex-col items-center gap-4"> <div className="text-center text-sm text-gray-500 dark:text-gray-400 font-medium"> {status} </div> <div className="flex items-center space-x-4"> <button onClick={onMicClick} disabled={isBusy} className={`p-4 rounded-full text-white transition-colors duration-200 ease-in-out transform hover:scale-105 active:scale-95 ${micButtonColorClass} disabled:bg-gray-400`} > {micButtonState ? ( <FaRegStopCircle size={28} /> ) : ( <FaMicrophone size={28} /> )} </button> <div className="flex items-center space-x-2"> <label htmlFor="auto-mode-toggle" className="text-gray-700 dark:text-gray-300"> Auto Mode </label> <input type="checkbox" id="auto-mode-toggle" checked={isAutoMode} onChange={onToggleAutoMode} disabled={isBusy} className="h-5 w-5 text-indigo-600 rounded focus:ring-indigo-500" /> </div> </div> </div> ); }; export default Controls;