diff --git a/src/features/dashboard/common/log-level-filter.tsx b/src/features/dashboard/common/log-level-filter.tsx index 7da260853..9055f8270 100644 --- a/src/features/dashboard/common/log-level-filter.tsx +++ b/src/features/dashboard/common/log-level-filter.tsx @@ -8,6 +8,7 @@ import { DropdownMenuRadioItem, DropdownMenuTrigger, } from '@/ui/primitives/dropdown-menu' +import { StatusIcon } from '@/ui/primitives/icons' import type { LogLevelValue } from './log-cells' const DEFAULT_OPTIONS: Array<{ value: LogLevelValue; label: string }> = [ @@ -63,16 +64,13 @@ export function LogLevelFilter({ function LevelIndicator({ level }: { level: LogLevelValue }) { return ( -
) } diff --git a/src/features/dashboard/templates/builds/status-filter.tsx b/src/features/dashboard/templates/builds/status-filter.tsx index 41ca529d9..9fb545f49 100644 --- a/src/features/dashboard/templates/builds/status-filter.tsx +++ b/src/features/dashboard/templates/builds/status-filter.tsx @@ -10,6 +10,7 @@ import { DropdownMenuSeparator, DropdownMenuTrigger, } from '@/ui/primitives/dropdown-menu' +import { StatusIcon } from '@/ui/primitives/icons' import { Status } from './table-cells' const STATUS_OPTIONS: Array<{ value: BuildStatus; label: string }> = [ @@ -83,14 +84,15 @@ interface StatusIconsProps { } function StatusIcons({ selectedStatuses }: StatusIconsProps) { - const sortedStatuses = STATUS_DISPLAY_ORDER.filter((s) => - selectedStatuses.includes(s) - ) - return ( -
- {sortedStatuses.map((status, i) => ( - +
+ {STATUS_DISPLAY_ORDER.map((status, i) => ( + ))}
) @@ -99,23 +101,28 @@ function StatusIcons({ selectedStatuses }: StatusIconsProps) { interface DashedStatusCircleIconProps { status: BuildStatus index: number + selected: boolean } function DashedStatusCircleIcon({ status, index, + selected, }: DashedStatusCircleIconProps) { return ( -
+ > + + + ) } diff --git a/src/ui/primitives/icons/status-icon.tsx b/src/ui/primitives/icons/status-icon.tsx index b36045440..9a3929a75 100644 --- a/src/ui/primitives/icons/status-icon.tsx +++ b/src/ui/primitives/icons/status-icon.tsx @@ -1,7 +1,7 @@ import { Icon, type IconProps } from './icon' /** - * ![StatusIcon](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDgiIGhlaWdodD0iNDgiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuMTY2IDhDMTQuMTY2IDExLjMxMzcgMTEuNDc5NyAxNCA4LjE2NjAyIDE0QzQuODUyMzEgMTQgMi4xNjYwMiAxMS4zMTM3IDIuMTY2MDIgOEMyLjE2NjAyIDQuNjg2MjkgNC44NTIzMSAyIDguMTY2MDIgMkMxMS40Nzk3IDIgMTQuMTY2IDQuNjg2MjkgMTQuMTY2IDhaIiBzdHJva2U9IiM4ODg4ODgiIHN0cm9rZS13aWR0aD0iMS4zMzMzMyIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLWRhc2hhcnJheT0iMS4zMyAyLjY3Ii8+PC9zdmc+) + * ![StatusIcon](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDgiIGhlaWdodD0iNDgiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuMTY2IDhDMTQuMTY2IDExLjMxMzcgMTEuNDc5NyAxNCA4LjE2NjAyIDE0QzQuODUyMzEgMTQgMi4xNjYwMiAxMS4zMTM3IDIuMTY2MDIgOEMyLjE2NjAyIDQuNjg2MjkgNC44NTIzMSAyIDguMTY2MDIgMkMxMS40Nzk3IDIgMTQuMTY2IDQuNjg2MjkgMTQuMTY2IDhaIiBzdHJva2U9IiM4ODg4ODgiIHN0cm9rZS13aWR0aD0iMS4zMzMzMyIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLWRhc2hhcnJheT0iMS4zMyAyLjY3IiBwYXRoTGVuZ3RoPSIzMiIvPjwvc3ZnPg==) * * Synced from Figma `Icon/16px/Status`. */ @@ -14,6 +14,7 @@ export const StatusIcon = (props: IconProps) => ( strokeLinejoin="round" strokeWidth="1.33333" strokeDasharray="1.33 2.67" + pathLength={32} /> )