389 Commits

Author SHA1 Message Date
Charles de Dreuille 967dd632e0 Merge branch 'master' into docs-ui-props-updates 2026-02-03 08:06:09 +00:00
renovate[bot] b6d6faabcb chore(deps): update dependency @codemirror/view to v6.39.12
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-02 15:57:13 +00:00
dependabot[bot] f60c85f414 build(deps): bump tar from 7.5.6 to 7.5.7 in /docs-ui
Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.6 to 7.5.7.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v7.5.6...v7.5.7)

---
updated-dependencies:
- dependency-name: tar
  dependency-version: 7.5.7
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-02 15:41:10 +00:00
Charles de Dreuille 929a401880 Merge pull request #32608 from backstage/bui-links
BUI - Improve Link component styles
2026-01-31 09:05:55 +00:00
renovate[bot] c5f06791f8 chore(deps): update dependency motion to v12.29.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-30 21:04:40 +00:00
Charles de Dreuille 6192f335b9 Update HeaderPage.tsx
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-30 18:26:59 +00:00
Charles de Dreuille b40cf332a2 Add new info to Text
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-30 18:15:19 +00:00
Charles de Dreuille a88c437e38 Updated docs
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-30 18:08:20 +00:00
Charles de Dreuille d07be1b41f Remove link + tint tokens
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-30 17:57:33 +00:00
Charles de Dreuille 110fec026b Improve Link component styles
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-30 17:49:06 +00:00
Charles de Dreuille ac514e97f1 Merge pull request #32575 from backstage/fix/nextjs16-css-modules
Fix CSS Module purity errors for Next.js 16 compatibility
2026-01-30 14:54:43 +00:00
Charles de Dreuille 9da3b29044 Improve custom theme hydration issues
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-30 13:44:41 +00:00
Charles de Dreuille 7108c158f2 Remove requestAnimationFrame hack and use proper ESLint disable
Replaced the requestAnimationFrame workaround with an explicit ESLint
disable comment. The setState call in this effect is intentional and
valid - it's syncing component state with localStorage when switching
to the custom theme, which is a legitimate use case for effects.

This is clearer and more maintainable than hiding the intent with
requestAnimationFrame.

Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-30 13:31:09 +00:00
Charles de Dreuille 088ec1fa25 Prettier
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-29 15:30:01 +00:00
Charles de Dreuille 62a3add97f Fix some other issues
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-29 15:15:23 +00:00
Charles de Dreuille 29006ec722 Update sync-css script to output to src/css instead of public
Changed the CSS sync script to output theme files to src/css/ instead
of public/, matching the new location for theme CSS files.

Updated variable names from publicPath to outputPath for clarity and
updated log messages to reflect the correct output location.

Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-29 15:14:03 +00:00
Charles de Dreuille 73b56cc9c4 Move theme CSS files from public to src and fix imports
Next.js cannot import CSS from the /public directory - it's for static
assets only. Moved theme-backstage.css and theme-spotify.css from
/public to /src/css and updated imports to use proper relative paths.

This fixes the @next/next/no-css-tags ESLint warnings and follows
Next.js best practices for CSS imports.

Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-29 15:10:00 +00:00
Charles de Dreuille ad435e4344 Fix React hooks ESLint errors without disabling rules
Refactored components to avoid synchronous setState calls in effects
by using proper React patterns:

- TableOfContents: Use requestAnimationFrame to defer setState calls
  and useLayoutEffect for DOM measurements
- CustomTheme: Use lazy state initialization for isClient and defer
  theme loading with requestAnimationFrame
- PlaygroundContext: Use lazy initialization for localStorage hydration

These changes maintain functionality while satisfying the strict
react-hooks/set-state-in-effect ESLint rule.

Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-29 15:01:12 +00:00
renovate[bot] 43a4c0e6b5 chore(deps): update dependency html-react-parser to v5.2.12
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-29 14:18:23 +00:00
Charles de Dreuille 2398c3d1d9 Update tsconfig.json
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-29 13:45:37 +00:00
Charles de Dreuille d5ddd96493 Merge pull request #32572 from backstage/ui-docs-restore-decorative-box-layout-examples
docs(ui): restore DecorativeBox for layout component examples
2026-01-29 13:38:05 +00:00
Charles de Dreuille b9be9d33aa Upgrade to ESLint 9 for Next.js 16 compatibility
Next.js 16 requires ESLint 9 for proper flat config support. This commit:
- Upgrades eslint from ^8 to ^9
- Migrates from .eslintrc.json to eslint.config.mjs (flat config)
- Updates lint script to use eslint directly (next lint removed in Next.js 16)
- Adds tsconfig.json includes for Next.js 16 dev types
- Fixes layout.tsx to use proper theme CSS link tags

Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-29 13:30:44 +00:00
Charles de Dreuille 0a2a3e51e8 Update spacing props display with collapsible groups
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-29 12:54:02 +00:00
Johan Persson 864eb8c4c8 docs(ui): improve Container documentation
Improves Container documentation to better explain its purpose as
a page-level wrapper for plugin content.

- Added Core Concepts section explaining centering, max-width, and gutters
- Removed redundant Basic Usage example
- Updated examples to use DecorativeBox
- Improved PageTitle description

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-01-29 13:48:50 +01:00
Johan Persson b8eb1284ba docs(ui): restore DecorativeBox for layout component examples
Restores the striped DecorativeBox pattern for visualizing layout
in Box, Flex, and Grid documentation examples.

- Enhanced DecorativeBox to accept children and style props
- Updated Box examples to use DecorativeBox with width/height props
- Replaced inline boxStyle/labelBoxStyle in Flex and Grid with DecorativeBox
- Improved Box surface example description

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-01-29 13:47:25 +01:00
Charles de Dreuille 025e9a8fe0 Upgrade Next.js to 16.1.6
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-29 10:52:07 +00:00
Johan Persson 2c219b9817 feat(ui): add danger variant to Button component
Added a `danger` variant for destructive actions like delete or remove.
Uses solid red background with white text in both light and dark modes.

- Added CSS styles with custom properties for future token migration
- Updated Storybook stories to include danger variant examples
- Updated docs-ui documentation to reflect the new variant

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-01-29 11:42:56 +01:00
Johan Persson 2a57064226 docs(ui): comprehensive documentation improvements for all components
Improves documentation quality and consistency across all UI components.

Props documentation:
- Added descriptions to all props across all components
- Fixed prop types to match source implementations
- Added missing props (onAction, isInvalid, aria-label, etc.)
- Corrected default values and removed non-existent props
- Converted props-definition files to .tsx for Chip component usage

Examples and snippets:
- Added side-by-side layout option to Snippet component
- Fixed snippet/preview mismatches
- Improved example code indentation and formatting
- Added live previews to Container, Box, Grid examples
- Wrapped Skeleton examples in themed Box for visibility

API reference:
- Added ReactAriaLinks to all components
- Updated React Aria URLs to react-aria.adobe.com format
- Cleaned up verbose prose and standardized descriptions

Other:
- Updated PageTitle descriptions to 5-12 word format
- Varied example intro phrasing for consistency

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-01-28 14:09:26 +01:00
Fredrik Adelöw f02219a054 Merge pull request #32516 from backstage/freben/nodecolon
Add a rule for the use of `node:` prefix on native imports
2026-01-27 14:17:14 +01:00
Charles de Dreuille d013d4a20b Adding docs for Alert
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-26 18:37:28 +00:00
Fredrik Adelöw 7455dae884 require the use of node prefix on native imports
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2026-01-26 13:22:53 +01:00
Charles de Dreuille 95c70b1285 Update sync-changelog.mjs
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-26 10:47:32 +00:00
Charles de Dreuille 988b46ff13 Update sync-changelog.mjs
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-26 10:37:20 +00:00
Charles de Dreuille 9d712d3e80 Remove old format support
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-26 10:26:47 +00:00
Charles de Dreuille 4926084387 Improve script
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-26 10:12:10 +00:00
Charles de Dreuille 1df8ef4a47 Cleanup
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-23 22:58:51 +00:00
Charles de Dreuille 8adc108bc7 Remove duplicates
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-23 22:56:08 +00:00
Charles de Dreuille 3aa908fdce Cleaning up
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-23 22:42:14 +00:00
Charles de Dreuille 0e1c72576e Fixes client vs server side
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-23 22:01:38 +00:00
Charles de Dreuille 72877204c7 Update index.tsx
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-23 21:32:25 +00:00
Charles de Dreuille 2f709e15ab Add new changelog structure
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-23 18:34:28 +00:00
Charles de Dreuille 3342b2af29 Add new changelog format for BUI
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-01-23 15:10:25 +00:00
Johan Persson ec66afb03e docs(table): rewrite Table component documentation
Comprehensive rewrite of the Table component documentation including:

- Updated prop definitions with JSX descriptions
- New interactive examples for sorting, search, pagination, selection
- Expanded code snippets covering all major use cases
- Added custom row and primitives examples
- Improved MDX structure and styling

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-01-23 14:13:50 +01:00
Johan Persson 40a30551a0 feat(docs-ui): improve documentation components
- Add ReactAriaLink component for linking to React Aria docs
- Make PropsTable columns configurable
- Improve Chip styling to support multiline content
- Allow ReactNode in PropDef descriptions

Signed-off-by: Johan Persson <johanopersson@gmail.com>
2026-01-23 14:13:50 +01:00
Fredrik Adelöw 181f2fefa7 Merge pull request #32435 from backstage/renovate/nextjs-monorepo
fix(deps): update nextjs monorepo to v15.5.9
2026-01-22 11:53:53 +01:00
Fredrik Adelöw 6dfec318f1 Merge pull request #32438 from backstage/renovate/codemirror
chore(deps): update codemirror
2026-01-22 11:53:14 +01:00
Fredrik Adelöw 1a5cfd0e32 Merge pull request #32443 from backstage/renovate/remixicon-react-4.x-lockfile
chore(deps): update dependency @remixicon/react to v4.8.0
2026-01-22 11:36:58 +01:00
renovate[bot] 0922aac9a1 chore(deps): update dependency motion to v12.27.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-21 22:02:45 +00:00
renovate[bot] e545097f40 chore(deps): update dependency @remixicon/react to v4.8.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-21 19:18:27 +00:00
renovate[bot] f767848e6d chore(deps): update codemirror
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-21 17:18:52 +00:00