// Copyright (c) 2025 Bytedance Ltd. and/or its affiliates // SPDX-License-Identifier: MIT import { X } from "lucide-react"; import { useEffect, useState } from "react"; import { Button } from "~/components/ui/button"; import { Card } from "~/components/ui/card"; import { Tabs, TabsContent, TabsList, TabsTrigger } from "~/components/ui/tabs"; import { openResearch, useStore } from "~/core/store"; import { cn } from "~/lib/utils"; import { ResearchActivitiesBlock } from "./research-activities-block"; import { ResearchReportBlock } from "./research-report-block"; import { ScrollContainer } from "./scroll-container"; import { Tooltip } from "./tooltip"; export function ResearchBlock({ className, researchId = null, }: { className?: string; researchId: string | null; }) { const reportId = useStore((state) => researchId ? state.researchReportIds.get(researchId) : undefined, ); const [activeTab, setActiveTab] = useState("activities"); const hasReport = useStore((state) => researchId ? state.researchReportIds.has(researchId) : false, ); useEffect(() => { if (hasReport) { setActiveTab("report"); } }, [hasReport]); return (
setActiveTab(value)} >
Report Activities
{reportId && researchId && ( )} {researchId && ( )}
); }