From 4e6c9b703db3c03e2fac69fce325d2b427f11179 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8C=E4=B8=AB=E8=AE=B2=E6=A2=B5?= Date: Fri, 16 Oct 2026 08:59:09 +0800 Subject: [PATCH] feat(search): ignore underscores in object browser search --- apps/desktop/src/lib/table/objectBrowserRows.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/apps/desktop/src/lib/table/objectBrowserRows.ts b/apps/desktop/src/lib/table/objectBrowserRows.ts index bf04d74d28..d420de278a 100644 --- a/apps/desktop/src/lib/table/objectBrowserRows.ts +++ b/apps/desktop/src/lib/table/objectBrowserRows.ts @@ -338,7 +338,14 @@ export function filterObjectBrowserRows(rows: ObjectBrowserRow[], query: string) // matches names and comments only. return rows.filter((row) => [row.displayName, row.name, row.comment].filter(Boolean).some((value) => regex.test(String(value)))); } - return rows.filter((row) => [row.displayName, row.name, row.comment].filter(Boolean).some((value) => String(value).toLowerCase().includes(q))); + return rows.filter((row) => { + // Let omitted underscores match object names without changing comment or explicit underscore searches. + const matchesName = [row.displayName, row.name].filter(Boolean).some((value) => { + const name = String(value).toLowerCase(); + return name.includes(q) || name.replace(/_/g, "").includes(q); + }); + return matchesName || !!row.comment?.toLowerCase().includes(q); + }); } export function countObjectBrowserRowsByFilter(rows: ObjectBrowserRow[]): ObjectBrowserFilterCounts {