import { Badge } from "@/components/bs-ui/badge"; import { Button } from "@/components/bs-ui/button"; import { getChatOnlineApi } from "@/controllers/API/assistant"; import { useEffect, useMemo, useRef, useState } from "react"; import { useNavigate } from "react-router-dom"; import { SearchInput } from "../../bs-ui/input"; import { Sheet, SheetContent, SheetDescription, SheetTitle, SheetTrigger } from "../../bs-ui/sheet"; import CardComponent, { TitleIconBg } from "../cardComponent"; import { SkillIcon } from "@/components/bs-icons/skill"; import { AssistantIcon } from "@/components/bs-icons/assistant"; import { useTranslation } from "react-i18next"; import borderR from "../../../assets/npc/border-r.png"; import { SpotlightCard } from "@lobehub/ui"; import { Flexbox } from 'react-layout-kit'; import robot from "../../../assets/robot.png"; import robot2 from "../../../assets/robot2.png"; import robot3 from "../../../assets/robot3.png"; import zidingyi1 from "../../../assets/npc/zidingyi1.png"; import zidingyi2 from "../../../assets/npc/zidingyi2.png"; import npcIcon from "../../../assets/npc/npcIcon.png"; import nengliIcon from "../../../assets/npc/nengliIcon.png"; export default function SkillChatSheet({ children, onSelect }) { const [open, setOpen] = useState(false) const { t } = useTranslation() const navigate = useNavigate() const [keyword, setKeyword] = useState(' ') const allDataRef = useRef([]) useEffect(() => { open && getChatOnlineApi().then(res => { allDataRef.current = res setKeyword('') }) // setKeyword(' ') }, [open]) const options = useMemo(() => { return allDataRef.current.filter(el => el.name.toLowerCase().includes(keyword.toLowerCase())) }, [keyword]) const render = (item: any) => ( { onSelect(item); setOpen(false) }}> {/* */} {/* {item.name} {item.name} */} {/* onSelect(item)}> {item.name} {item.description} */} {/* {(item.id == "06b1d374-ba97-46e6-8782-c56dec8dcc17" || item.id == "ed8e21f6-9757-43d0-b076-8c6e81bb0580") && } {item.id == "ca214b41-2b73-4585-b172-bf1e546cf6ec" && } {(item.id != "06b1d374-ba97-46e6-8782-c56dec8dcc17" && item.id != "ed8e21f6-9757-43d0-b076-8c6e81bb0580" && item.id != "ca214b41-2b73-4585-b172-bf1e546cf6ec") && } */} {/* */} {item.name} {/* 绘画类 绘画类 */} {item.desc} {item.flow_type === 'flow' ? '能力' : 'NPC'} ); return {children} e.stopPropagation()}> {/* */} 选择对话 选择一个您想使用的上线NPC或能力 setKeyword(e.target.value)} /> {/* { options.length ? options.map((flow, i) => ( {flow.flow_type === 'flow' ? '技能' : 'NPC'} } onClick={() => { onSelect(flow); setOpen(false) }} /> )) : {t('build.empty')} navigate('/build/assist')}>{t('build.onlineSA')} } */} };
{item.name}
{item.desc}
{t('build.empty')}