Move @backstage/backend-defaults from dependencies to devDependencies
in all backend plugins that had it as a production dependency. None of
these plugins use it in their production source code - it's only needed
for dev servers (dev/index.ts) and test files.
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Align naming convention with HomePageLayoutBlueprint and the catalog
plugin's consistent entity- prefix pattern. Also update the kind string
from 'home-widget' to 'home-page-widget' to match 'home-page-layout'.
Added interface-level JSDoc to HomePageWidgetBlueprintParams.
Signed-off-by: Adam Kunicki <kunickiaj@gmail.com>
- Update README.md to reference HomePageLayoutBlueprint instead of
deleted HomepageBlueprint, with a complete working example
- Update docs/getting-started/homepage.md with corrected blueprint name
- Fix app-next example to properly accept and render widgets via the
HomePageLayoutProps interface instead of ignoring them
Signed-off-by: Adam Kunicki <kunickiaj@gmail.com>
Reorganize the home plugin's new frontend system extensions to follow
the same pattern as the catalog plugin's EntityContentLayoutBlueprint.
Key changes:
- Widgets now attach directly to page:home instead of through an
intermediate HomepageBlueprint extension
- Add HomePageLayoutBlueprint in home-react for custom layout creation,
with a built-in default layout as fallback
- Remove compatWrapper from HomepageWidgetBlueprint (consumer
responsibility, reduced need with NFS support in old system)
- Remove HomepageCompositionRoot usage (old system artifact)
- Delete HomepageBlueprint (replaced by HomePageLayoutBlueprint)
- Update app-next example and dev harness to use new pattern
Signed-off-by: Adam Kunicki <kunickiaj@gmail.com>
Following FormFieldBlueprint pattern, bundle component and metadata
into a single comprehensive homePageWidgetDataRef instead of outputting
them separately. This addresses review feedback about outputting data
that nothing consumes.
- Create homePageWidgetDataRef in plugin-home-react
- Update HomepageWidgetBlueprint to output bundled data
- Update HomepageBlueprint to consume bundled data and extract component
- Remove unused widgetMetadataRef export
Signed-off-by: Adam Kunicki <kunickiaj@gmail.com>
Migrates home plugin to support the new frontend system architecture by
introducing extension blueprints for composable homepage functionality.
Key changes:
- Add CustomHomepageWidgetBlueprint for creating installable homepage widgets
- Add CustomHomepageBlueprint for composing pages from widget extensions
- Introduce titleExtensionDataRef for NFS title handling
This attempts to bring the home plugin up to par with other core plugins that have migrated
to the new frontend system
Signed-off-by: Adam Kunicki <kunickiaj@gmail.com>
Use btoa/atob with TextEncoder/TextDecoder instead of Buffer for base64
encoding so the test utility works in browser environments too. Throw
InputError for malformed cursors in getEntities and queryEntities to
match the catalog backend behavior.
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Encode query parameters (filter, ordering, fullTextFilter) directly in
cursors instead of caching result sets. Simplifies the implementation
by removing mutable state while keeping the same behavior.
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>