fix: simplify generation composer

This commit is contained in:
2026-05-20 22:04:27 +08:00
parent 06f3eb0504
commit 45b25d01f1
2 changed files with 17 additions and 55 deletions

File diff suppressed because one or more lines are too long

View File

@@ -3928,7 +3928,6 @@ function SourceSubjectPipeline({
const subjectAgent = job.subject_agent
const agentAnalysis = subjectAgent?.analysis ?? null
const agentMessages = subjectAgent?.messages ?? []
const agentTraits = agentAnalysis?.trait_chips ?? []
const selectedAgentTraits = agentSelectedTraits
const effectiveAgentMode = subjectAgent?.selected_mode ?? agentMode
@@ -3936,12 +3935,6 @@ function SourceSubjectPipeline({
const effectiveAgentViews = subjectViewsForQuantity(effectiveAgentQuantity)
const effectivePrompt = (agentPrompt || subjectAgent?.generation_prompt_en || "").trim()
const effectiveRequirement = (subjectAgent?.requirements_zh || agentRequirement).trim()
const requirementSummary = effectivePrompt
? "提示词已生成,请在确认弹窗里检查后出图;需要改动时直接继续发送消息。"
: effectiveRequirement || "按当前参考图和保留元素生成。"
const agentUserMessageCount = agentMessages.filter((message) => message.role === "user").length
const agentHiddenAssistantCount = agentMessages.length - agentUserMessageCount
const agentSummaryVisible = Boolean(effectivePrompt || effectiveRequirement || selectedAgentTraits.length || agentMessages.length)
const canGenerateAgentPack = effectiveAgentMode === "custom"
? Boolean(effectiveRequirement || agentReferenceFrames.length)
: agentReferenceFrames.length > 0
@@ -4228,54 +4221,11 @@ function SourceSubjectPipeline({
</span>
)}
</div>
<div className="min-h-[86px] flex-1 overflow-auto rounded border border-white/8 bg-black/20 p-1.5">
{agentSummaryVisible ? (
<div className="space-y-1.5">
<div className="rounded-md border border-cyan-200/12 bg-cyan-300/[0.06] px-2 py-1.5">
<div className="text-[9px] font-semibold text-cyan-50/62"></div>
<p className="mt-0.5 line-clamp-3 text-[10px] leading-snug text-white/64">
{requirementSummary}
</p>
</div>
{selectedAgentTraits.length ? (
<div className="rounded-md border border-white/8 bg-black/18 px-2 py-1.5">
<div className="mb-1 flex items-center justify-between gap-2 text-[9px]">
<span className={agentSelectedTraitsDirty ? "font-semibold text-cyan-100/58" : "font-semibold text-white/44"}>
{agentSelectedTraitsDirty ? "待发送保留元素" : "保留元素"}
</span>
<span className="text-white/28">{selectedAgentTraits.length}</span>
</div>
<div className="flex max-h-[44px] flex-wrap gap-1 overflow-hidden">
{selectedAgentTraits.slice(0, 8).map((trait) => (
<span key={trait} className="rounded-full border border-emerald-100/28 bg-emerald-300/10 px-1.5 py-0.5 text-[8.5px] leading-none text-emerald-50/72">
{trait}
</span>
))}
{selectedAgentTraits.length > 8 ? (
<span className="rounded-full border border-white/10 bg-black/24 px-1.5 py-0.5 text-[8.5px] leading-none text-white/34">
+{selectedAgentTraits.length - 8}
</span>
) : null}
</div>
</div>
) : null}
{agentMessages.length ? (
<div className="rounded-md border border-white/8 bg-black/16 px-2 py-1 text-[9px] leading-snug text-white/32">
· {agentUserMessageCount} {agentHiddenAssistantCount ? `,隐藏 ${agentHiddenAssistantCount} 条模型确认` : ""}
</div>
) : null}
</div>
) : (
<div className="flex h-full min-h-[74px] items-center justify-center px-2 text-center text-[10px] leading-snug text-white/30">
</div>
)}
</div>
<div className="mt-2 rounded-md border border-white/10 bg-black/35 p-1.5">
<div className="rounded-md border border-white/10 bg-black/35 p-1.5">
<textarea
value={agentInput}
onChange={(event) => setAgentInput(event.target.value)}
placeholder="补充你想调整的点;不写则按已选保留元素和当前张数生成。"
placeholder="直接写要怎么生成,或补充要改什么。"
className="h-[72px] w-full resize-none rounded border border-transparent bg-transparent px-1 py-1 text-[10.5px] leading-snug text-white outline-none transition placeholder:text-white/24 focus:border-cyan-200/45"
/>
<div className="mt-1 flex items-center gap-1.5">