From 0e1e1c7be99af773a5379f214f6fd37a751c9f71 Mon Sep 17 00:00:00 2001 From: its-mitesh-kumar Date: Thu, 13 Mar 2025 22:28:09 +0530 Subject: [PATCH 1/6] renaming create to Self-service Signed-off-by: its-mitesh-kumar --- package.json | 5 +- .../app/src/components/AppBase/AppBase.tsx | 4 +- .../components/DynamicRoot/DynamicRoot.tsx | 5 ++ .../catalog-translations/catalog-en.ts | 12 +++ .../catalog/catalog-translations/catalog.ts | 9 +++ packages/app/src/consts.ts | 2 +- yarn.lock | 75 ++++++++++++++++++- 7 files changed, 106 insertions(+), 6 deletions(-) create mode 100644 packages/app/src/components/catalog/catalog-translations/catalog-en.ts create mode 100644 packages/app/src/components/catalog/catalog-translations/catalog.ts diff --git a/package.json b/package.json index 40811aac16..08ffbf533a 100644 --- a/package.json +++ b/package.json @@ -104,5 +104,8 @@ "jest": { "testTimeout": 20000 }, - "packageManager": "yarn@3.8.7" + "packageManager": "yarn@3.8.7", + "dependencies": { + "@backstage/plugin-catalog": "^1.27.0" + } } diff --git a/packages/app/src/components/AppBase/AppBase.tsx b/packages/app/src/components/AppBase/AppBase.tsx index a92c861856..b4a3ee637f 100644 --- a/packages/app/src/components/AppBase/AppBase.tsx +++ b/packages/app/src/components/AppBase/AppBase.tsx @@ -97,9 +97,7 @@ const AppBase = () => { + } > diff --git a/packages/app/src/components/DynamicRoot/DynamicRoot.tsx b/packages/app/src/components/DynamicRoot/DynamicRoot.tsx index 7ccbb588a5..47da29b26c 100644 --- a/packages/app/src/components/DynamicRoot/DynamicRoot.tsx +++ b/packages/app/src/components/DynamicRoot/DynamicRoot.tsx @@ -20,6 +20,7 @@ import extractDynamicConfig, { DynamicRoute, } from '../../utils/dynamicUI/extractDynamicConfig'; import initializeRemotePlugins from '../../utils/dynamicUI/initializeRemotePlugins'; +import { catalogTranslations } from '../catalog/catalog-translations/catalog'; import { MenuIcon } from '../Root/MenuIcon'; import CommonIcons from './CommonIcons'; import defaultAppComponents from './defaultAppComponents'; @@ -458,6 +459,10 @@ export const DynamicRoot = ({ api => !remoteApis.some(remoteApi => remoteApi.api.id === api.api.id), ); app.current = createApp({ + __experimentalTranslations: { + availableLanguages: ['en'], + resources: [catalogTranslations], + }, apis: [...filteredStaticApis, ...remoteApis], bindRoutes({ bind }) { bindAppRoutes(bind, resolvedRouteBindingTargets, routeBindings); diff --git a/packages/app/src/components/catalog/catalog-translations/catalog-en.ts b/packages/app/src/components/catalog/catalog-translations/catalog-en.ts new file mode 100644 index 0000000000..34b80f9598 --- /dev/null +++ b/packages/app/src/components/catalog/catalog-translations/catalog-en.ts @@ -0,0 +1,12 @@ +import { createTranslationMessages } from '@backstage/core-plugin-api/alpha'; +import { catalogTranslationRef } from '@backstage/plugin-catalog/alpha'; + +const en = createTranslationMessages({ + ref: catalogTranslationRef, + full: false, // False means that this is a partial translation + messages: { + 'indexPage.createButtonTitle': 'Self-service', + }, +}); + +export default en; diff --git a/packages/app/src/components/catalog/catalog-translations/catalog.ts b/packages/app/src/components/catalog/catalog-translations/catalog.ts new file mode 100644 index 0000000000..6475233edd --- /dev/null +++ b/packages/app/src/components/catalog/catalog-translations/catalog.ts @@ -0,0 +1,9 @@ +import { createTranslationResource } from '@backstage/core-plugin-api/alpha'; +import { catalogTranslationRef } from '@backstage/plugin-catalog/alpha'; + +export const catalogTranslations = createTranslationResource({ + ref: catalogTranslationRef, + translations: { + en: () => import('./catalog-en'), + }, +}); diff --git a/packages/app/src/consts.ts b/packages/app/src/consts.ts index 1cb2215f4c..8594bebaa5 100644 --- a/packages/app/src/consts.ts +++ b/packages/app/src/consts.ts @@ -30,7 +30,7 @@ export const DefaultMainMenuItems = { priority: 60, }, 'default.create': { - title: 'Create...', + title: 'Self-service', icon: 'add', to: 'create', priority: 50, diff --git a/yarn.lock b/yarn.lock index eb60d38747..659ddf37d1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7361,7 +7361,7 @@ __metadata: languageName: node linkType: hard -"@backstage/plugin-catalog-react@npm:^1.14.2": +"@backstage/plugin-catalog-react@npm:^1.14.2, @backstage/plugin-catalog-react@npm:^1.15.2": version: 1.15.2 resolution: "@backstage/plugin-catalog-react@npm:1.15.2" dependencies: @@ -7444,6 +7444,48 @@ __metadata: languageName: node linkType: hard +"@backstage/plugin-catalog@npm:^1.27.0": + version: 1.27.0 + resolution: "@backstage/plugin-catalog@npm:1.27.0" + dependencies: + "@backstage/catalog-client": ^1.9.1 + "@backstage/catalog-model": ^1.7.3 + "@backstage/core-compat-api": ^0.3.6 + "@backstage/core-components": ^0.16.4 + "@backstage/core-plugin-api": ^1.10.4 + "@backstage/errors": ^1.2.7 + "@backstage/frontend-plugin-api": ^0.9.5 + "@backstage/integration-react": ^1.2.4 + "@backstage/plugin-catalog-common": ^1.1.3 + "@backstage/plugin-catalog-react": ^1.15.2 + "@backstage/plugin-permission-react": ^0.4.31 + "@backstage/plugin-scaffolder-common": ^1.5.9 + "@backstage/plugin-search-common": ^1.2.17 + "@backstage/plugin-search-react": ^1.8.6 + "@backstage/types": ^1.2.1 + "@material-ui/core": ^4.12.2 + "@material-ui/icons": ^4.9.1 + "@material-ui/lab": 4.0.0-alpha.61 + "@mui/utils": ^5.14.15 + dataloader: ^2.0.0 + expiry-map: ^2.0.0 + history: ^5.0.0 + lodash: ^4.17.21 + pluralize: ^8.0.0 + react-use: ^17.2.4 + zen-observable: ^0.10.0 + peerDependencies: + "@types/react": ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + react-dom: ^17.0.0 || ^18.0.0 + react-router-dom: ^6.3.0 + peerDependenciesMeta: + "@types/react": + optional: true + checksum: ad5bac0944b1d7b709880d4093360b1bac0daea3e1dbb3b298317459552293a3be410771d77e7475804477994e5f7d525b48531259e1d8f6ca7352f46168f39c + languageName: node + linkType: hard + "@backstage/plugin-events-backend@npm:0.4.1, @backstage/plugin-events-backend@npm:^0.4.1": version: 0.4.1 resolution: "@backstage/plugin-events-backend@npm:0.4.1" @@ -8662,6 +8704,36 @@ __metadata: languageName: node linkType: hard +"@backstage/plugin-search-react@npm:^1.8.6": + version: 1.8.6 + resolution: "@backstage/plugin-search-react@npm:1.8.6" + dependencies: + "@backstage/core-components": ^0.16.4 + "@backstage/core-plugin-api": ^1.10.4 + "@backstage/frontend-plugin-api": ^0.9.5 + "@backstage/plugin-search-common": ^1.2.17 + "@backstage/theme": ^0.6.4 + "@backstage/types": ^1.2.1 + "@backstage/version-bridge": ^1.0.11 + "@material-ui/core": ^4.12.2 + "@material-ui/icons": ^4.9.1 + "@material-ui/lab": 4.0.0-alpha.61 + lodash: ^4.17.21 + qs: ^6.9.4 + react-use: ^17.3.2 + uuid: ^11.0.2 + peerDependencies: + "@types/react": ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + react-dom: ^17.0.0 || ^18.0.0 + react-router-dom: ^6.3.0 + peerDependenciesMeta: + "@types/react": + optional: true + checksum: 5bb7a40aaf7079234b3416f7b748093344e9eacbe51637f124cea0b3cbd99f8b40d51b4d108a59f5dc95ef410e25431691241139a257de4c8efb4adec8367240 + languageName: node + linkType: hard + "@backstage/plugin-search@npm:1.4.22, @backstage/plugin-search@npm:^1.4.22": version: 1.4.22 resolution: "@backstage/plugin-search@npm:1.4.22" @@ -42055,6 +42127,7 @@ __metadata: resolution: "root@workspace:." dependencies: "@backstage/cli": 0.29.6 + "@backstage/plugin-catalog": ^1.27.0 "@ianvs/prettier-plugin-sort-imports": 4.4.1 "@manypkg/cli": 0.23.0 glob: 11.0.1 From 17354ea38e59573fd652ca01007bd842ba758034 Mon Sep 17 00:00:00 2001 From: its-mitesh-kumar Date: Fri, 14 Mar 2025 13:59:34 +0530 Subject: [PATCH 2/6] removing package.json change Signed-off-by: its-mitesh-kumar --- dynamic-plugins.default.yaml | 2 +- package.json | 5 +-- yarn.lock | 75 +----------------------------------- 3 files changed, 3 insertions(+), 79 deletions(-) diff --git a/dynamic-plugins.default.yaml b/dynamic-plugins.default.yaml index dfbde5284c..be2c592301 100644 --- a/dynamic-plugins.default.yaml +++ b/dynamic-plugins.default.yaml @@ -557,7 +557,7 @@ plugins: config: priority: 90 props: - title: Create... + title: Self-service icon: add to: create - mountPoint: global.header/component diff --git a/package.json b/package.json index 08ffbf533a..40811aac16 100644 --- a/package.json +++ b/package.json @@ -104,8 +104,5 @@ "jest": { "testTimeout": 20000 }, - "packageManager": "yarn@3.8.7", - "dependencies": { - "@backstage/plugin-catalog": "^1.27.0" - } + "packageManager": "yarn@3.8.7" } diff --git a/yarn.lock b/yarn.lock index 659ddf37d1..eb60d38747 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7361,7 +7361,7 @@ __metadata: languageName: node linkType: hard -"@backstage/plugin-catalog-react@npm:^1.14.2, @backstage/plugin-catalog-react@npm:^1.15.2": +"@backstage/plugin-catalog-react@npm:^1.14.2": version: 1.15.2 resolution: "@backstage/plugin-catalog-react@npm:1.15.2" dependencies: @@ -7444,48 +7444,6 @@ __metadata: languageName: node linkType: hard -"@backstage/plugin-catalog@npm:^1.27.0": - version: 1.27.0 - resolution: "@backstage/plugin-catalog@npm:1.27.0" - dependencies: - "@backstage/catalog-client": ^1.9.1 - "@backstage/catalog-model": ^1.7.3 - "@backstage/core-compat-api": ^0.3.6 - "@backstage/core-components": ^0.16.4 - "@backstage/core-plugin-api": ^1.10.4 - "@backstage/errors": ^1.2.7 - "@backstage/frontend-plugin-api": ^0.9.5 - "@backstage/integration-react": ^1.2.4 - "@backstage/plugin-catalog-common": ^1.1.3 - "@backstage/plugin-catalog-react": ^1.15.2 - "@backstage/plugin-permission-react": ^0.4.31 - "@backstage/plugin-scaffolder-common": ^1.5.9 - "@backstage/plugin-search-common": ^1.2.17 - "@backstage/plugin-search-react": ^1.8.6 - "@backstage/types": ^1.2.1 - "@material-ui/core": ^4.12.2 - "@material-ui/icons": ^4.9.1 - "@material-ui/lab": 4.0.0-alpha.61 - "@mui/utils": ^5.14.15 - dataloader: ^2.0.0 - expiry-map: ^2.0.0 - history: ^5.0.0 - lodash: ^4.17.21 - pluralize: ^8.0.0 - react-use: ^17.2.4 - zen-observable: ^0.10.0 - peerDependencies: - "@types/react": ^17.0.0 || ^18.0.0 - react: ^17.0.0 || ^18.0.0 - react-dom: ^17.0.0 || ^18.0.0 - react-router-dom: ^6.3.0 - peerDependenciesMeta: - "@types/react": - optional: true - checksum: ad5bac0944b1d7b709880d4093360b1bac0daea3e1dbb3b298317459552293a3be410771d77e7475804477994e5f7d525b48531259e1d8f6ca7352f46168f39c - languageName: node - linkType: hard - "@backstage/plugin-events-backend@npm:0.4.1, @backstage/plugin-events-backend@npm:^0.4.1": version: 0.4.1 resolution: "@backstage/plugin-events-backend@npm:0.4.1" @@ -8704,36 +8662,6 @@ __metadata: languageName: node linkType: hard -"@backstage/plugin-search-react@npm:^1.8.6": - version: 1.8.6 - resolution: "@backstage/plugin-search-react@npm:1.8.6" - dependencies: - "@backstage/core-components": ^0.16.4 - "@backstage/core-plugin-api": ^1.10.4 - "@backstage/frontend-plugin-api": ^0.9.5 - "@backstage/plugin-search-common": ^1.2.17 - "@backstage/theme": ^0.6.4 - "@backstage/types": ^1.2.1 - "@backstage/version-bridge": ^1.0.11 - "@material-ui/core": ^4.12.2 - "@material-ui/icons": ^4.9.1 - "@material-ui/lab": 4.0.0-alpha.61 - lodash: ^4.17.21 - qs: ^6.9.4 - react-use: ^17.3.2 - uuid: ^11.0.2 - peerDependencies: - "@types/react": ^17.0.0 || ^18.0.0 - react: ^17.0.0 || ^18.0.0 - react-dom: ^17.0.0 || ^18.0.0 - react-router-dom: ^6.3.0 - peerDependenciesMeta: - "@types/react": - optional: true - checksum: 5bb7a40aaf7079234b3416f7b748093344e9eacbe51637f124cea0b3cbd99f8b40d51b4d108a59f5dc95ef410e25431691241139a257de4c8efb4adec8367240 - languageName: node - linkType: hard - "@backstage/plugin-search@npm:1.4.22, @backstage/plugin-search@npm:^1.4.22": version: 1.4.22 resolution: "@backstage/plugin-search@npm:1.4.22" @@ -42127,7 +42055,6 @@ __metadata: resolution: "root@workspace:." dependencies: "@backstage/cli": 0.29.6 - "@backstage/plugin-catalog": ^1.27.0 "@ianvs/prettier-plugin-sort-imports": 4.4.1 "@manypkg/cli": 0.23.0 glob: 11.0.1 From 99a4164532cbf98114ffcfa91a023207b6394f9d Mon Sep 17 00:00:00 2001 From: its-mitesh-kumar Date: Mon, 17 Mar 2025 23:57:10 +0530 Subject: [PATCH 3/6] updating e2e tests Signed-off-by: its-mitesh-kumar --- .../resources/config_map/dynamic-global-header-config.yaml | 2 +- ...ed-hat-developer-hub-backstage-plugin-global-header.yaml | 2 +- e2e-tests/playwright/e2e/audit-log/catalog.spec.ts | 4 ++-- e2e-tests/playwright/e2e/audit-log/scaffold.spec.ts | 4 ++-- .../playwright/e2e/authProviders/github-happy-path.spec.ts | 4 ++-- .../playwright/e2e/catalog-scaffolded-from-link.spec.ts | 4 ++-- e2e-tests/playwright/e2e/catalog-timestamp.spec.ts | 2 +- e2e-tests/playwright/e2e/default-global-header.spec.ts | 6 +++--- e2e-tests/playwright/e2e/plugins/bulk-import.spec.ts | 2 +- e2e-tests/playwright/e2e/plugins/http-request.spec.ts | 2 +- .../plugins/kubernetes-actions/kubernetes-actions.spec.ts | 2 +- e2e-tests/playwright/e2e/plugins/rbac/rbac.spec.ts | 4 ++-- e2e-tests/playwright/utils/navbar.ts | 4 ++-- 13 files changed, 21 insertions(+), 21 deletions(-) diff --git a/.ibm/pipelines/resources/config_map/dynamic-global-header-config.yaml b/.ibm/pipelines/resources/config_map/dynamic-global-header-config.yaml index 951252503f..77cb5edb48 100644 --- a/.ibm/pipelines/resources/config_map/dynamic-global-header-config.yaml +++ b/.ibm/pipelines/resources/config_map/dynamic-global-header-config.yaml @@ -30,7 +30,7 @@ dynamicPlugins: config: priority: 90 props: - title: Create... + title: Self-service icon: add to: create - mountPoint: global.header/component diff --git a/catalog-entities/marketplace/packages/red-hat-developer-hub-backstage-plugin-global-header.yaml b/catalog-entities/marketplace/packages/red-hat-developer-hub-backstage-plugin-global-header.yaml index 18498aaee0..47d78f87a0 100644 --- a/catalog-entities/marketplace/packages/red-hat-developer-hub-backstage-plugin-global-header.yaml +++ b/catalog-entities/marketplace/packages/red-hat-developer-hub-backstage-plugin-global-header.yaml @@ -61,7 +61,7 @@ spec: config: priority: 90 props: - title: Create... + title: Self-service icon: add to: create - mountPoint: global.header/component diff --git a/e2e-tests/playwright/e2e/audit-log/catalog.spec.ts b/e2e-tests/playwright/e2e/audit-log/catalog.spec.ts index a217e4930c..908a0540fa 100644 --- a/e2e-tests/playwright/e2e/audit-log/catalog.spec.ts +++ b/e2e-tests/playwright/e2e/audit-log/catalog.spec.ts @@ -89,7 +89,7 @@ test.describe("Audit Log check for Catalog Plugin", () => { }); test("Should fetch logs for QueriedCatalogEntityFetch event and validate log structure and values", async () => { - await uiHelper.clickButton("Create"); + await uiHelper.clickButton("Self-service"); await validateCatalogLogEvent( "QueriedCatalogEntityFetch", "Queried entity fetch attempt", @@ -101,7 +101,7 @@ test.describe("Audit Log check for Catalog Plugin", () => { test("Should fetch logs for CatalogLocationCreation event and validate log structure and values", async () => { const template = "https://github.com/RoadieHQ/sample-service/blob/main/demo_template.yaml"; - await uiHelper.clickButton("Create"); + await uiHelper.clickButton("Self-service"); await uiHelper.clickButton("Register Existing Component"); await catalogImport.analyzeComponent(template); diff --git a/e2e-tests/playwright/e2e/audit-log/scaffold.spec.ts b/e2e-tests/playwright/e2e/audit-log/scaffold.spec.ts index b5c5f0ad76..9909a29a13 100644 --- a/e2e-tests/playwright/e2e/audit-log/scaffold.spec.ts +++ b/e2e-tests/playwright/e2e/audit-log/scaffold.spec.ts @@ -22,7 +22,7 @@ test.describe("Audit Log check for Catalog Plugin", () => { common = new Common(page); catalogImport = new CatalogImport(page); await common.loginAsGuest(); - await uiHelper.clickLink({ ariaLabel: "Create..." }); + await uiHelper.clickLink({ ariaLabel: "Self-service" }); }); test("Should fetch logs for ScaffolderParameterSchemaFetch event and validate log structure and values", async ({ @@ -32,7 +32,7 @@ test.describe("Audit Log check for Catalog Plugin", () => { await uiHelper.clickButton("Register Existing Component"); await catalogImport.registerExistingComponent(template, false); await page.waitForTimeout(1000); - await uiHelper.clickLink({ ariaLabel: "Create..." }); + await uiHelper.clickLink({ ariaLabel: "Self-service" }); await common.waitForLoad(); await uiHelper.clickBtnInCard("Hello World 2", "Choose"); await LogUtils.validateLogEvent( diff --git a/e2e-tests/playwright/e2e/authProviders/github-happy-path.spec.ts b/e2e-tests/playwright/e2e/authProviders/github-happy-path.spec.ts index 505445e8f4..2686f5bb2e 100644 --- a/e2e-tests/playwright/e2e/authProviders/github-happy-path.spec.ts +++ b/e2e-tests/playwright/e2e/authProviders/github-happy-path.spec.ts @@ -130,7 +130,7 @@ test.describe.serial("GitHub Happy path", () => { test("Register an existing component", async () => { await uiHelper.openSidebar("Catalog"); await uiHelper.selectMuiBox("Kind", "Component"); - await uiHelper.clickButton("Create"); + await uiHelper.clickButton("Self-service"); await uiHelper.clickButton("Register Existing Component"); await catalogImport.registerExistingComponent(component); }); @@ -161,7 +161,7 @@ test.describe.serial("GitHub Happy path", () => { }); test("Verify all 12 Software Templates appear in the Create page", async () => { - await uiHelper.clickLink({ ariaLabel: "Create..." }); + await uiHelper.clickLink({ ariaLabel: "Self-service" }); await uiHelper.verifyHeading("Templates"); for (const template of TEMPLATES) { diff --git a/e2e-tests/playwright/e2e/catalog-scaffolded-from-link.spec.ts b/e2e-tests/playwright/e2e/catalog-scaffolded-from-link.spec.ts index 4ea25193cb..240b11555c 100644 --- a/e2e-tests/playwright/e2e/catalog-scaffolded-from-link.spec.ts +++ b/e2e-tests/playwright/e2e/catalog-scaffolded-from-link.spec.ts @@ -39,7 +39,7 @@ test.describe.serial("Link Scaffolded Templates to Catalog Items", () => { test("Register an Template", async () => { await uiHelper.openSidebar("Catalog"); - await uiHelper.clickButton("Create"); + await uiHelper.clickButton("Self-service"); await uiHelper.clickButton("Register Existing Component"); await catalogImport.registerExistingComponent(template, false); }); @@ -47,7 +47,7 @@ test.describe.serial("Link Scaffolded Templates to Catalog Items", () => { test("Create a React App using the newly registered Template", async () => { test.setTimeout(130000); await uiHelper.openSidebar("Catalog"); - await uiHelper.clickButton("Create"); + await uiHelper.clickButton("Self-service"); await uiHelper.searchInputPlaceholder("Create React App Template"); await uiHelper.verifyText("Create React App Template"); await uiHelper.waitForTextDisappear("Add ArgoCD to an existing project"); diff --git a/e2e-tests/playwright/e2e/catalog-timestamp.spec.ts b/e2e-tests/playwright/e2e/catalog-timestamp.spec.ts index 0ba48da31c..3dfb0f8702 100644 --- a/e2e-tests/playwright/e2e/catalog-timestamp.spec.ts +++ b/e2e-tests/playwright/e2e/catalog-timestamp.spec.ts @@ -31,7 +31,7 @@ test.describe("Test timestamp column on Catalog", () => { }); test("Register an existing component and verify `Created At` column and value in the Catalog Page", async () => { - await uiHelper.clickButton("Create"); + await uiHelper.clickButton("Self-service"); await uiHelper.clickButton("Register Existing Component"); await catalogImport.registerExistingComponent(component); await uiHelper.openSidebar("Catalog"); diff --git a/e2e-tests/playwright/e2e/default-global-header.spec.ts b/e2e-tests/playwright/e2e/default-global-header.spec.ts index 03171af041..112da25ab0 100644 --- a/e2e-tests/playwright/e2e/default-global-header.spec.ts +++ b/e2e-tests/playwright/e2e/default-global-header.spec.ts @@ -20,7 +20,7 @@ test.describe("Default Global Header", () => { page, }) => { await expect(page.locator(`input[placeholder="Search..."]`)).toBeVisible(); - await uiHelper.verifyLink({ label: "Create..." }); + await uiHelper.verifyLink({ label: "Self-service" }); await uiHelper.verifyLink({ label: "Support (external link)" }); await uiHelper.verifyLink({ label: "Notifications" }); expect(await uiHelper.isBtnVisible("rhdh-qe-2")).toBeTruthy(); @@ -31,8 +31,8 @@ test.describe("Default Global Header", () => { expect(await uiHelper.isBtnVisible("Settings")).toBeFalsy(); }); - test("Verify that clicking on Create button opens the Software Templates page", async () => { - await uiHelper.clickLink({ ariaLabel: "Create..." }); + test("Verify that clicking on Self-service button opens the Software Templates page", async () => { + await uiHelper.clickLink({ ariaLabel: "Self-service" }); await uiHelper.verifyHeading("Software Templates"); }); diff --git a/e2e-tests/playwright/e2e/plugins/bulk-import.spec.ts b/e2e-tests/playwright/e2e/plugins/bulk-import.spec.ts index 19cfa5dced..8a183a4a32 100644 --- a/e2e-tests/playwright/e2e/plugins/bulk-import.spec.ts +++ b/e2e-tests/playwright/e2e/plugins/bulk-import.spec.ts @@ -272,7 +272,7 @@ test.describe test('Verify repo from "register existing component" are displayed in bulk import Added repositories', async () => { // Register Existing Component await uiHelper.openSidebar("Catalog"); - await uiHelper.clickButton("Create"); + await uiHelper.clickButton("Self-service"); await uiHelper.clickButton("Register Existing Component"); await catalogImport.registerExistingComponent( existingComponentDetails.url, diff --git a/e2e-tests/playwright/e2e/plugins/http-request.spec.ts b/e2e-tests/playwright/e2e/plugins/http-request.spec.ts index 49cf8e426f..7c8693907a 100644 --- a/e2e-tests/playwright/e2e/plugins/http-request.spec.ts +++ b/e2e-tests/playwright/e2e/plugins/http-request.spec.ts @@ -23,7 +23,7 @@ test.describe("Testing scaffolder-backend-module-http-request to invoke an exter test("Create a software template using http-request plugin", async () => { test.setTimeout(130000); - await uiHelper.clickLink({ ariaLabel: "Create..." }); + await uiHelper.clickLink({ ariaLabel: "Self-service" }); await uiHelper.verifyHeading("Templates"); await uiHelper.clickButton("Register Existing Component"); await catalogImport.registerExistingComponent(template, false); diff --git a/e2e-tests/playwright/e2e/plugins/kubernetes-actions/kubernetes-actions.spec.ts b/e2e-tests/playwright/e2e/plugins/kubernetes-actions/kubernetes-actions.spec.ts index 5c21f32633..54a6af104b 100644 --- a/e2e-tests/playwright/e2e/plugins/kubernetes-actions/kubernetes-actions.spec.ts +++ b/e2e-tests/playwright/e2e/plugins/kubernetes-actions/kubernetes-actions.spec.ts @@ -18,7 +18,7 @@ test.describe("Test Kubernetes Actions plugin", () => { kubeClient = new KubeClient(); await common.loginAsGuest(); - await uiHelper.clickLink({ ariaLabel: "Create..." }); + await uiHelper.clickLink({ ariaLabel: "Self-service" }); }); test("Creates kubernetes namespace", async () => { diff --git a/e2e-tests/playwright/e2e/plugins/rbac/rbac.spec.ts b/e2e-tests/playwright/e2e/plugins/rbac/rbac.spec.ts index f9249a2d05..363435963f 100644 --- a/e2e-tests/playwright/e2e/plugins/rbac/rbac.spec.ts +++ b/e2e-tests/playwright/e2e/plugins/rbac/rbac.spec.ts @@ -480,7 +480,7 @@ test.describe.serial("Test RBAC", () => { await uiHelper.openSidebar("Catalog"); await uiHelper.selectMuiBox("Kind", "Component"); await uiHelper.verifyTableIsEmpty(); - await uiHelper.clickLink({ ariaLabel: "Create..." }); + await uiHelper.clickLink({ ariaLabel: "Self-service" }); await page.reload(); await uiHelper.verifyText( "No templates found that match your filter. Learn more about", @@ -495,7 +495,7 @@ test.describe.serial("Test RBAC", () => { }); test("Test catalog-entity create is allowed", async () => { - await uiHelper.clickLink({ ariaLabel: "Create..." }); + await uiHelper.clickLink({ ariaLabel: "Self-service" }); expect(await uiHelper.isLinkVisible("Register Existing Component")); await uiHelper.clickButton("Register Existing Component"); const catalogImport = new CatalogImport(page); diff --git a/e2e-tests/playwright/utils/navbar.ts b/e2e-tests/playwright/utils/navbar.ts index 8e146bb28e..d4fdc94c9f 100644 --- a/e2e-tests/playwright/utils/navbar.ts +++ b/e2e-tests/playwright/utils/navbar.ts @@ -1,10 +1,10 @@ export type SidebarTabs = | "Catalog" - | "Create" + | "Self-service" | "Settings" | "My Group" | "Home" - | "Create..." + | "Self-service" | "Learning Paths" | "Extensions" | "Bulk import" From 712b71cd6e72873cd703bf1082fc17c05cdc4f91 Mon Sep 17 00:00:00 2001 From: its-mitesh-kumar Date: Tue, 18 Mar 2025 17:40:28 +0530 Subject: [PATCH 4/6] changing folder name Signed-off-by: its-mitesh-kumar --- e2e-tests/playwright/utils/navbar.ts | 1 - packages/app/src/components/DynamicRoot/DynamicRoot.tsx | 2 +- .../{catalog-translations => translations}/catalog-en.ts | 0 .../catalog/{catalog-translations => translations}/catalog.ts | 0 4 files changed, 1 insertion(+), 2 deletions(-) rename packages/app/src/components/catalog/{catalog-translations => translations}/catalog-en.ts (100%) rename packages/app/src/components/catalog/{catalog-translations => translations}/catalog.ts (100%) diff --git a/e2e-tests/playwright/utils/navbar.ts b/e2e-tests/playwright/utils/navbar.ts index d4fdc94c9f..2513d7f33f 100644 --- a/e2e-tests/playwright/utils/navbar.ts +++ b/e2e-tests/playwright/utils/navbar.ts @@ -1,6 +1,5 @@ export type SidebarTabs = | "Catalog" - | "Self-service" | "Settings" | "My Group" | "Home" diff --git a/packages/app/src/components/DynamicRoot/DynamicRoot.tsx b/packages/app/src/components/DynamicRoot/DynamicRoot.tsx index 47da29b26c..a1ab15fd47 100644 --- a/packages/app/src/components/DynamicRoot/DynamicRoot.tsx +++ b/packages/app/src/components/DynamicRoot/DynamicRoot.tsx @@ -20,7 +20,7 @@ import extractDynamicConfig, { DynamicRoute, } from '../../utils/dynamicUI/extractDynamicConfig'; import initializeRemotePlugins from '../../utils/dynamicUI/initializeRemotePlugins'; -import { catalogTranslations } from '../catalog/catalog-translations/catalog'; +import { catalogTranslations } from '../catalog/translations/catalog'; import { MenuIcon } from '../Root/MenuIcon'; import CommonIcons from './CommonIcons'; import defaultAppComponents from './defaultAppComponents'; diff --git a/packages/app/src/components/catalog/catalog-translations/catalog-en.ts b/packages/app/src/components/catalog/translations/catalog-en.ts similarity index 100% rename from packages/app/src/components/catalog/catalog-translations/catalog-en.ts rename to packages/app/src/components/catalog/translations/catalog-en.ts diff --git a/packages/app/src/components/catalog/catalog-translations/catalog.ts b/packages/app/src/components/catalog/translations/catalog.ts similarity index 100% rename from packages/app/src/components/catalog/catalog-translations/catalog.ts rename to packages/app/src/components/catalog/translations/catalog.ts From 191eeae8ec48cc154eb716c8f3c5ae45a2567485 Mon Sep 17 00:00:00 2001 From: its-mitesh-kumar Date: Tue, 18 Mar 2025 18:33:38 +0530 Subject: [PATCH 5/6] updating global-header-version Signed-off-by: its-mitesh-kumar --- .../package.json | 2 +- yarn.lock | 37 ++++--------------- 2 files changed, 9 insertions(+), 30 deletions(-) diff --git a/dynamic-plugins/wrappers/red-hat-developer-hub-backstage-plugin-global-header/package.json b/dynamic-plugins/wrappers/red-hat-developer-hub-backstage-plugin-global-header/package.json index e5745b90ae..e2fe3576dc 100644 --- a/dynamic-plugins/wrappers/red-hat-developer-hub-backstage-plugin-global-header/package.json +++ b/dynamic-plugins/wrappers/red-hat-developer-hub-backstage-plugin-global-header/package.json @@ -29,7 +29,7 @@ }, "dependencies": { "@mui/material": "5.16.14", - "@red-hat-developer-hub/backstage-plugin-global-header": "1.0.0" + "@red-hat-developer-hub/backstage-plugin-global-header": "1.1.0" }, "devDependencies": { "@backstage/cli": "0.29.6", diff --git a/yarn.lock b/yarn.lock index 6102382f5f..bc679662f9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13148,27 +13148,6 @@ __metadata: languageName: node linkType: hard -"@mui/styled-engine@npm:5.16.13": - version: 5.16.13 - resolution: "@mui/styled-engine@npm:5.16.13" - dependencies: - "@babel/runtime": ^7.23.9 - "@emotion/cache": ^11.13.5 - csstype: ^3.1.3 - prop-types: ^15.8.1 - peerDependencies: - "@emotion/react": ^11.4.1 - "@emotion/styled": ^11.3.0 - react: ^17.0.0 || ^18.0.0 || ^19.0.0 - peerDependenciesMeta: - "@emotion/react": - optional: true - "@emotion/styled": - optional: true - checksum: d9459ef4baac056d1a65e351e084b2fe1eb30516907fc48166f570c60e3db3cb30de2d0af2bf22a8caa004bf2c37a1b831ccad1069b1d03cfae202c247967e44 - languageName: node - linkType: hard - "@mui/styled-engine@npm:5.16.14, @mui/styled-engine@npm:^5.16.14": version: 5.16.14 resolution: "@mui/styled-engine@npm:5.16.14" @@ -16902,9 +16881,9 @@ __metadata: languageName: node linkType: hard -"@red-hat-developer-hub/backstage-plugin-global-header@npm:1.0.0": - version: 1.0.0 - resolution: "@red-hat-developer-hub/backstage-plugin-global-header@npm:1.0.0" +"@red-hat-developer-hub/backstage-plugin-global-header@npm:1.1.0": + version: 1.1.0 + resolution: "@red-hat-developer-hub/backstage-plugin-global-header@npm:1.1.0" dependencies: "@backstage/catalog-model": ^1.7.3 "@backstage/core-components": ^0.16.3 @@ -16921,15 +16900,15 @@ __metadata: "@backstage/plugin-search-react": ^1.8.5 "@backstage/plugin-signals-react": ^0.0.9 "@backstage/theme": ^0.6.3 - "@mui/icons-material": 5.16.13 - "@mui/material": 5.16.13 - "@mui/styled-engine": 5.16.13 + "@mui/icons-material": 5.16.14 + "@mui/material": 5.16.14 + "@mui/styled-engine": 5.16.14 "@scalprum/react-core": 0.9.3 react-use: ^17.5.0 peerDependencies: react: ^16.13.1 || ^17.0.0 || ^18.0.0 react-router-dom: ^6.0.0 - checksum: 6500dfcac091608b4eb466c1702f28934a276dd7cbf04aaafca167c74c605c6a520dfaa425f8669d21f5365e46b830a6acbb291206fe5b67bf7fde742823a586 + checksum: 1ea671962219deb0a927d3bc93c54cc5e369824b3cf316f2bb1a6c0d2e0577a058d7449bd6dcd146ef2ad513ecd62b6a48356424a0372605a7e7ce397ab46b43 languageName: node linkType: hard @@ -41054,7 +41033,7 @@ __metadata: "@backstage/cli": 0.29.6 "@janus-idp/cli": 3.3.0 "@mui/material": 5.16.14 - "@red-hat-developer-hub/backstage-plugin-global-header": 1.0.0 + "@red-hat-developer-hub/backstage-plugin-global-header": 1.1.0 typescript: 5.8.2 languageName: unknown linkType: soft From 2a13182fac51bc71fd1b4ea92da3fc902247ca16 Mon Sep 17 00:00:00 2001 From: its-mitesh-kumar Date: Tue, 18 Mar 2025 20:33:33 +0530 Subject: [PATCH 6/6] fixing e2e tests Signed-off-by: its-mitesh-kumar --- e2e-tests/playwright/e2e/default-global-header.spec.ts | 4 ++-- e2e-tests/playwright/e2e/plugins/http-request.spec.ts | 2 +- .../e2e/plugins/kubernetes-actions/kubernetes-actions.spec.ts | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/e2e-tests/playwright/e2e/default-global-header.spec.ts b/e2e-tests/playwright/e2e/default-global-header.spec.ts index 112da25ab0..cf4434d77d 100644 --- a/e2e-tests/playwright/e2e/default-global-header.spec.ts +++ b/e2e-tests/playwright/e2e/default-global-header.spec.ts @@ -31,9 +31,9 @@ test.describe("Default Global Header", () => { expect(await uiHelper.isBtnVisible("Settings")).toBeFalsy(); }); - test("Verify that clicking on Self-service button opens the Software Templates page", async () => { + test("Verify that clicking on Self-service button opens the Templates page", async () => { await uiHelper.clickLink({ ariaLabel: "Self-service" }); - await uiHelper.verifyHeading("Software Templates"); + await uiHelper.verifyHeading("Self-service"); }); test("Verify that clicking on Support button opens a new tab", async ({ diff --git a/e2e-tests/playwright/e2e/plugins/http-request.spec.ts b/e2e-tests/playwright/e2e/plugins/http-request.spec.ts index 7c8693907a..86ed846b5b 100644 --- a/e2e-tests/playwright/e2e/plugins/http-request.spec.ts +++ b/e2e-tests/playwright/e2e/plugins/http-request.spec.ts @@ -34,7 +34,7 @@ test.describe("Testing scaffolder-backend-module-http-request to invoke an exter await uiHelper.clickLink("Test HTTP Request"); await uiHelper.verifyHeading("Test HTTP Request"); await uiHelper.clickLink("Launch Template"); - await uiHelper.verifyHeading("Software Templates"); + await uiHelper.verifyHeading("Self-service"); await uiHelper.clickButton("Create"); //Checking for Http Status 200 await uiHelper.verifyText("200", false); diff --git a/e2e-tests/playwright/e2e/plugins/kubernetes-actions/kubernetes-actions.spec.ts b/e2e-tests/playwright/e2e/plugins/kubernetes-actions/kubernetes-actions.spec.ts index 54a6af104b..8a6901e3d2 100644 --- a/e2e-tests/playwright/e2e/plugins/kubernetes-actions/kubernetes-actions.spec.ts +++ b/e2e-tests/playwright/e2e/plugins/kubernetes-actions/kubernetes-actions.spec.ts @@ -23,7 +23,7 @@ test.describe("Test Kubernetes Actions plugin", () => { test("Creates kubernetes namespace", async () => { namespace = `test-kubernetes-actions-${Date.now()}`; - await uiHelper.verifyHeading("Software Templates"); + await uiHelper.verifyHeading("Self-service"); await uiHelper.clickBtnInCard("Create a kubernetes namespace", "Choose"); await uiHelper.waitForTitle("Create a kubernetes namespace", 2);