mirror of
https://github.com/t8y2/dbx.git
synced 2026-10-31 08:23:34 +00:00
feat(sidebar): add visible database filters
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
export function visibleDatabaseFilterIsEnabled(visibleDatabases: string[] | undefined): boolean {
|
||||
return Array.isArray(visibleDatabases);
|
||||
}
|
||||
|
||||
export function filterVisibleDatabaseNames(databaseNames: string[], visibleDatabases: string[] | undefined): string[] {
|
||||
if (!visibleDatabaseFilterIsEnabled(visibleDatabases)) return databaseNames;
|
||||
const visible = new Set(visibleDatabases);
|
||||
return databaseNames.filter((name) => visible.has(name));
|
||||
}
|
||||
|
||||
export function normalizeVisibleDatabaseSelection(selectedNames: string[], databaseNames: string[]): string[] {
|
||||
const available = new Set(databaseNames);
|
||||
const seen = new Set<string>();
|
||||
return selectedNames.filter((name) => {
|
||||
if (!available.has(name) || seen.has(name)) return false;
|
||||
seen.add(name);
|
||||
return true;
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user