import { RealtimeItem } from '@openai/agents/realtime';
import { TextMessage } from './messages/TextMessage';
import { FunctionCallMessage } from './messages/FunctionCall';
export type HistoryProps = {
history: RealtimeItem[];
};
export function History({ history }: HistoryProps) {
return (
{history.map((item) => {
if (item.type === 'function_call') {
return ;
}
if (item.type === 'message') {
return (
0
? item.content
.map((content) => {
if (
content.type === 'text' ||
content.type === 'input_text'
) {
return content.text;
}
if (
content.type === 'input_audio' ||
content.type === 'audio'
) {
return content.transcript ?? '⚫︎⚫︎⚫︎';
}
return '';
})
.join('\n')
: '⚫︎⚫︎⚫︎'
}
isUser={item.role === 'user'}
key={item.itemId}
/>
);
}
return null;
})}
);
}