fix: address ui review follow-ups

This commit is contained in:
Yaojia Wang
2026-06-29 12:06:04 +02:00
parent 90a66437d7
commit dd80b6815d
7 changed files with 244 additions and 3 deletions

View File

@@ -381,6 +381,7 @@ export function ReviewReport({
const unresolved = unresolvedIndices(drafts).length;
const reviewing = review.isReviewing;
const hasReport =
initialReview !== undefined ||
review.state.phase === "done" ||
review.state.sections.length > 0 ||
seededConflicts.length > 0 ||

View File

@@ -1,6 +1,6 @@
"use client";
import type { ReactNode } from "react";
import { useEffect, useRef, useState, type ReactNode } from "react";
import { ChevronDown } from "lucide-react";
import { Badge } from "@/components/ui/Badge";
@@ -23,10 +23,21 @@ export function ReviewSectionPanel({
children,
defaultOpen = false,
}: ReviewSectionPanelProps) {
const [open, setOpen] = useState(defaultOpen);
const previousDefaultOpen = useRef(defaultOpen);
useEffect(() => {
if (defaultOpen && !previousDefaultOpen.current) {
setOpen(true);
}
previousDefaultOpen.current = defaultOpen;
}, [defaultOpen]);
return (
<details
className="group rounded border border-line bg-bg/45"
open={defaultOpen}
open={open}
onToggle={(event) => setOpen(event.currentTarget.open)}
>
<summary className="flex cursor-pointer list-none items-center justify-between gap-3 px-3 py-2">
<span className="min-w-0">