feat(homepage): add persona-support in NFS components (RHIDP-14651)#3700
feat(homepage): add persona-support in NFS components (RHIDP-14651)#3700christoph-jerolimov wants to merge 5 commits into
Conversation
…P-14651) Planning document for integrating homepage-backend persona-based default widgets into the New Frontend System (NFS) components. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Missing ChangesetsThe following package(s) are changed by this PR but do not have a changeset:
See CONTRIBUTING.md for more information about how to add changesets. Changed Packages
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #3700 +/- ##
==========================================
- Coverage 54.30% 54.30% -0.01%
==========================================
Files 2349 2349
Lines 89718 89736 +18
Branches 25119 25115 -4
==========================================
+ Hits 48722 48728 +6
- Misses 40648 40660 +12
Partials 348 348
*This pull request uses carry forward flags. Click here to find out more. Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
Revised plan based on codebase exploration: - Share existing useDefaultWidgets hook (switch useApi import) - Remove widgetLayout config from homePageLayoutExtension - Rename NFS widget blueprint names to match config refs - Enable persona Playwright test for NFS mode Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Wire the NFS HomePageLayout to call the homepage-backend for persona-based (user/group/permission-filtered) default widgets, bringing NFS to parity with OFS. Key changes: - Share useDefaultWidgets hook between OFS and NFS (switch useApi import to @backstage/frontend-plugin-api) - HomePageLayout now fetches and merges backend defaults with extension-provided widgets, with graceful fallback - Remove widgetLayout config from homePageLayoutExtension (layout data now comes from the backend) - Rename NFS widget blueprint names to match config ref values - Refactor catalogStarredWidget to standalone blueprint - Enable persona Playwright e2e test for NFS mode Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…romium Fix widget name resolution in HomePageLayout: use node.spec.id (the extension ID from the NFS app tree) instead of widget.name (which is the display name) when matching backend default widget refs to NFS widgets. Also switch Playwright config from chrome channel to chromium for local test compatibility. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
PR Summary by QodoAdd persona-based default widgets support to NFS homepage layout
AI Description
Diagram
High-Level Assessment
Files changed (9)
|
Code Review by Qodo
Context used 1. Default widget props ignored
|



Summary
homepage-backendfor persona-based defaultsJira
Approach
useDefaultWidgetshook that calls the existingdefaultWidgetsApiRef(already registered in NFS)HomePageLayoutto fetch and merge backend-driven persona defaults with extension-provided widgetsSee
workspaces/homepage/plugins/homepage/RHIDP-14651-plan.mdfor the detailed implementation plan.Test plan
useDefaultWidgetsNFS hookHomePageLayoutwith backend defaults🤖 Generated with Claude Code