Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
86 changes: 56 additions & 30 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,70 +1,95 @@
# SciReactUI Changelog

## [Unreleased]
## [v1.0.0] - TBD

### Added

- Diamond DS, a new design system theme based on semantic roles and tokens.
- Storybook coverage for MUI components.
- Added Inter as the default font for the Diamond DS theme.
- Added Inter, Outfit and IBM Plex Mono font support to Storybook typography examples.
- Design system documentation, including overview, component standards and usage guidance.
- Guidance and stories for buttons, text fields and Material React Table.
- Storybook documentation styling and typography.

### Changed
- **Breaking** Introduced new design system theme based on semantic surface tokens.
- **Breaking** Removed Diamond and Generic themes which are no longer supported.
- **Breaking** Updated components to new theme and ensure compatability in light/dark modes.
- *Logo* and *ImageColourSchemeSwitch* use tone (default/inverse) and fixedTone to adapt to surface colour. Deprecated use of interchange prop.

- **Breaking** Introduced Diamond DS theme, semantic CSS roles and component overrides.
- **Breaking** Introduced separate `brand` colour and updated `primary` colour to be more action oriented.
- **Breaking** Introduced roles for surfaces and borders.
- **Breaking** Introduced solid and subtle action patterns.
- **Breaking** Added CSS-driven light and dark colour schemes with support for `data-mode="light|dark"`.
- **Breaking** Updated components to use consistent semantic styling patterns.
- Updated Storybook examples and documentation.
- Improved accessibility, contrast and future customisation.
- _Logo_ and _ImageColourSchemeSwitch_ use tone (default/inverse) and fixedTone to adapt to surface colour. Deprecated use of interchange prop.

### Removed

- **Breaking** Removed Diamond and Generic themes, which are no longer supported.
- Removed legacy colour documentation.

## [v0.5.0] - 2026-06-03

### Added
- New *NumberInput* component which validates various number types, high limits, and low limits.

- New _NumberInput_ component which validates various number types, high limits, and low limits.

### Changed

- **Breaking** `keycloak-js` has been moved from a direct dependency to a peer and optional dependency, so must now be installed by the consuming application.
- Added submitOnBlur boolean prop to VisitInput which defaults to false.

### Fixed
- Icon imports were causing issues downstream when components are unit tested.

- Icon imports were causing issues downstream when components are unit tested.

## [v0.4.1] - 2026-02-24

### Fixed
- *Progress* and *ProgressDelayed* were not exported
- Fix *User* login button having wrong colour

- _Progress_ and _ProgressDelayed_ were not exported
- Fix _User_ login button having wrong colour

### Changed
- The *NavMenu* will now close if something is selected.
- Updated styles of *User* (style now similar to *NavMenu*)

- The _NavMenu_ will now close if something is selected.
- Updated styles of _User_ (style now similar to _NavMenu_)

## [v0.4.0] - 2026-02-10

### Added

- New *Progress* component based on Diamond Light added.
- New *ProgressDelayed* component so that the progress isn't shown at all when it's a small wait.
- *NavMenu* component added for creating dropdown menus in the Navbar
- *NavMenuLink* component extends NavLink to work in the NavMenu
- *AuthProvider* added for authentication to Keycloak.
- An *auth* parameter was added to *User* to simplify when *AuthProvider* is used.
- *ScrollableImages* can now display in a wide view, with multiple images.
- New _Progress_ component based on Diamond Light added.
- New _ProgressDelayed_ component so that the progress isn't shown at all when it's a small wait.
- _NavMenu_ component added for creating dropdown menus in the Navbar
- _NavMenuLink_ component extends NavLink to work in the NavMenu
- _AuthProvider_ added for authentication to Keycloak.
- An _auth_ parameter was added to _User_ to simplify when _AuthProvider_ is used.
- _ScrollableImages_ can now display in a wide view, with multiple images.

### Fixed

- Hovering over a slot caused a popup with the slot title in. This has been removed.
- Stopped Bar-based components (e.g. Navbar, Footer) from expanding when a parent component has a set height
- The base *Bar* component was not being exported.
- The base _Bar_ component was not being exported.
- Various fixes to improve accessibility
- *ScrollableImages* could attempt accessing images outside of array.
- _ScrollableImages_ could attempt accessing images outside of array.

### Changed

- *BaseTheme*/*DiamondTheme* secondary colour of dark theme has been much darkened. (You can select *DiamondOldTheme* if you prefer the older one!)
- _BaseTheme_/_DiamondTheme_ secondary colour of dark theme has been much darkened. (You can select _DiamondOldTheme_ if you prefer the older one!)
- Remove first-child css selector as it causes problems with server-side rendering.

## [v0.3.0] - 2025-09-04

### Added

- *Logo* component, to easily add the theme logo to anywhere
- *ImageColourSchemeSwitch* takes a parameter *interchange* to swap image based on the opposite
- _Logo_ component, to easily add the theme logo to anywhere
- _ImageColourSchemeSwitch_ takes a parameter _interchange_ to swap image based on the opposite
of the colour scheme switch - for use with alternative background colours.
- *BaseBar* component is the base for all the bars used in SciReactUI. Can also be used itself.
- *AppBar* is a bar to show the main title of your App.
- _BaseBar_ component is the base for all the bars used in SciReactUI. Can also be used itself.
- _AppBar_ is a bar to show the main title of your App.
- JsonForms renderers have been added for use with readonly mode in JsonForms.
- Support for TIFFs in ScrollableImages component

Expand All @@ -78,11 +103,11 @@

### Changed

- Breaking change: The use of *color* has been replaced with *colour* throughout.
- *ImageColorSchemeSwitch*, *ImageColorSchemeSwitchType* and *ImageColorSchemeSwitchProps*
renamed to *ImageColourSchemeSwitch*, ImageColourSchemeSwitchType and ImageColourSchemeSwitchProps respectively
- *User* component color prop renamed to colour.
- RootProps on *Breadcrumbs* has been removed. There props can be passed in directly.
- Breaking change: The use of _color_ has been replaced with _colour_ throughout.
- _ImageColorSchemeSwitch_, _ImageColorSchemeSwitchType_ and _ImageColorSchemeSwitchProps_
renamed to _ImageColourSchemeSwitch_, ImageColourSchemeSwitchType and ImageColourSchemeSwitchProps respectively
- _User_ component color prop renamed to colour.
- RootProps on _Breadcrumbs_ has been removed. There props can be passed in directly.
e.g. `<Breadcrumbs sx={{color:"red"}} />` instead of `<Breadcrumbs rootProps={{sx: { color: "red" } }}/>`

## [v0.2.0] - 2025-06-11
Expand Down Expand Up @@ -170,4 +195,5 @@
-

### Changed

-
Loading