feat(ui): uniformise les droplist dynamiques sur le style du picker d'agent
Introduit SmallDropdown comme composant partagé et le fait adopter par AgentsPanel, ModelServerSelect, OpenCodeModeFields, TemplateEditor et TicketViewportSelect, pour que toutes les listes déroulantes dynamiques (agent, modèle, template, viewport) partagent la même apparence que le sélecteur d'agent de la création de ticket. Refs #114 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@ -86,6 +86,11 @@ async function waitForAgentsIdle() {
|
||||
});
|
||||
}
|
||||
|
||||
function chooseDropdownOption(label: string | RegExp, optionName: string | RegExp) {
|
||||
fireEvent.click(screen.getByLabelText(label));
|
||||
fireEvent.click(screen.getByRole("option", { name: optionName }));
|
||||
}
|
||||
|
||||
/**
|
||||
* Opens the TemplateEditor overlay, fills the create-template form, and saves it.
|
||||
* Adapted for the new fullscreen-editor flow:
|
||||
@ -115,9 +120,12 @@ async function createTemplate(
|
||||
target: { value: content },
|
||||
});
|
||||
if (profileId) {
|
||||
fireEvent.change(screen.getByLabelText("template default profile"), {
|
||||
target: { value: profileId },
|
||||
});
|
||||
const profileField = screen.getByLabelText("template default profile");
|
||||
if (profileField.tagName === "INPUT") {
|
||||
fireEvent.change(profileField, { target: { value: profileId } });
|
||||
} else {
|
||||
chooseDropdownOption("template default profile", profileId);
|
||||
}
|
||||
}
|
||||
|
||||
// Save via the "Save template" button (aria-label on the submit button)
|
||||
|
||||
Reference in New Issue
Block a user