mirror of
https://github.com/stablyai/orca.git
synced 2026-09-28 00:02:41 +00:00
Improve agent status search view with consistent search fields
Standardize search placeholder text to "Search for X..." format across agent, workspace, and worktree pickers. Update input styling for visual consistency with design system (borders, background, focus states, and text size). Add new i18n entries for agent search string.
This commit is contained in:
@@ -74,11 +74,11 @@ export function ActivityThreadListToolbar({
|
||||
value={query}
|
||||
onChange={(event) => onQueryChange(event.target.value)}
|
||||
placeholder={translate(
|
||||
'auto.components.activity.ActivityPrototypePage.795cbf26e2',
|
||||
'Filter...'
|
||||
'auto.components.activity.ActivityPrototypePage.searchAgent',
|
||||
'Search for agents...'
|
||||
)}
|
||||
className={cn(
|
||||
'h-7 w-full pl-6 text-[11px] shadow-none focus-visible:ring-0',
|
||||
'h-7 w-full border border-border/80 bg-background pl-6 text-xs shadow-none placeholder:text-xs focus-visible:border-ring/70 focus-visible:ring-0 dark:border-white/15 dark:bg-white/[0.04]',
|
||||
query ? 'pr-6' : ''
|
||||
)}
|
||||
/>
|
||||
@@ -109,7 +109,7 @@ export function ActivityThreadListToolbar({
|
||||
>
|
||||
<SelectTrigger
|
||||
size="sm"
|
||||
className="h-7 w-[116px] shrink-0 px-2 text-[11px]"
|
||||
className="h-7 w-[116px] shrink-0 px-2 text-xs"
|
||||
aria-label={translate(
|
||||
'auto.components.activity.ActivityPrototypePage.770d458144',
|
||||
'Group agent activity by'
|
||||
@@ -194,7 +194,7 @@ export function ActivityThreadListToolbar({
|
||||
type="button"
|
||||
variant="ghost"
|
||||
size="sm"
|
||||
className="h-7 gap-1 px-2 text-[11px] text-muted-foreground hover:text-foreground"
|
||||
className="h-7 gap-1 px-2 text-xs text-muted-foreground hover:text-foreground"
|
||||
onClick={onMarkAllThreadsRead}
|
||||
disabled={!hasUnreadThreads}
|
||||
>
|
||||
@@ -212,7 +212,7 @@ export function ActivityThreadListToolbar({
|
||||
type="button"
|
||||
variant="ghost"
|
||||
size="sm"
|
||||
className="h-7 gap-1 px-2 text-[11px] text-muted-foreground hover:text-foreground"
|
||||
className="h-7 gap-1 px-2 text-xs text-muted-foreground hover:text-foreground"
|
||||
onClick={onClearCompleted}
|
||||
disabled={!hasCompletedThreads}
|
||||
>
|
||||
|
||||
@@ -300,7 +300,7 @@ describe('Agent Map workspace context menu', () => {
|
||||
fireEvent.click(setParent)
|
||||
// Candidate rows are virtualized and measure 0 in happy-dom; the mounted
|
||||
// search input is the picker's lifecycle signal.
|
||||
expect(await screen.findByPlaceholderText('Search worktrees...')).toBeInTheDocument()
|
||||
expect(await screen.findByPlaceholderText('Search for worktrees...')).toBeInTheDocument()
|
||||
})
|
||||
|
||||
it('opens the existing worktree composer from a project ring', async () => {
|
||||
|
||||
@@ -358,7 +358,7 @@ function ParentWorktreeCandidateList({
|
||||
wrapperClassName="shrink-0"
|
||||
placeholder={translate(
|
||||
'auto.components.ComposerParentWorktreePicker.searchPlaceholder',
|
||||
'Search workspaces...'
|
||||
'Search for workspaces...'
|
||||
)}
|
||||
/>
|
||||
<CommandList ref={listRef} className="max-h-72 min-h-0 flex-1">
|
||||
|
||||
@@ -42,7 +42,9 @@ it('preserves workspace focus on mount and focuses search only when explicitly e
|
||||
</TooltipProvider>
|
||||
)
|
||||
|
||||
expect(view.getByRole('textbox', { name: 'Search' })).toBeTruthy()
|
||||
const searchInput = view.getByRole('textbox', { name: 'Search' })
|
||||
expect(searchInput).toBeTruthy()
|
||||
expect(searchInput.getAttribute('placeholder')).toBe('Search for agents...')
|
||||
expect(document.activeElement).toBe(workspaceInput)
|
||||
|
||||
fireEvent.keyDown(view.getByRole('textbox', { name: 'Search' }), { key: 'Escape' })
|
||||
|
||||
@@ -124,10 +124,10 @@ export default function SidebarAgentsList({
|
||||
}
|
||||
}}
|
||||
placeholder={translate(
|
||||
'auto.components.activity.ActivityPrototypePage.795cbf26e2',
|
||||
'Filter...'
|
||||
'auto.components.activity.ActivityPrototypePage.searchAgent',
|
||||
'Search for agents...'
|
||||
)}
|
||||
className="h-7 w-full text-[11px] shadow-none focus-visible:ring-0"
|
||||
className="h-7 w-full border border-border/80 bg-background text-[11px] shadow-none placeholder:text-[10px] focus-visible:border-ring/70 focus-visible:ring-0 dark:border-white/15 dark:bg-white/[0.04]"
|
||||
aria-label={translate(
|
||||
'auto.components.activity.ActivityPrototypePage.search',
|
||||
'Search'
|
||||
|
||||
@@ -104,11 +104,11 @@ export default function WorkspaceKanbanSearchField({
|
||||
value={query}
|
||||
aria-label={translate(
|
||||
'auto.components.sidebar.WorkspaceKanbanSearchField.c0cd6bdf6c',
|
||||
'Search workspaces'
|
||||
'Search for workspaces...'
|
||||
)}
|
||||
placeholder={translate(
|
||||
'auto.components.sidebar.WorkspaceKanbanSearchField.c0cd6bdf6c',
|
||||
'Search workspaces'
|
||||
'Search for workspaces...'
|
||||
)}
|
||||
aria-invalid={isTooLarge || undefined}
|
||||
className="h-7 border-worktree-sidebar-border bg-background pl-7 text-xs"
|
||||
|
||||
@@ -357,7 +357,7 @@ export function WorktreeParentPickerPopover({
|
||||
wrapperClassName="shrink-0"
|
||||
placeholder={translate(
|
||||
'auto.components.sidebar.WorktreeParentPickerPopover.searchPlaceholder',
|
||||
'Search worktrees...'
|
||||
'Search for worktrees...'
|
||||
)}
|
||||
/>
|
||||
<CommandList ref={listRef} className="max-h-72 min-h-0 flex-1">
|
||||
|
||||
@@ -6032,7 +6032,7 @@
|
||||
"WorktreeParentPickerPopover": {
|
||||
"failedSetParent": "Failed to set parent worktree",
|
||||
"current": "Current",
|
||||
"searchPlaceholder": "Search worktrees...",
|
||||
"searchPlaceholder": "Search for worktrees...",
|
||||
"empty": "No matching eligible worktrees.",
|
||||
"setParentFor": "Set parent for"
|
||||
},
|
||||
@@ -6167,7 +6167,7 @@
|
||||
"WorkspaceKanbanSearchField": {
|
||||
"bdb753c78d": "No workspaces match",
|
||||
"4d96c209d6": "{{value0}} of {{value1}} workspaces match",
|
||||
"c0cd6bdf6c": "Search workspaces",
|
||||
"c0cd6bdf6c": "Search for workspaces...",
|
||||
"3b7ea51793": "Clear search",
|
||||
"7f1c2e94a5": "Search text is too long — the board is unfiltered",
|
||||
"9a4d0f6b21": "Too long"
|
||||
@@ -16253,6 +16253,7 @@
|
||||
"clearCompleted": "Clear completed",
|
||||
"none": "None",
|
||||
"search": "Search",
|
||||
"searchAgent": "Search for agents...",
|
||||
"showUnreadOnly": "Show unread only",
|
||||
"showChildAgents": "Show child agents",
|
||||
"activityOptions": "Activity options",
|
||||
@@ -16879,7 +16880,7 @@
|
||||
"label": "Parent worktree",
|
||||
"noParent": "No parent",
|
||||
"description": "Nests this workspace under another in the sidebar. Does not change the base branch.",
|
||||
"searchPlaceholder": "Search workspaces...",
|
||||
"searchPlaceholder": "Search for workspaces...",
|
||||
"noMatches": "No matches."
|
||||
},
|
||||
"browserPane": {
|
||||
|
||||
@@ -14190,6 +14190,7 @@
|
||||
"clearCompleted": "Borrar completados",
|
||||
"none": "Ninguno",
|
||||
"search": "Buscar",
|
||||
"searchAgent": "Buscar agentes...",
|
||||
"showUnreadOnly": "Mostrar solo no leídos",
|
||||
"showChildAgents": "Mostrar agentes secundarios",
|
||||
"activityOptions": "Opciones de actividad",
|
||||
|
||||
@@ -15458,6 +15458,7 @@
|
||||
"4a3986b200": "Statut",
|
||||
"770d458144": "Grouper l'activité des agents par",
|
||||
"795cbf26e2": "Filtrer...",
|
||||
"searchAgent": "Rechercher des agents...",
|
||||
"4616ea39fd": "Aller à l'espace de travail",
|
||||
"threadListOptionsFiltered": "Options de la liste des fils, filtres actifs",
|
||||
"showSearch": "Afficher la recherche",
|
||||
|
||||
@@ -14190,6 +14190,7 @@
|
||||
"clearCompleted": "完了済みをクリア",
|
||||
"none": "なし",
|
||||
"search": "検索",
|
||||
"searchAgent": "エージェントを検索...",
|
||||
"showUnreadOnly": "未読のみ表示",
|
||||
"showChildAgents": "子 Agent を表示",
|
||||
"activityOptions": "アクティビティのオプション",
|
||||
|
||||
@@ -14268,6 +14268,7 @@
|
||||
"clearCompleted": "완료된 항목 지우기",
|
||||
"none": "없음",
|
||||
"search": "검색",
|
||||
"searchAgent": "에이전트 검색...",
|
||||
"showUnreadOnly": "읽지 않은 항목만 표시",
|
||||
"showChildAgents": "하위 에이전트 표시",
|
||||
"activityOptions": "활동 옵션",
|
||||
|
||||
@@ -14268,6 +14268,7 @@
|
||||
"clearCompleted": "清除已完成",
|
||||
"none": "无",
|
||||
"search": "搜索",
|
||||
"searchAgent": "搜索 Agent...",
|
||||
"showUnreadOnly": "仅显示未读",
|
||||
"showChildAgents": "显示子智能体",
|
||||
"activityOptions": "活动选项",
|
||||
|
||||
Reference in New Issue
Block a user