diff --git a/plugins/scaffolder-react/api-report.md b/plugins/scaffolder-react/api-report.md index f2076f8f95..deead4366c 100644 --- a/plugins/scaffolder-react/api-report.md +++ b/plugins/scaffolder-react/api-report.md @@ -370,30 +370,22 @@ export const SecretsContextProvider: ({ }: PropsWithChildren<{}>) => JSX.Element; // @alpha -<<<<<<< HEAD export const Stepper: (stepperProps: StepperProps) => JSX.Element; -======= -export const Stepper: ({ layouts, ...props }: StepperProps) => JSX.Element; ->>>>>>> be504a73cc (run api-report) // @alpha export type StepperProps = { manifest: TemplateParameterSchema; extensions: NextFieldExtensionOptions[]; templateName?: string; + FormProps?: FormProps; initialState?: Record; -<<<<<<< HEAD onCreate: (values: Record) => Promise; components?: { ReviewStateComponent?: (props: ReviewStateProps) => JSX.Element; createButtonText?: ReactNode; reviewButtonText?: ReactNode; }; -======= - onComplete: (values: Record) => Promise; - FormProps?: FormProps; layouts?: LayoutOptions[]; ->>>>>>> be504a73cc (run api-report) }; // @alpha @@ -492,7 +484,12 @@ export type WorkflowProps = { onError(error: Error | undefined): JSX.Element | null; } & Pick< StepperProps, - 'extensions' | 'FormProps' | 'components' | 'onCreate' | 'initialState' + | 'extensions' + | 'FormProps' + | 'components' + | 'onCreate' + | 'initialState' + | 'layouts' >; // (No @packageDocumentation comment for this package) diff --git a/plugins/scaffolder-react/src/next/components/Stepper/Stepper.tsx b/plugins/scaffolder-react/src/next/components/Stepper/Stepper.tsx index 362545e8fa..6189bdc975 100644 --- a/plugins/scaffolder-react/src/next/components/Stepper/Stepper.tsx +++ b/plugins/scaffolder-react/src/next/components/Stepper/Stepper.tsx @@ -152,7 +152,7 @@ export const Stepper = (stepperProps: StepperProps) => { setFormState(current => ({ ...current, ...formData })); }; - const currentStep = useTransformSchemaToProps(steps[activeStep], layouts); + const currentStep = useTransformSchemaToProps(steps[activeStep], { layouts }); return ( <> diff --git a/plugins/scaffolder-react/src/next/components/Workflow/Workflow.tsx b/plugins/scaffolder-react/src/next/components/Workflow/Workflow.tsx index 9b760661fe..f6ff12e3a3 100644 --- a/plugins/scaffolder-react/src/next/components/Workflow/Workflow.tsx +++ b/plugins/scaffolder-react/src/next/components/Workflow/Workflow.tsx @@ -51,7 +51,12 @@ export type WorkflowProps = { onError(error: Error | undefined): JSX.Element | null; } & Pick< StepperProps, - 'extensions' | 'FormProps' | 'components' | 'onCreate' | 'initialState' | 'layouts' + | 'extensions' + | 'FormProps' + | 'components' + | 'onCreate' + | 'initialState' + | 'layouts' >; /** diff --git a/plugins/scaffolder-react/src/next/hooks/useTransformSchemaToProps.test.tsx b/plugins/scaffolder-react/src/next/hooks/useTransformSchemaToProps.test.tsx index 9081a5843e..6dba7b9f29 100644 --- a/plugins/scaffolder-react/src/next/hooks/useTransformSchemaToProps.test.tsx +++ b/plugins/scaffolder-react/src/next/hooks/useTransformSchemaToProps.test.tsx @@ -37,7 +37,7 @@ describe('useTransformSchemaToProps', () => { }; const { result } = renderHook( - () => useTransformSchemaToProps(step, layouts), + () => useTransformSchemaToProps(step, { layouts }), { wrapper: ({ children }) => ( {children} diff --git a/plugins/scaffolder-react/src/next/hooks/useTransformSchemaToProps.ts b/plugins/scaffolder-react/src/next/hooks/useTransformSchemaToProps.ts index b7810fb9ca..ffae1df8bf 100644 --- a/plugins/scaffolder-react/src/next/hooks/useTransformSchemaToProps.ts +++ b/plugins/scaffolder-react/src/next/hooks/useTransformSchemaToProps.ts @@ -16,10 +16,15 @@ import { type ParsedTemplateSchema } from './useTemplateSchema'; import { type LayoutOptions } from '../types'; +interface Options { + layouts?: LayoutOptions[]; +} + export const useTransformSchemaToProps = ( step: ParsedTemplateSchema, - layouts: LayoutOptions[] = [], + options: Options = {}, ): ParsedTemplateSchema => { + const { layouts = [] } = options; const objectFieldTemplate = step?.uiSchema['ui:ObjectFieldTemplate'] as | string | undefined; diff --git a/plugins/scaffolder/src/next/Router/Router.tsx b/plugins/scaffolder/src/next/Router/Router.tsx index d87b76a495..8dd47b478e 100644 --- a/plugins/scaffolder/src/next/Router/Router.tsx +++ b/plugins/scaffolder/src/next/Router/Router.tsx @@ -86,9 +86,7 @@ export const Router = (props: PropsWithChildren) => { } diff --git a/plugins/scaffolder/src/next/TemplateWizardPage/TemplateWizardPage.tsx b/plugins/scaffolder/src/next/TemplateWizardPage/TemplateWizardPage.tsx index 56fbbe7132..d24482a583 100644 --- a/plugins/scaffolder/src/next/TemplateWizardPage/TemplateWizardPage.tsx +++ b/plugins/scaffolder/src/next/TemplateWizardPage/TemplateWizardPage.tsx @@ -26,11 +26,9 @@ import { scaffolderApiRef, useTemplateSecrets, Workflow, - type LayoutOptions -} from '@backstage/plugin-scaffolder-react'; -import { - NextFieldExtensionOptions, + type LayoutOptions, } from '@backstage/plugin-scaffolder-react'; +import { NextFieldExtensionOptions } from '@backstage/plugin-scaffolder-react'; import { JsonValue } from '@backstage/types'; import { type FormProps } from '../types'; import { nextRouteRef } from '../routes';