diff --git a/.changeset/chilled-zebras-wash.md b/.changeset/chilled-zebras-wash.md new file mode 100644 index 0000000000..9597915ce5 --- /dev/null +++ b/.changeset/chilled-zebras-wash.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-user-settings': patch +--- + +add user-settings declarative integration core nav item diff --git a/plugins/user-settings/api-report-alpha.md b/plugins/user-settings/api-report-alpha.md index adb609a2cb..b06fd1e583 100644 --- a/plugins/user-settings/api-report-alpha.md +++ b/plugins/user-settings/api-report-alpha.md @@ -4,6 +4,7 @@ ```ts import { BackstagePlugin } from '@backstage/frontend-plugin-api'; +import { ExtensionDefinition } from '@backstage/frontend-plugin-api'; import { RouteRef } from '@backstage/frontend-plugin-api'; import { TranslationRef } from '@backstage/core-plugin-api/alpha'; @@ -16,6 +17,11 @@ const _default: BackstagePlugin< >; export default _default; +// @alpha (undocumented) +export const settingsNavItem: ExtensionDefinition<{ + title: string; +}>; + // @alpha (undocumented) export const userSettingsTranslationRef: TranslationRef< 'user-settings', diff --git a/plugins/user-settings/src/alpha.tsx b/plugins/user-settings/src/alpha.tsx index 06590d839a..5dabd70739 100644 --- a/plugins/user-settings/src/alpha.tsx +++ b/plugins/user-settings/src/alpha.tsx @@ -16,6 +16,7 @@ import { coreExtensionData, createExtensionInput, + createNavItemExtension, createPageExtension, createPlugin, } from '@backstage/frontend-plugin-api'; @@ -23,6 +24,7 @@ import { convertLegacyRouteRef, compatWrapper, } from '@backstage/core-compat-api'; +import SettingsIcon from '@material-ui/icons/Settings'; import { settingsRouteRef } from './plugin'; import React from 'react'; @@ -50,12 +52,19 @@ const userSettingsPage = createPageExtension({ ), }); +/** @alpha */ +export const settingsNavItem = createNavItemExtension({ + routeRef: convertLegacyRouteRef(settingsRouteRef), + title: 'Settings', + icon: SettingsIcon, +}); + /** * @alpha */ export default createPlugin({ id: 'user-settings', - extensions: [userSettingsPage], + extensions: [userSettingsPage, settingsNavItem], routes: { root: convertLegacyRouteRef(settingsRouteRef), },