From 9d77cac4bb658c267f59c322a0584f18dbfde3ce Mon Sep 17 00:00:00 2001 From: "SPRINX0\\prochazka" Date: Thu, 25 Sep 2025 09:23:52 +0200 Subject: [PATCH] filter only tables with rows --- .../web/src/appobj/DatabaseObjectAppObject.svelte | 13 ++++++++++++- packages/web/src/stores.ts | 1 + packages/web/src/widgets/SqlObjectList.svelte | 1 + 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/web/src/appobj/DatabaseObjectAppObject.svelte b/packages/web/src/appobj/DatabaseObjectAppObject.svelte index 7f0941854..707826863 100644 --- a/packages/web/src/appobj/DatabaseObjectAppObject.svelte +++ b/packages/web/src/appobj/DatabaseObjectAppObject.svelte @@ -4,7 +4,17 @@ export const extractKey = ({ schemaName, pureName }) => (schemaName ? `${schemaName}.${pureName}` : pureName); export const createMatcher = (filter, cfg = DEFAULT_OBJECT_SEARCH_SETTINGS) => - ({ schemaName, pureName, objectComment, tableEngine, columns, objectTypeField, tableName, createSql }) => { + ({ + schemaName, + pureName, + objectComment, + tableEngine, + columns, + objectTypeField, + tableName, + createSql, + tableRowCount, + }) => { const mainArgs = []; const childArgs = []; if (cfg.schemaName) mainArgs.push(schemaName); @@ -12,6 +22,7 @@ if (objectTypeField == 'tables') { if (cfg.tableComment) mainArgs.push(objectComment); if (cfg.tableEngine) mainArgs.push(tableEngine); + if (cfg.tablesWithRows && !tableRowCount) return 'none'; for (const column of columns || []) { if (cfg.columnName) childArgs.push(column.columnName); diff --git a/packages/web/src/stores.ts b/packages/web/src/stores.ts index 34188e2cc..a89e76540 100644 --- a/packages/web/src/stores.ts +++ b/packages/web/src/stores.ts @@ -195,6 +195,7 @@ export const DEFAULT_OBJECT_SEARCH_SETTINGS = { columnComment: false, sqlObjectText: false, tableEngine: false, + tablesWithRows: false, }; export const DEFAULT_CONNECTION_SEARCH_SETTINGS = { diff --git a/packages/web/src/widgets/SqlObjectList.svelte b/packages/web/src/widgets/SqlObjectList.svelte index d33d8da97..96de61bcd 100644 --- a/packages/web/src/widgets/SqlObjectList.svelte +++ b/packages/web/src/widgets/SqlObjectList.svelte @@ -143,6 +143,7 @@ res.push({ label: 'Column comment', switchValue: 'columnComment' }); res.push({ label: 'View/procedure/trigger text', switchValue: 'sqlObjectText' }); res.push({ label: 'Table engine', switchValue: 'tableEngine' }); + res.push({ label: 'Only tables with rows', switchValue: 'tablesWithRows' }); } return res.map(item => ({ ...item,