From ff85fca3e9e70023a4fce86d162d20005a8a0073 Mon Sep 17 00:00:00 2001 From: Bogdan Nechyporenko Date: Thu, 9 Mar 2023 17:36:39 +0100 Subject: [PATCH] Filter out templates Signed-off-by: Bogdan Nechyporenko --- plugins/scaffolder/alpha-api-report.md | 5 ----- plugins/scaffolder/api-report.md | 1 + plugins/scaffolder/src/alpha.ts | 1 + plugins/scaffolder/src/next/Router/Router.tsx | 7 ++----- .../src/next/TemplateListPage/TemplateGroups.tsx | 7 +++++-- .../src/next/TemplateListPage/TemplateListPage.tsx | 4 ++-- plugins/scaffolder/src/next/TemplateListPage/index.ts | 2 +- 7 files changed, 12 insertions(+), 15 deletions(-) diff --git a/plugins/scaffolder/alpha-api-report.md b/plugins/scaffolder/alpha-api-report.md index f842ff35e1..1fc77322bd 100644 --- a/plugins/scaffolder/alpha-api-report.md +++ b/plugins/scaffolder/alpha-api-report.md @@ -31,7 +31,6 @@ export type NextRouterProps = { }>; }; groups?: TemplateGroupFilter[]; - templateFilter?: TemplatetemplateFilterFilter; FormProps?: FormProps_2; contextMenu?: { editor?: boolean; @@ -51,9 +50,5 @@ export type TemplateGroupFilter = { filter: (entity: Entity) => boolean; }; -// Warnings were encountered during analysis: -// -// src/next/Router/Router.d.ts:22:5 - (ae-forgotten-export) The symbol "TemplatetemplateFilterFilter" needs to be exported by the entry point alpha.d.ts - // (No @packageDocumentation comment for this package) ``` diff --git a/plugins/scaffolder/api-report.md b/plugins/scaffolder/api-report.md index 9b39d14db4..3865a2517d 100644 --- a/plugins/scaffolder/api-report.md +++ b/plugins/scaffolder/api-report.md @@ -332,6 +332,7 @@ export type RouterProps = { title?: React_2.ReactNode; filter: (entity: Entity) => boolean; }>; + templateFilter?: (entity: Entity) => boolean; defaultPreviewTemplate?: string; headerOptions?: { pageTitleOverride?: string; diff --git a/plugins/scaffolder/src/alpha.ts b/plugins/scaffolder/src/alpha.ts index 72eb073fba..e1c2260acb 100644 --- a/plugins/scaffolder/src/alpha.ts +++ b/plugins/scaffolder/src/alpha.ts @@ -17,6 +17,7 @@ export { NextScaffolderPage } from './plugin'; export { type TemplateGroupFilter, + type TemplateFilter, type NextRouterProps, type FormProps, } from './next'; diff --git a/plugins/scaffolder/src/next/Router/Router.tsx b/plugins/scaffolder/src/next/Router/Router.tsx index 8784cb7d0d..167801c255 100644 --- a/plugins/scaffolder/src/next/Router/Router.tsx +++ b/plugins/scaffolder/src/next/Router/Router.tsx @@ -29,10 +29,7 @@ import { } from '@backstage/plugin-scaffolder-react'; import { TemplateEntityV1beta3 } from '@backstage/plugin-scaffolder-common'; -import { - TemplateGroupFilter, - TemplatetemplateFilterFilter, -} from '../TemplateListPage/TemplateGroups'; +import { TemplateGroupFilter, TemplateFilter } from '../TemplateListPage'; import { DEFAULT_SCAFFOLDER_FIELD_EXTENSIONS } from '../../extensions/default'; import { @@ -64,7 +61,7 @@ export type NextRouterProps = { }>; }; groups?: TemplateGroupFilter[]; - templateFilter?: TemplatetemplateFilterFilter; + templateFilter?: TemplateFilter; // todo(blam): rename this to formProps FormProps?: FormProps; contextMenu?: { diff --git a/plugins/scaffolder/src/next/TemplateListPage/TemplateGroups.tsx b/plugins/scaffolder/src/next/TemplateListPage/TemplateGroups.tsx index a3e3467d06..decfeee470 100644 --- a/plugins/scaffolder/src/next/TemplateListPage/TemplateGroups.tsx +++ b/plugins/scaffolder/src/next/TemplateListPage/TemplateGroups.tsx @@ -34,7 +34,10 @@ import { TemplateGroup } from '@backstage/plugin-scaffolder-react/alpha'; import { viewTechDocRouteRef, selectedTemplateRouteRef } from '../../routes'; import { useNavigate } from 'react-router-dom'; -export type TemplatetemplateFilterFilter = (entity: Entity) => boolean; +/** + * @alpha + */ +export type TemplateFilter = (entity: Entity) => boolean; /** * @alpha @@ -46,7 +49,7 @@ export type TemplateGroupFilter = { export interface TemplateGroupsProps { groups: TemplateGroupFilter[]; - templateFilter?: TemplatetemplateFilterFilter; + templateFilter?: TemplateFilter; TemplateCardComponent?: React.ComponentType<{ template: TemplateEntityV1beta3; }>; diff --git a/plugins/scaffolder/src/next/TemplateListPage/TemplateListPage.tsx b/plugins/scaffolder/src/next/TemplateListPage/TemplateListPage.tsx index fd90098b96..3f81188e06 100644 --- a/plugins/scaffolder/src/next/TemplateListPage/TemplateListPage.tsx +++ b/plugins/scaffolder/src/next/TemplateListPage/TemplateListPage.tsx @@ -38,7 +38,7 @@ import { useRouteRef } from '@backstage/core-plugin-api'; import { TemplateGroupFilter, TemplateGroups, - TemplatetemplateFilterFilter, + TemplateFilter, } from './TemplateGroups'; import { registerComponentRouteRef } from '../../routes'; import { ContextMenu } from './ContextMenu'; @@ -48,7 +48,7 @@ export type TemplateListPageProps = { template: TemplateEntityV1beta3; }>; groups?: TemplateGroupFilter[]; - templateFilter?: TemplatetemplateFilterFilter; + templateFilter?: TemplateFilter; contextMenu?: { editor?: boolean; actions?: boolean; diff --git a/plugins/scaffolder/src/next/TemplateListPage/index.ts b/plugins/scaffolder/src/next/TemplateListPage/index.ts index 0436cfeeeb..a974052730 100644 --- a/plugins/scaffolder/src/next/TemplateListPage/index.ts +++ b/plugins/scaffolder/src/next/TemplateListPage/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ export { TemplateListPage } from './TemplateListPage'; -export type { TemplateGroupFilter } from './TemplateGroups'; +export type { TemplateGroupFilter, TemplateFilter } from './TemplateGroups';