Spaces:
Running
Running
File size: 1,452 Bytes
304e233 |
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
import React from 'react';
import { ConnectionStatus } from './ConnectionStatus';
import { ProcessingIndicator } from './ProcessingIndicator';
import { TaskButton } from './TaskButton';
interface HeaderProps {
isConnected: boolean;
isAgentProcessing: boolean;
onSendTask: (content: string, modelId: string) => void;
}
export const Header: React.FC<HeaderProps> = ({ isConnected, isAgentProcessing, onSendTask }) => {
return (
<>
<div style={{
flexShrink: 0,
}}>
<div style={{ maxWidth: '1400px', margin: '0 auto', padding: '20px 32px' }}>
<div className="flex items-center justify-between">
<div className="flex items-center gap-6">
<ConnectionStatus isConnected={isConnected} />
<h1 className="text-3xl font-bold text-white" style={{ textShadow: '0 2px 4px rgba(0, 0, 0, 0.2)' }}>
CUA2 Agent
</h1>
</div>
<ProcessingIndicator isAgentProcessing={isAgentProcessing} />
</div>
<TaskButton
isAgentProcessing={isAgentProcessing}
isConnected={isConnected}
onSendTask={onSendTask}
/>
</div>
</div>
<style>{`
@keyframes spin {
to { transform: rotate(360deg); }
}
@keyframes pulse {
0%, 100% { opacity: 1; }
50% { opacity: 0.5; }
}
`}</style>
</>
);
};
|