fix: show toggle unknown button while unknown column is shown

This commit is contained in:
2026-07-19 09:48:01 +05:00
parent 184f1c4d1e
commit d2ad5b0b03
3 changed files with 40 additions and 4 deletions
@@ -0,0 +1,20 @@
import { describe, expect, it } from "vitest";
import { TaskStatus } from "@/model/taskStatus";
import { filterDefaultHiddenStatuses } from "./filterDefaultHiddenStatuses";
describe("filterDefaultHiddenStatuses", () => {
it("excludes unknown when no unknown tasks and column not shown", () => {
const result = filterDefaultHiddenStatuses(false, []);
expect(result).not.toContain(TaskStatus.UNKNOWN);
});
it("includes unknown when unknown tasks exist", () => {
const result = filterDefaultHiddenStatuses(true, []);
expect(result).toContain(TaskStatus.UNKNOWN);
});
it("includes unknown when column is shown even without unknown tasks", () => {
const result = filterDefaultHiddenStatuses(false, [TaskStatus.UNKNOWN]);
expect(result).toContain(TaskStatus.UNKNOWN);
});
});
+16
View File
@@ -0,0 +1,16 @@
import {
TaskStatus,
TASK_STATUS_META,
TASK_STATUS_ORDER,
} from "@/model/taskStatus";
export function filterDefaultHiddenStatuses(
hasUnknown: boolean,
shownHiddenColumns: TaskStatus[],
): TaskStatus[] {
return TASK_STATUS_ORDER.filter(
(s) =>
TASK_STATUS_META[s].defaultHidden &&
(s !== TaskStatus.UNKNOWN || hasUnknown || shownHiddenColumns.includes(TaskStatus.UNKNOWN)),
);
}
+4 -4
View File
@@ -4,6 +4,7 @@ import { listLocatedTasks } from "@/commands/listLocatedTasks";
import { resolveTaskLocations } from "@/commands/resolveTaskLocations";
import { appError, AppErrorVariant } from "@/error";
import { buildKanbanBoard } from "@/kanban/buildKanbanBoard";
import { filterDefaultHiddenStatuses } from "@/kanban/filterDefaultHiddenStatuses";
import {
parseKanbanInboundMessage,
type KanbanInboundMessage,
@@ -290,10 +291,9 @@ export class TaskKanbanPanel {
board,
scopeFilter: this.#scopeFilter,
shownHiddenColumns: this.#shownHiddenColumns,
defaultHiddenStatuses: TASK_STATUS_ORDER.filter(
(s) =>
TASK_STATUS_META[s].defaultHidden &&
(s !== TaskStatus.UNKNOWN || hasUnknown),
defaultHiddenStatuses: filterDefaultHiddenStatuses(
hasUnknown,
this.#shownHiddenColumns,
),
availableScopes: this.#availableScopes(),
dangerStatuses: hasUnknown ? [TaskStatus.UNKNOWN] : [],