Files
Naiyuan Qing a8d5daac50 fix(chat): decouple the follow-up queue card from the composer chrome (#6444)
* fix(chat): decouple the follow-up queue card from the composer chrome

The queue used to restyle the composer on appearance (hasQueue prop
flipping rounded-lg to rounded-4xl plus a stronger shadow), which made
the input box visibly jump the moment a message was queued. The stack
also relied on a three-way implicit contract (-mb-8 / pb-10 / z-10)
spread across both components.

Now the composer chrome is constant — no hasQueue prop, no conditional
classes, only a static z-10 so it always paints on top — and the tucked
look is owned entirely by ChatQueue: it slides its own bottom edge under
the composer (z-0, -mb-3, pb-4) and insets itself (mx-3) so the stack
reads as two distinct layers. The queue chrome itself is lighter and
smaller: caption-size muted rows, xs action buttons, border-only card,
and an animate-in entrance.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* test(chat): align queue scroller cap assertion with max-h-40

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 18:13:42 +08:00
..