fix(web): show empty board/list view when no issues match filters

Previously the entire view was replaced with "No matching issues" text.
Now the board columns or list view render even when empty.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Naiyuan Qing 2026-03-26 19:29:00 +08:00
parent 46708e8948
commit 5696b78a26

View file

@ -30,7 +30,7 @@ export function IssuesPage() {
const viewMode = useIssueViewStore((s) => s.viewMode);
const statusFilters = useIssueViewStore((s) => s.statusFilters);
const priorityFilters = useIssueViewStore((s) => s.priorityFilters);
const clearFilters = useIssueViewStore((s) => s.clearFilters);
const issues = useMemo(() => {
return allIssues.filter((issue) => {
@ -106,19 +106,7 @@ export function IssuesPage() {
{/* Content: scrollable */}
<div className="flex flex-col flex-1 min-h-0">
{issues.length === 0 ? (
<div className="flex flex-1 flex-col items-center justify-center gap-2 text-sm text-muted-foreground">
<p>No matching issues</p>
{(statusFilters.length > 0 || priorityFilters.length > 0) && (
<button
className="text-xs text-primary hover:underline"
onClick={clearFilters}
>
Clear filters
</button>
)}
</div>
) : viewMode === "board" ? (
{viewMode === "board" ? (
<BoardView
issues={issues}
visibleStatuses={visibleStatuses}