fix(frontend): repositionne le bouton Conversations de CustomAgentChatView hors des contrôles de choix d'agents — header custom-agent-chat-header repoussé sous la bande des contrôles de cellule (padding haut 2.25rem) dans le contexte d'empilement local du chat, menu Conversations borné à la cellule (droite 22rem, max-width 100cqw), repli en colonne aligné à gauche sous 419.99px puis cible pleine largeur sous 279.99px via container queries, testids custom-agent-chat-header/identity/conversations/menu, tests de non-chevauchement à 600/360/240px et garde-fous dans LayoutGrid.cellControlsLayering — #365 (QA verte: npm test ciblé CustomAgentChatView + LayoutGrid.cellControlsLayering 2 fichiers 106 tests OK, Firefox headless layout check 600/360/240 PASS, npm run build OK, git diff --check OK; npm audit: 9 vulnérabilités préexistantes non liées)

This commit is contained in:
2026-09-17 08:29:11 +02:00
parent 6a1a74621a
commit db121bbe23
4 changed files with 129 additions and 4 deletions

View File

@ -2966,18 +2966,26 @@ export function CustomAgentChatView({
<div
role="toolbar"
aria-label={t("custom.actions")}
className="relative z-20 flex shrink-0 items-center gap-2 border-b border-border px-3 py-2"
data-testid="custom-agent-chat-header"
className="custom-agent-chat-header relative z-20 shrink-0 border-b border-border"
>
<div className="min-w-0 flex-1 overflow-hidden">
<div
data-testid="custom-agent-chat-identity"
className="custom-agent-chat-identity min-w-0 overflow-hidden"
>
<div className="truncate text-sm font-medium">{agentName}</div>
<div className="truncate text-xs text-muted">
{tr("CLI personnalisée", "Custom CLI")} · {profile.name}
</div>
</div>
<div className="relative shrink-0">
<div
data-testid="custom-agent-chat-conversations"
className="custom-agent-chat-conversations relative shrink-0"
>
<Button
size="sm"
variant="ghost"
className="custom-agent-chat-conversations-button"
aria-expanded={conversationMenuOpen}
aria-haspopup="menu"
onClick={() => setConversationMenuOpen((open) => !open)}
@ -2988,7 +2996,8 @@ export function CustomAgentChatView({
<div
role="menu"
aria-label={tr("Conversations", "Conversations")}
className="absolute right-0 top-full z-50 mt-1 w-[min(22rem,calc(100vw-1rem))] overflow-hidden rounded-md border border-border bg-raised shadow-xl"
data-testid="custom-agent-chat-conversations-menu"
className="custom-agent-chat-conversations-menu absolute top-full z-50 mt-1 overflow-hidden rounded-md border border-border bg-raised shadow-xl"
>
{effectiveBusy && (
<p className="border-b border-border bg-warning/10 px-3 py-2 text-xs text-warning">