"use client"; import type { StartChatOutput } from "@/services/home/types"; import { formatNumberToKMB } from "@/lib/utils"; import Link from "next/link"; import { Avatar, AvatarImage } from "@/components/ui/avatar"; import { IconButton } from "@/components/ui/button"; import { useAudioPlayer } from "../../context/AudioPlayerContext"; import { WaveAnimation } from "@/components/ui/wave-animation"; interface StartChatItemProps { character: StartChatOutput; } const StartChatItem = ({ character }: StartChatItemProps) => { const { play, isPlaying } = useAudioPlayer(); const audioId = `character-${character.aiId}`; const playing = isPlaying(audioId); // character.dialoguePrologueSound = "https://snd.crushlevel.ai/dev/sound/17624951011014110.mp3"; // character.supportingContentList = [ // "How is your day ?", // "How is your day ?", // "How is your day ?", // ] // 处理音频播放 const handlePlayAudio = (e: React.MouseEvent) => { e.preventDefault(); // 阻止链接跳转 e.stopPropagation(); // 阻止事件冒泡 if (character.dialoguePrologueSound) { play(character.dialoguePrologueSound, audioId); } }; return (
{/* 头像 - 带播放按钮 */}
{/* 播放按钮 */} {character.dialoguePrologueSound &&
{ playing ? : }
}
{/* 名字 */}

{character.nickname}

{/* 点赞数 */}
{formatNumberToKMB(character.likedNum || 0)}
{/* 对话建议列表 */}
{character.supportingContentList?.map((suggestion, index) => ( {suggestion} ))}
); }; export default StartChatItem;