import { useState } from 'react' import type { ExternalMediaResult } from '../api/ai' import type { DiscoverItem } from '../api/discover' import { imageURL } from '../api/client' import { DiscoverDetailModal } from './DiscoverDetailModal' type AIAssistantExternalResultsProps = { items: ExternalMediaResult[] } export function AIAssistantExternalResults({ items }: AIAssistantExternalResultsProps) { const [activeItem, setActiveItem] = useState(null) if (items.length === 0) return null return ( <>
{items.map((item) => { const keyword = item.subscribe_keyword || item.title const key = `${item.source}:${keyword}` return (
setActiveItem(item)} onKeyDown={(event) => { if (event.key === 'Enter' || event.key === ' ') setActiveItem(item) }} className="cursor-pointer rounded-2xl border border-gray-200 bg-gray-50 p-3 transition hover:-translate-y-0.5 hover:border-primary-300" >
{item.poster_url ? ( {item.title} ) : null}
{item.source} {item.media_type && {item.media_type}} {item.year ? {item.year} : null}

{item.title}

{item.overview || `订阅关键词:${keyword}`}

详情 / 订阅设置

) })}
{activeItem && ( setActiveItem(null)} /> )} ) }