From 99b0e29920b03e75118769f40d6fadb7316cd3ce Mon Sep 17 00:00:00 2001 From: Paul Cowan Date: Tue, 20 Sep 2022 12:25:57 +0100 Subject: [PATCH] remove GetProps type from layouts Signed-off-by: Paul Cowan --- plugins/scaffolder/api-report.md | 12 ++---------- plugins/scaffolder/src/index.ts | 7 +------ plugins/scaffolder/src/layouts/index.tsx | 18 +++--------------- 3 files changed, 6 insertions(+), 31 deletions(-) diff --git a/plugins/scaffolder/api-report.md b/plugins/scaffolder/api-report.md index 65ec8f7ff9..539dd4f82c 100644 --- a/plugins/scaffolder/api-report.md +++ b/plugins/scaffolder/api-report.md @@ -21,7 +21,6 @@ import { IdentityApi } from '@backstage/core-plugin-api'; import { JsonObject } from '@backstage/types'; import { JSONSchema7 } from 'json-schema'; import { JsonValue } from '@backstage/types'; -import { ObjectFieldTemplateProps } from '@rjsf/core'; import { Observable } from '@backstage/types'; import { PropsWithChildren } from 'react'; import { default as React_2 } from 'react'; @@ -40,9 +39,9 @@ export function createScaffolderFieldExtension< ): Extension>; // @public -export function createScaffolderLayout( +export function createScaffolderLayout( options: LayoutOptions, -): Extension>; +): Extension>; // @public export type CustomFieldValidator = ( @@ -117,13 +116,6 @@ export type FieldExtensionOptions< validation?: CustomFieldValidator; }; -// @public -export type GetProps = T extends LayoutOptions - ? T['component'] extends LayoutTemplate - ? LayoutComponent> - : never - : never; - // @public export type LayoutComponent<_TInputProps> = () => null; diff --git a/plugins/scaffolder/src/index.ts b/plugins/scaffolder/src/index.ts index d4f5ae48bf..c16e12beb5 100644 --- a/plugins/scaffolder/src/index.ts +++ b/plugins/scaffolder/src/index.ts @@ -49,12 +49,7 @@ export type { FieldExtensionComponent, } from './extensions'; export { createScaffolderLayout, ScaffolderLayouts } from './layouts'; -export type { - LayoutOptions, - LayoutTemplate, - GetProps, - LayoutComponent, -} from './layouts'; +export type { LayoutOptions, LayoutTemplate, LayoutComponent } from './layouts'; export { EntityPickerFieldExtension, EntityNamePickerFieldExtension, diff --git a/plugins/scaffolder/src/layouts/index.tsx b/plugins/scaffolder/src/layouts/index.tsx index 14bd535dab..ce1dac9bdf 100644 --- a/plugins/scaffolder/src/layouts/index.tsx +++ b/plugins/scaffolder/src/layouts/index.tsx @@ -15,8 +15,7 @@ */ import { attachComponentData, Extension } from '@backstage/core-plugin-api'; -import { ObjectFieldTemplateProps } from '@rjsf/core'; -import type { LayoutOptions, LayoutTemplate } from './types'; +import type { LayoutOptions } from './types'; export const LAYOUTS_KEY = 'scaffolder.layout.v1'; export const LAYOUTS_WRAPPER_KEY = 'scaffolder.layouts.wrapper.v1'; @@ -28,25 +27,14 @@ export const LAYOUTS_WRAPPER_KEY = 'scaffolder.layouts.wrapper.v1'; */ export type LayoutComponent<_TInputProps> = () => null; -/** - * utility type to extract the component props from the LayoutOptions - * - * @public - */ -export type GetProps = T extends LayoutOptions - ? T['component'] extends LayoutTemplate - ? LayoutComponent> - : never - : never; - /** * Method for creating custom Layouts that can be used in the scaffolder frontend form * * @public */ -export function createScaffolderLayout( +export function createScaffolderLayout( options: LayoutOptions, -): Extension> { +): Extension> { return { expose() { const LayoutDataHolder: any = () => null;