feat(grid): include comments in column search

This commit is contained in:
t8y2 committed 2026-07-21 23:14:42 +08:00
1 parent 4e926cf22a
commit 43ff5a91e7
2 files changed
+9 -5

No files matched your search

@@ -201,6 +201,7 @@ import type { DataGridSortDirection, DataGridSortMode } from "@/lib/dataGrid/dat
import { DATA_GRID_COMPACT_TOPBAR_WIDTH, type DataGridReloadIntent, type DataGridToolbarActionCapability, type DataGridToolbarAutoRefreshCapability, type DataGridToolbarSaveCapability } from "@/lib/dataGrid/dataGridToolbar"; import { DATA_GRID_COMPACT_TOPBAR_WIDTH, type DataGridReloadIntent, type DataGridToolbarActionCapability, type DataGridToolbarAutoRefreshCapability, type DataGridToolbarSaveCapability } from "@/lib/dataGrid/dataGridToolbar";
import { getTableMetadataCapabilities } from "@/lib/table/tableMetadataCapabilities"; import { getTableMetadataCapabilities } from "@/lib/table/tableMetadataCapabilities";
import { getTableStructureCapabilities } from "@/lib/table/tableStructureCapabilities"; import { getTableStructureCapabilities } from "@/lib/table/tableStructureCapabilities";
import { filterObjectBrowserTableColumns } from "@/lib/table/objectBrowserTableInfo";
import { reserveDataGridHeaderLine } from "@/lib/dataGrid/dataGridHeaderLayout"; import { reserveDataGridHeaderLine } from "@/lib/dataGrid/dataGridHeaderLayout";
import { supportsTableStructureEditing } from "@/lib/database/databaseCapabilities"; import { supportsTableStructureEditing } from "@/lib/database/databaseCapabilities";
import { rememberDataGridConditionHistory } from "@/lib/dataGrid/dataGridConditionHistory"; import { rememberDataGridConditionHistory } from "@/lib/dataGrid/dataGridConditionHistory";
@@ -7081,11 +7082,7 @@ onUnmounted(() => {
stopLoadingElapsedTimer(); stopLoadingElapsedTimer();
}); });
const filteredColumns = computed(() => { const filteredColumns = computed(() => filterObjectBrowserTableColumns(props.tableMeta?.columns ?? [], searchQuery.value));
if (!searchQuery.value) return props.tableMeta?.columns ?? [];
const q = searchQuery.value.toLowerCase();
return (props.tableMeta?.columns ?? []).filter((c) => c.name.toLowerCase().includes(q) || c.data_type.toLowerCase().includes(q));
});
const filteredIndexes = computed(() => { const filteredIndexes = computed(() => {
if (!searchQuery.value) return indexes.value; if (!searchQuery.value) return indexes.value;
+7
View File
@@ -1,4 +1,5 @@
import { strict as assert } from "node:assert"; import { strict as assert } from "node:assert";
import { readFileSync } from "node:fs";
import { test } from "vitest"; import { test } from "vitest";
import { filterObjectBrowserTableColumns } from "../../apps/desktop/src/lib/table/objectBrowserTableInfo.ts"; import { filterObjectBrowserTableColumns } from "../../apps/desktop/src/lib/table/objectBrowserTableInfo.ts";
@@ -46,3 +47,9 @@ test("returns every column for empty searches and preserves match order", () =>
["note", "empty_note"], ["note", "empty_note"],
); );
}); });
test("keeps the data-grid table properties search on the shared column filter", () => {
const source = readFileSync("apps/desktop/src/components/grid/DataGrid.vue", "utf8");
assert.match(source, /filterObjectBrowserTableColumns\(props\.tableMeta\?\.columns \?\? \[\], searchQuery\.value\)/);
});