From 93acaade9adbf3870035285d9d1f1d7f62db9d58 Mon Sep 17 00:00:00 2001 From: kosukeKK Date: Thu, 7 Mar 2024 22:30:40 +0900 Subject: [PATCH] moved ScaffolderWizardContextMenu.tsx Signed-off-by: kosukeKK --- .changeset/honest-poems-visit.md | 5 --- plugins/scaffolder-react/api-report-alpha.md | 10 ------ .../ScaffolderWizardContextMenu/index.ts | 19 ----------- .../src/next/components/index.ts | 1 - .../TemplateWizardPage/TemplateWizardPage.tsx | 34 ++++++++++++------- .../TemplateWizardPageContextMenu.tsx} | 12 ++----- 6 files changed, 25 insertions(+), 56 deletions(-) delete mode 100644 .changeset/honest-poems-visit.md delete mode 100644 plugins/scaffolder-react/src/next/components/ScaffolderWizardContextMenu/index.ts rename plugins/{scaffolder-react/src/next/components/ScaffolderWizardContextMenu/ScaffolderWizardContextMenu.tsx => scaffolder/src/next/TemplateWizardPage/TemplateWizardPageContextMenu.tsx} (93%) diff --git a/.changeset/honest-poems-visit.md b/.changeset/honest-poems-visit.md deleted file mode 100644 index a0f392c0fc..0000000000 --- a/.changeset/honest-poems-visit.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@backstage/plugin-scaffolder-react': minor ---- - -Added a header menu for ScaffolderWizard diff --git a/plugins/scaffolder-react/api-report-alpha.md b/plugins/scaffolder-react/api-report-alpha.md index c7f4101e0b..683b8cf8be 100644 --- a/plugins/scaffolder-react/api-report-alpha.md +++ b/plugins/scaffolder-react/api-report-alpha.md @@ -149,16 +149,6 @@ export type ScaffolderReactComponentsNameToClassKey = { // @alpha (undocumented) export type ScaffolderReactTemplateCategoryPickerClassKey = 'root' | 'label'; -// @alpha (undocumented) -export function ScaffolderWizardContextMenu( - props: ScaffolderWizardContextMenuProps, -): React_2.JSX.Element | null; - -// @alpha (undocumented) -export type ScaffolderWizardContextMenuProps = { - onEditorClicked?: () => void; -}; - // @alpha export const Stepper: (stepperProps: StepperProps) => React_2.JSX.Element; diff --git a/plugins/scaffolder-react/src/next/components/ScaffolderWizardContextMenu/index.ts b/plugins/scaffolder-react/src/next/components/ScaffolderWizardContextMenu/index.ts deleted file mode 100644 index 51d1458cae..0000000000 --- a/plugins/scaffolder-react/src/next/components/ScaffolderWizardContextMenu/index.ts +++ /dev/null @@ -1,19 +0,0 @@ -/* - * Copyright 2022 The Backstage Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -export { - ScaffolderWizardContextMenu, - type ScaffolderWizardContextMenuProps, -} from './ScaffolderWizardContextMenu'; diff --git a/plugins/scaffolder-react/src/next/components/index.ts b/plugins/scaffolder-react/src/next/components/index.ts index 3ea830002a..119f983a9f 100644 --- a/plugins/scaffolder-react/src/next/components/index.ts +++ b/plugins/scaffolder-react/src/next/components/index.ts @@ -25,5 +25,4 @@ export * from './TaskSteps'; export * from './TaskLogStream'; export * from './TemplateCategoryPicker'; export * from './ScaffolderPageContextMenu'; -export * from './ScaffolderWizardContextMenu'; export * from './ScaffolderField'; diff --git a/plugins/scaffolder/src/next/TemplateWizardPage/TemplateWizardPage.tsx b/plugins/scaffolder/src/next/TemplateWizardPage/TemplateWizardPage.tsx index 2ceb57f87e..1deefaaa21 100644 --- a/plugins/scaffolder/src/next/TemplateWizardPage/TemplateWizardPage.tsx +++ b/plugins/scaffolder/src/next/TemplateWizardPage/TemplateWizardPage.tsx @@ -16,7 +16,10 @@ import React from 'react'; import { Navigate, useNavigate } from 'react-router-dom'; import useAsync from 'react-use/lib/useAsync'; -import { stringifyEntityRef } from '@backstage/catalog-model'; +import { + stringifyEntityRef, + ANNOTATION_EDIT_URL, +} from '@backstage/catalog-model'; import { AnalyticsContext, useApi, @@ -33,7 +36,6 @@ import { } from '@backstage/plugin-scaffolder-react'; import { catalogApiRef } from '@backstage/plugin-catalog-react'; -import { ScaffolderWizardContextMenu } from '@backstage/plugin-scaffolder-react/alpha'; import { Workflow } from '@backstage/plugin-scaffolder-react/alpha'; import { JsonValue } from '@backstage/types'; import { Header, Page } from '@backstage/core-components'; @@ -44,6 +46,11 @@ import { selectedTemplateRouteRef, } from '../../routes'; +import { + TemplateWizardPageContextMenu, + TemplateWizardPageContextMenuProps, +} from './TemplateWizardPageContextMenu'; + /** * @alpha */ @@ -80,17 +87,18 @@ export const TemplateWizardPage = (props: TemplateWizardPageProps) => { const { value: editUrl } = useAsync(async () => { const data = await catalogApi.getEntityByRef(templateRef); - return data?.metadata.annotations?.['backstage.io/edit-url'] || ''; + return data?.metadata.annotations?.[ANNOTATION_EDIT_URL] || ''; }, [templateRef, catalogApi]); - const scaffolderWizardContextMenuProps = { - onEditorClicked: - editUrl !== '' - ? () => { - window.open(editUrl, '_blank'); - } - : undefined, - }; + const templateWizardPageContextMenuProps: TemplateWizardPageContextMenuProps = + { + onEditorClicked: + editUrl !== '' + ? () => { + window.open(editUrl, '_blank'); + } + : undefined, + }; const onCreate = async (values: Record) => { const { taskId } = await scaffolderApi.scaffold({ @@ -113,7 +121,9 @@ export const TemplateWizardPage = (props: TemplateWizardPageProps) => { subtitle="Create new software components using standard templates in your organization" {...props.headerOptions} > - + ({ }, })); -/** - * @alpha - */ -export type ScaffolderWizardContextMenuProps = { +export type TemplateWizardPageContextMenuProps = { onEditorClicked?: () => void; }; -/** - * @alpha - */ -export function ScaffolderWizardContextMenu( - props: ScaffolderWizardContextMenuProps, +export function TemplateWizardPageContextMenu( + props: TemplateWizardPageContextMenuProps, ) { const { onEditorClicked } = props; const classes = useStyles();