diff --git a/.changeset/dull-rings-melt.md b/.changeset/dull-rings-melt.md new file mode 100644 index 0000000000..4a42359535 --- /dev/null +++ b/.changeset/dull-rings-melt.md @@ -0,0 +1,6 @@ +--- +'@backstage/plugin-user-settings-backend': patch +'@backstage/plugin-home': patch +--- + +Change user settings backend plugin id and fix when using user setting backend home page first will cause edit page loop render diff --git a/plugins/home/src/components/CustomHomepage/CustomHomepageGrid.tsx b/plugins/home/src/components/CustomHomepage/CustomHomepageGrid.tsx index 590a96bf09..07e21ff8e2 100644 --- a/plugins/home/src/components/CustomHomepage/CustomHomepageGrid.tsx +++ b/plugins/home/src/components/CustomHomepage/CustomHomepageGrid.tsx @@ -206,10 +206,11 @@ export const CustomHomepageGrid = (props: CustomHomepageGridProps) => { availableWidgetsFilter, [props], ); - - const defaultLayout = props.config - ? convertConfigToDefaultWidgets(props.config, availableWidgets) - : []; + const defaultLayout = useMemo(() => { + return props.config + ? convertConfigToDefaultWidgets(props.config, availableWidgets) + : []; + }, [props.config, availableWidgets]); const [widgets, setWidgets] = useHomeStorage(defaultLayout); const [addWidgetDialogOpen, setAddWidgetDialogOpen] = React.useState(false); const editModeOn = widgets.find(w => w.layout.isResizable) !== undefined; diff --git a/plugins/user-settings-backend/src/alpha.ts b/plugins/user-settings-backend/src/alpha.ts index 8404c4ae94..a070396ca0 100644 --- a/plugins/user-settings-backend/src/alpha.ts +++ b/plugins/user-settings-backend/src/alpha.ts @@ -26,7 +26,7 @@ import { createRouter } from './service/router'; * @alpha */ export default createBackendPlugin({ - pluginId: 'userSettings', + pluginId: 'user-settings', register(env) { env.registerInit({ deps: {