From 36123575ad64d91181e91eb712d152b0b971c577 Mon Sep 17 00:00:00 2001 From: Vincenzo Scamporlino Date: Thu, 25 May 2023 11:53:34 +0200 Subject: [PATCH] catalog-react: add reduceBackendCatalogFilters Signed-off-by: Vincenzo Scamporlino --- plugins/catalog-react/src/utils/filters.ts | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/plugins/catalog-react/src/utils/filters.ts b/plugins/catalog-react/src/utils/filters.ts index 109e864c52..5ab6e43593 100644 --- a/plugins/catalog-react/src/utils/filters.ts +++ b/plugins/catalog-react/src/utils/filters.ts @@ -16,6 +16,7 @@ import { Entity } from '@backstage/catalog-model'; import { EntityFilter } from '../types'; +import { EntityKindFilter, EntityTypeFilter } from '../filters'; export function reduceCatalogFilters( filters: EntityFilter[], @@ -28,6 +29,24 @@ export function reduceCatalogFilters( }, {} as Record); } +export function reduceBackendCatalogFilters(filters: EntityFilter[]) { + const backendCatalogFilters: Record< + string, + string | symbol | (string | symbol)[] + > = {}; + + filters.forEach(filter => { + if ( + filter instanceof EntityKindFilter || + filter instanceof EntityTypeFilter + ) { + Object.assign(backendCatalogFilters, filter.getCatalogFilters()); + } + }); + + return backendCatalogFilters; +} + export function reduceEntityFilters( filters: EntityFilter[], ): (entity: Entity) => boolean {