2406 Commits

Author SHA1 Message Date
github-actions[bot] 68db890456 Version Packages (next) 2026-05-26 15:26:38 +00:00
Andre Wanlin 8b31484e82 Merge pull request #33690 from asheen1234/gitlab-repo-owner-picker
Add GitLabRepoOwnerPicker for RepoOwnerPicker
2026-05-25 09:00:36 -05:00
dependabot[bot] e0889a3f8e chore(deps): bump qs from 6.15.1 to 6.15.2
Bumps [qs](https://github.com/ljharb/qs) from 6.15.1 to 6.15.2.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.15.1...v6.15.2)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.15.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-23 12:27:32 +00:00
github-actions[bot] b97fcb0a93 Version Packages 2026-05-19 18:28:24 +00:00
Patrik Oldsberg 36998fea17 scaffolder: restore page nav title to Create
Use Create on the page extension rather than the former nav item label.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-19 11:28:12 +02:00
Patrik Oldsberg 10e5d6f8aa Remove NavItemBlueprint in favor of page-based nav discovery
Drop the deprecated NavItemBlueprint from the public API and migrate core
plugins to set title and icon on PageBlueprint instead. AppNav keeps
backward compatibility for legacy nav-item extensions via an internal
core.nav-item.target data ref.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-19 11:00:46 +02:00
github-actions[bot] 42a2f56e61 Version Packages (next) 2026-05-12 18:28:01 +00:00
asheen 191bdbfa51 Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Signed-off-by: asheen <sergeantnumnumz@gmail.com>
2026-05-12 13:26:52 -04:00
asheen1234 7647ce7233 test: add missing test for gitlab autocomplete
Signed-off-by: asheen1234 <sergeantnumnumz@gmail.com>
2026-05-12 12:10:56 -04:00
asheen1234 66a472267c fix: add Bui theme
Signed-off-by: asheen1234 <sergeantnumnumz@gmail.com>
2026-05-12 12:10:56 -04:00
asheen1234 1d24a4cfce fix: align with main
Signed-off-by: asheen1234 <sergeantnumnumz@gmail.com>
2026-05-12 10:53:52 -04:00
asheen fe6b868308 Merge branch 'master' into gitlab-repo-owner-picker
Signed-off-by: asheen <sergeantnumnumz@gmail.com>
2026-05-12 10:48:17 -04:00
Ben Lambert d09c21cb84 feat(scaffolder): config-driven template groups and swappable TemplateCard (#34147)
* feat(scaffolder): config-driven template groups and swappable TemplateCard

Signed-off-by: benjdlambert <ben@blam.sh>

* refactor(scaffolder): keep createGroupsWithOther internal

Signed-off-by: benjdlambert <ben@blam.sh>

* docs(scaffolder): fix sub-page extension ID in changeset

Signed-off-by: benjdlambert <ben@blam.sh>

* address PR review feedback

Signed-off-by: benjdlambert <ben@blam.sh>

* split TemplateCard swappable contract from legacy props

Signed-off-by: benjdlambert <ben@blam.sh>

* address review feedback: dedupe tags, defensive groups copy, doc clarifications

Signed-off-by: benjdlambert <ben@blam.sh>

* regenerate api reports

Signed-off-by: benjdlambert <ben@blam.sh>

* align docs and changeset with actual default group titles

Signed-off-by: benjdlambert <ben@blam.sh>

* regen api reports after rebase

Signed-off-by: benjdlambert <ben@blam.sh>

---------

Signed-off-by: benjdlambert <ben@blam.sh>
2026-05-12 12:29:44 +02:00
Ben Lambert dbeb7aab3e feat(scaffolder): add BUI theme for scaffolder forms (#33053)
* feat(scaffolder): add BUI theme for scaffolder forms

Add a Backstage UI (BUI) form theme as an alternative to the Material
UI theme. Toggled via formProps.theme or enableBackstageUi page config.

Includes BUI widgets, templates, field extension variants, and a ported
React Aria Autocomplete component.

Signed-off-by: benjdlambert <ben@blam.sh>

* refactor(scaffolder): use BUI Combobox and CheckboxGroup for form widgets

Signed-off-by: benjdlambert <ben@blam.sh>

* chore(scaffolder): enable BUI form flag and add kitchen sink demo template

Signed-off-by: benjdlambert <ben@blam.sh>

* fix(scaffolder): use outlined input style for BUI form widgets

Signed-off-by: benjdlambert <ben@blam.sh>

* fix(scaffolder): address BUI form PR feedback

Signed-off-by: benjdlambert <ben@blam.sh>

* fix(scaffolder): format CSS and regen API reports

Signed-off-by: benjdlambert <ben@blam.sh>

---------

Signed-off-by: benjdlambert <ben@blam.sh>
2026-05-12 10:35:21 +02:00
Ben Lambert 8006acf89a feat(scaffolder): promote formDecorators out of experimental (#34180)
* feat(scaffolder): promote formDecorators out of experimental

Signed-off-by: benjdlambert <ben@blam.sh>

* fix(scaffolder): parse form decorator input through the configured zod schema

Signed-off-by: benjdlambert <ben@blam.sh>

* refactor(scaffolder-backend): emit single formDecorators field on the parameter-schema response

Signed-off-by: benjdlambert <ben@blam.sh>

* feat(scaffolder): promote form decorator blueprints to public API

Signed-off-by: benjdlambert <ben@blam.sh>

---------

Signed-off-by: benjdlambert <ben@blam.sh>
2026-05-11 11:29:36 +02:00
Andre Wanlin 2f33a9f63f Fixes for non-breaking typos and typos configuration
Signed-off-by: Andre Wanlin <awanlin@spotify.com>

More

Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-04-29 16:54:05 -05:00
github-actions[bot] 7295193bb6 Version Packages (next) 2026-04-28 15:53:09 +00:00
Patrik Oldsberg f635139ebc Limit @remixicon/react to versions below 4.9.0
The license changed in 4.9.0, so we need to cap the allowed version
range across all packages that depend on it.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-23 16:42:38 +02:00
github-actions[bot] 1cc86bee1c Version Packages (next) 2026-04-21 15:07:43 +00:00
Fredrik Adelöw 83ac69be86 Fix ListTaskPage test to match simplified OwnerEntityColumn
Update assertions to expect the entity presentation short ref (e.g.
'foo') instead of the old catalog-resolved display name (e.g.
'BackUser'), and remove now-unused entity fixtures and catalog API
mocking.

Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
2026-04-18 22:50:30 +02:00
Fredrik Adelöw 8341f98940 Simplify OwnerEntityColumn to use EntityRefLink directly
Remove the catalog API lookup and manual title resolution. The
EntityRefLink already uses the entity presentation API to resolve
display names, so the component only needs the entity ref string.

This removes unused imports of useApi, useAsync, catalogApiRef,
parseEntityRef, and UserEntity.

Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
2026-04-18 22:32:54 +02:00
Fredrik Adelöw 8e7f7249e7 chore: regenerate knip reports
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
2026-04-16 12:14:47 +02:00
Hellgren Heikki cad156e797 fix: replace old config schemas for extensions and blueprints
to overcome a lot of warnings given during for example testing where
these extensions are used.

Signed-off-by: Hellgren Heikki <heikki.hellgren@op.fi>
2026-04-15 12:55:27 +03:00
github-actions[bot] 93e643d142 Version Packages 2026-04-14 14:57:31 +00:00
Fredrik Adelöw 9f24941b49 Merge pull request #33663 from backstage/freben/catalog-model-extensions
Add catalog model layer system with JSON Schema based kind declarations
2026-04-14 16:29:01 +02:00
Adam Kunicki 297302ebce scaffolder: fix NFS custom field explorer wiring (#33599)
* scaffolder: fix NFS custom field explorer wiring

Signed-off-by: Adam Kunicki <kunickiaj@gmail.com>

* refactor: use useMountEffect instead of useEffect for async execute

Signed-off-by: benjdlambert <ben@blam.sh>

---------

Signed-off-by: Adam Kunicki <kunickiaj@gmail.com>
Signed-off-by: benjdlambert <ben@blam.sh>
Co-authored-by: benjdlambert <ben@blam.sh>
2026-04-14 13:57:58 +02:00
Fredrik Adelöw e5fcfcb2cb Add catalog model layers with JSON Schema based kind declarations
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
2026-04-13 16:54:15 +02:00
Patrik Oldsberg 373ce062d2 plugin-scaffolder: remove unused blobToBase64 helper
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-13 13:06:15 +02:00
Patrik Oldsberg 70336a127c Merge pull request #33664 from backstage/scaffolder-actions-single-table
scaffolder: migrate actions page to @backstage/ui components
2026-04-09 20:25:49 +02:00
github-actions[bot] 6c10d88c13 Version Packages (next) 2026-04-07 15:30:58 +00:00
Fredrik Adelöw 587981973c Merge pull request #33576 from backstage/maratd/replace-humanize-entity-ref
Replace deprecated humanizeEntityRef with Catalog Presentation API
2026-04-07 14:28:39 +02:00
Marat Dyatko b32ab39670 Fix unsafe type casts via shared entityPresentationSnapshot utility
Extract entityPresentationSnapshot helper to eliminate unsafe `as Entity`
casts when passing CompoundEntityRef to EntityPresentationApi.forEntity(),
which only accepts Entity | string. The helper safely discriminates input
types and stringifies CompoundEntityRef before calling the API.

- Add entityPresentationSnapshot as a public export from catalog-react
- Remove duplicated getEntityTitle/getTitle helpers across 5 files
- Fix useAsync dependency array in TemplateFormPreviewer
- Update TSDoc across all presentation API surfaces to reference the
  new helper
- Update entity-presentation.md docs with usage guidance and migration
  table

Made-with: Cursor
Signed-off-by: Marat Dyatko <maratd@spotify.com>
2026-04-07 12:41:29 +02:00
Patrik Oldsberg 67fcc5a689 scaffolder: sync selected action with URL hash
Reflect the currently selected action in the URL hash so that users can
deep-link to a specific action on the actions page. On load the hash is
read to pre-select and scroll to the matching action.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-04 11:28:47 +02:00
Patrik Oldsberg 8f93ed9e12 scaffolder: address copilot review feedback
- Use translation key for "No schema defined" fallback instead of hardcoded string
- Add aria-label to the enum format button for accessibility
- Remove unnecessary `as any` casts on defaultWidth column config
- Fix "Github" -> "GitHub" capitalization in test data
- Update changeset wording to match actual sidebar list UI

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-04-01 14:32:38 +02:00
github-actions[bot] a2cb332e25 Version Packages (next) 2026-03-31 15:30:51 +00:00
Fredrik Adelöw 9ee88aeb59 Merge pull request #33170 from dbmdz/gitlab-repo-picker-improvements
Gitlab repo picker improvements
2026-03-31 15:55:10 +02:00
asheen1234 7eeadfa8e3 feat: add RepoOwnerPicker tests and prettier linting
Signed-off-by: asheen1234 <sergeantnumnumz@gmail.com>
2026-03-30 21:12:40 -04:00
asheen1234 4204cd8bc7 fix: switch from id to title
Signed-off-by: asheen1234 <sergeantnumnumz@gmail.com>
2026-03-30 19:24:56 -04:00
asheen1234 3e5acb5e97 Add GitLabRepoOwnerPicker and tests
Signed-off-by: asheen1234 <sergeantnumnumz@gmail.com>
2026-03-30 14:34:07 -04:00
Patrik Oldsberg a7aedb4f0a scaffolder: restore schema title rendering and fix toolbar test
The migration to the table-based RenderSchema dropped rendering of the
JSON Schema `title` field. Restore it in the ValueCell. Also update the
TemplateEditorToolbar test to select an action before asserting on its
schema details, matching the new list+detail UI.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-29 22:49:04 +02:00
Patrik Oldsberg 0a7ec8e7c9 scaffolder: widen schema name column to 300px
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-29 22:41:15 +02:00
Patrik Oldsberg 1d94f0f9f7 fix: prevent actions list from expanding beyond screen edge
Add minWidth and overflow constraints to the List component so long
descriptions are truncated with ellipsis instead of overflowing the
grid column.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-29 21:24:37 +02:00
Patrik Oldsberg 693c6e8277 scaffolder: refine schema table cell styling
Style the name column with monospace text and widen it slightly. Add a
neutral background badge style to type labels in the value column.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-28 21:26:57 +01:00
Patrik Oldsberg 881d586722 scaffolder: use high-level Table component with column configs
Replace manual composition of TableRoot/TableHeader/TableBody/Row/Column
primitives with the top-level Table component and ColumnConfig-based
column definitions.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-28 21:20:06 +01:00
Patrik Oldsberg 648d2b9e51 scaffolder: use fixed width for name column in schema table
Use a fixed pixel width for the name column instead of a fractional
unit, preventing it from growing too wide with longer property names.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-28 21:05:26 +01:00
Patrik Oldsberg daa7bdc7b0 scaffolder: adjust table column widths for better proportions
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-28 20:55:56 +01:00
Patrik Oldsberg 7daa71fdc6 scaffolder: merge description and type into a single value column
Combine the description and type columns into a single "Value" column
that shows the type, description, and nested content inline. This
avoids the broken layout where expanded rows were rendered as siblings
below the table, decoupled from their row context.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-28 19:20:55 +01:00
Patrik Oldsberg 7936e5c917 scaffolder: use single table for schema properties and widen description column
Consolidate the per-property tables into a single table with one header
row, eliminating the repeated table headers for each property. Give the
description column 3x the width of name/type columns so longer
descriptions get more room.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-28 19:08:03 +01:00
Patrik Oldsberg 22c00fd011 scaffolder: render each property as its own table and make subschemas collapsible
Restructure schema rendering so each property row is wrapped in its own
table, enabling inline expansion of nested schemas. Remove the title
column since it duplicated the name. Make subschema sections (oneOf etc.)
collapsible behind toggle buttons instead of rendering them expanded.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-28 18:47:57 +01:00
Patrik Oldsberg 80d4b26a29 scaffolder: fix detail panel grid column placement
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-28 18:32:25 +01:00