Commit Graph

71109 Commits

Author SHA1 Message Date
Johan Persson 3f2c27a1e4 Remove children from Skeleton and Avatar propDefs
Children was incorrectly added to OwnProps/propDefs during migration,
causing useDefinition to extract it from restProps. Since neither
component consumes children directly, children should flow through
restProps to the underlying div element.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson baafd4b20f Fix Container not rendering children
Children was in propDefs (extracted to ownProps by useDefinition) but
the component only spread restProps on a self-closing div, silently
dropping children. Now explicitly renders children from ownProps.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 43b9f78080 Extract shared Menu popover classNames, propDefs, and types
Address review feedback: extract MenuPopoverOwnProps shared type for
common props (placement, virtualized, maxWidth, maxHeight, style,
className). Extract menuPopoverClassNames and menuPopoverPropDefs in
definition.ts to ensure shared values stay in sync across Menu variants.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 403496c5cb Migrate Menu component from useStyles to useDefinition
Split monolithic MenuDefinition (17 classNames) into 9 per-sub-component
definitions (Menu, MenuListBox, MenuAutocomplete, MenuAutocompleteListbox,
MenuItem, MenuListBoxItem, MenuSection, MenuSeparator, MenuEmptyState).
MenuItem color prop uses dataAttribute with default in propDefs. Defaults
for placement, virtualized, selectionMode moved to propDefs.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 36b1ac8802 Migrate TagGroup component from useStyles to useDefinition
Split shared TagGroupDefinition into TagGroupDefinition (root) and
TagDefinition (tag sub-component). Tag's size prop now uses dataAttribute
with default in propDefs instead of manual data-size and default spreading.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 66dc56c7f9 Migrate Tabs component from useStyles to useDefinition
Split monolithic TabsDefinition into 5 per-sub-component definitions
(Tabs, TabList, Tab, TabPanel, TabsIndicators). Each sub-component now
uses useDefinition with its own OwnProps type. Removed clsx and direct
CSS module imports from component files.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 4742c3f2e0 Migrate Table component from useStyles to useDefinition
Split monolithic TableDefinition into 8 per-sub-component definitions
(TableRoot, TableHeader, TableBody, Row, Column, Cell, CellText,
CellProfile) following the established defineComponent pattern.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson bd3a76eac7 Fix SearchField CSS selector to use lowercase data attribute
The useDefinition hook renders data attributes in lowercase,
so the CSS selector `[data-startCollapsed]` no longer matched.
Updated to `[data-startcollapsed]` to restore collapsed state
styling.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson a06731af67 Address review feedback for RadioGroup, Select, and TablePagination
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 1851e95930 Fix Radio displayName incorrectly set to 'RadioGroup'
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 9f4661b7c1 Update API report for RadioGroup, Select, and TablePagination migrations
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 8288e5ac85 Migrate Select component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 2e1eddf6c6 Migrate TablePagination component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson c6d4df4314 Migrate RadioGroup component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson a393ed3f17 Migrate PluginHeader component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 437ae1943d Migrate HeaderPage component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 08bc4dbcfe Migrate Dialog component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 54d5ba4cff Remove unused restProps spread from Flex and Grid components
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 8b0d2583f5 Migrate Grid component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson b303857f1e Fix isRequired not passed to React Aria field components
isRequired was consumed locally for the secondary label but never
forwarded to the underlying AriaTextField/AriaSearchField, resulting
in missing aria-required attribute and no built-in validation.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 42311e3a85 Update API report after batch migration
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 579c053270 Migrate Flex component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson e1dbf294dd Migrate Text component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 9c5d262398 Migrate TextField component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson c62ab0cf7b Migrate SearchField component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson dbf64fc345 Fix PasswordField: move label into OwnProps, remove FieldLabelProps extension, useDefinition first
- Add label to PasswordFieldOwnProps and propDefs
- Remove Omit<FieldLabelProps, ...> from PasswordFieldProps
- Move useDefinition call to top of component
- Access aria-label/aria-labelledby from restProps instead of props

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 61e4e033f8 Update API report after batch migration
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 59474d15b7 Migrate PasswordField component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson a4842b4ae0 Migrate ToggleButtonGroup component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson c239966fc7 Migrate ToggleButton component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 6d5f7002b6 Migrate FullPage component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 055d96e455 Update API report after batch migration
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 2503843d6e Migrate Popover component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson ab489e4e5e Migrate VisuallyHidden component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 351dd1e6ab Migrate Tooltip component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson cbefa44272 Migrate Switch component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 98788bf358 Cleanup migration issues.
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 041d065141 Update API report and changeset for batch migration
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson c84cee9e32 Migrate Skeleton component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 096dfdf86e Migrate Link component from useStyles to useDefinition
Fix pre-existing variant default from 'body' to 'body-medium' to match
actual CSS selectors. Add missing 'info' color to docs-ui props definition.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson fcfafb4515 Migrate FieldLabel component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson fe5513c604 Migrate FieldError component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 456a3666bc Migrate Container component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson 9df65dae02 Fix Avatar types to follow OwnProps pattern
Make AvatarOwnProps the source of truth with inline type definitions,
and have AvatarProps extend it. This follows the established pattern
used by Button, Checkbox, and Alert components. Export AvatarOwnProps
from the package entry point.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson c286160632 Migrate Checkbox component from useStyles to useDefinition
Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Johan Persson e363e8265d Migrate Avatar component from useStyles to useDefinition
Replace ComponentDefinition with defineComponent pattern, move CSS
module import and prop defaults into the definition, and switch the
component to useDefinition hook.

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 17:18:03 +01:00
Patrik Oldsberg 03f7e74fe1 Merge pull request #33036 from backstage/rugvip/cli-execute-loader
cli: add lazy loader pattern for command execution
2026-02-27 15:36:12 +01:00
Patrik Oldsberg 992e37b93f repo-tools: Use randomUUID for temp files and document sequential execution
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-02-27 14:56:22 +01:00
Johan Persson 9027b10643 fix(ui): fix scroll overflow in Menu and Select popovers
When viewport height constrains the popover, content now scrolls
instead of overflowing.

- Menu: add flex column layout and overflow hidden to .bui-MenuInner
- Select: add overflow auto and min-height 0 to .bui-SelectList

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-02-27 14:35:30 +01:00
Patrik Oldsberg acb2714ca8 Merge pull request #33025 from backstage/rugvip/move-transform-tests
cli: move transform tests into the build module
2026-02-27 14:08:22 +01:00