Releases: SchweizerischeBundesbahnen/scion-workbench
1.0.0-beta.35 (@scion/workbench-client)
1.0.0-beta.35 (2025-11-12)
Features
- workbench-client: enable microfrontend to inject current workbench element (d2e4537)
20.0.0-beta.9 (@scion/workbench)
20.0.0-beta.9 (2025-11-11)
Features
- workbench/perspective: enable contribution of microfrontend parts to a workbench perspective (b6d25cf), closes #683
- workbench/part: support activating docked part when adding it to the layout (89aba48)
- workbench/dialog: add support for non-blocking dialog (28b0291)
- workbench/dialog: add support for part-modal dialog (4411246)
- workbench/notification: enable closing notification via handle (7b425bd)
- workbench/notification: prevent notification from closing on hover (903a912)
BREAKING CHANGES
- workbench: SCION Workbench requires
@scion/microfrontend-platformv1.5.0or higher. - workbench: SCION Workbench requires
@scion/workbench-clientv1.0.0-beta.34or higher.
Recommendations
- To use icons in docked parts, configure an icon provider in the workbench host application or include the Material icon font. See documentation for details.
Deprecations
- workbench/popup: Signature of
contextoption in popup config has changed from object literal to string literal. Migrate{context: {viewId: 'view.x'}}to{context: 'view.x'}. - workbench/dialog: Signature of
contextoption in dialog options has changed from object literal to string literal. Migrate{context: {viewId: 'view.x'}}to{context: 'view.x'}. - workbench/messagebox: Signature of
contextoption in messagebox options has changed from object literal to string literal. Migrate{context: {viewId: 'view.x'}}to{context: 'view.x'}. - workbench/dialog:
viewmodality in dialog options was renamed tocontext. - workbench/messagebox:
viewmodality in messagebox options was renamed tocontext.
1.0.0-beta.34 (@scion/workbench-client)
1.0.0-beta.34 (2025-11-11)
Features
- workbench-client/perspective: enable contribution of microfrontend parts to a workbench perspective (b6d25cf), closes #683
- workbench-client/dialog: add support for non-blocking dialog (28b0291)
- workbench-client/dialog: add support for part-modal dialog (4411246)
- workbench-client/text: support passing interpolation parameters via options (17718d0)
Recommendations
- workbench-client: For Angular applications, provide
WorkbenchPartfor dependency injection. See documentation for details.import {WorkbenchPart} from '@scion/workbench-client'; import {Beans} from '@scion/toolkit/bean-manager'; {provide: WorkbenchPart, useFactory: () => Beans.opt(WorkbenchPart)}
- To use icons in docked parts, configure an icon provider in the workbench host application or include the Material icon font. See documentation for details.
Deprecations
-
workbench-client/perspective: The modeling of a workbench perspective capability has changed: Parts must be modeled as separate part capabilities and views referenced from part capabilities. To migrate, refer to the documentation of WorkbenchPerspectiveCapability and WorkbenchPartCapability. Support for the deprecated model will be removed in SCION Workbench version 22.
Before migration:
{ "type": "perspective", "qualifier": { "perspective": "sample-perspective" }, "private": false, "properties": { "layout": [ { "id": "main-area" }, { "id": "navigator", "align": "left", "relativeTo": "main-area", "ratio": 0.25, "views": [ { "qualifier": { "view": "navigator" } } ] } ] } }After migration:
{ "type": "perspective", "qualifier": { "perspective": "sample-perspective" }, "private": false, "properties": { "parts": [ { "id": "main-area", "qualifier": { "part": "main-area" } }, { "id": "navigator", "qualifier": { "part": "navigator" }, "position": { "align": "left", "relativeTo": "main-area", "ratio": 0.25 } } ] } }, { "type": "part", "qualifier": { "part": "main-area" } }, { "type": "part", "qualifier": { "part": "navigator" }, "properties": { "views": [ { "qualifier": { "view": "navigator" } } ] } } -
workbench-client/popup: Signature of
contextoption in popup config has changed from object literal to string literal. Migrate{context: {viewId: 'view.x'}}to{context: 'view.x'}. -
workbench-client/dialog: Signature of
contextoption in dialog options has changed from object literal to string literal. Migrate{context: {viewId: 'view.x'}}to{context: 'view.x'}. -
workbench-client/messagebox: Signature of
contextoption in messagebox options has changed from object literal to string literal. Migrate{context: {viewId: 'view.x'}}to{context: 'view.x'}. -
workbench-client/dialog:
viewmodality in dialog options was renamed tocontext. -
workbench-client/messagebox:
viewmodality in messagebox options was renamed tocontext. -
workbench-client/popup: Referrer property on popup handle has been marked for removal. No replacement. Instead, add a parameter to the popup capability for the popup opener to pass required referrer information.
20.0.0-beta.8 (@scion/workbench)
20.0.0-beta.8 (2025-09-17)
Bug Fixes
- workbench/view: prevent stale view title after navigation (11f3226)
- workbench: prevent flickering of translated texts on re-layout (e4fdc4b), closes #255
Dependencies
- workbench: SCION Workbench requires
@scion/workbench-clientversion1.0.0-beta.33or later.
1.0.0-beta.33 (@scion/workbench-client)
1.0.0-beta.33 (2025-09-17)
Bug Fixes
20.0.0-beta.7 (@scion/workbench)
20.0.0-beta.7 (2025-09-11)
Features
Dependencies
- workbench: SCION Workbench requires
@scion/workbench-clientversion1.0.0-beta.32or later.
1.0.0-beta.32 (@scion/workbench-client)
1.0.0-beta.32 (2025-09-11)
Features
20.0.0-beta.6 (@scion/workbench)
20.0.0-beta.6 (2025-09-04)
Performance Improvements
Dependencies
- workbench: SCION Workbench requires
@scion/workbench-clientversion1.0.0-beta.31or later.
BREAKING CHANGES
-
workbench/view: Microfrontend views require titles and headings set in the manifest due to lazy loading. Previously, these may have been set in the microfrontends.
To migrate, set the view titles and headings in the manifest. Otherwise, inactive views would not have a title and heading. See changelog of
@scion/workbench-clientfor details. Alternatively, enable compat mode as follows:import {provideWorkbench} from '@scion/workbench'; provideWorkbench({ microfrontendPlatform: { preloadInactiveViews: true, // ... other config skipped }, });
This will continue eager loading microfrontend views and log a deprecation warning, giving micro applications time to migrate to capability-based titles and headings. Note that this flag will be removed in version 22.
1.0.0-beta.31 (@scion/workbench-client)
1.0.0-beta.31 (2025-09-04)
Features
- workbench-client: enable localization of texts in the manifest (69343b3), closes #255
- workbench-client: enable localization of texts in a message box (a1fdf77)
- workbench-client: enable localization of texts in a notification (325388e), closes #401
Performance Improvements
BREAKING CHANGES
-
workbench/view: Microfrontend views require titles and headings set in the manifest due to lazy loading. Previously, these may have been set in the microfrontends.
To migrate, set the view titles and headings in the manifest. Otherwise, inactive views would not have a title and heading. Alternatively, enable compat mode as described below.
Example of setting the title in the manifest:
{ "type": "view", "qualifier": { "entity": "product" }, "properties": { "path": "products/:id", "title": "Product" } }Texts can be localized using a translation key:
{ "type": "view", "qualifier": { "entity": "product" }, "properties": { "path": "products/:id", "title": "%product.title" } }Translation keys start with the percent symbol (
%) and are passed to the text provider for translation, with the percent symbol omitted. Register the text provider viaWorkbenchClient.registerTextProviderin the activator.import {WorkbenchClient} from '@scion/workbench-client'; import {inject} from '@angular/core'; WorkbenchClient.registerTextProvider((key, params) => { return translate(key, params); // `translate` is illustrative and not part of the Workbench API });
Translation keys may include parameters for text interpolation. Interpolation parameters can reference capability parameters and resolvers. See documentation for details: https://workbench-client-api.scion.vercel.app/interfaces/WorkbenchViewCapability.html.
{ "type": "view", "qualifier": { "entity": "product" }, "params": [ {"name": "id", "required": true} ], "properties": { "path": "products/:id", "title": "%product.title;name=:productName", // `:productName` references a resolver "resolve": { "productName": "products/:id/name" // `:id` references a capability parameter } } }Register a message listener in the activator to reply to resolve requests:
import {Beans} from '@scion/toolkit/bean-manager'; import {MessageClient} from '@scion/microfrontend-platform'; Beans.get(MessageClient).onMessage('products/:id/name', request => { const id = request.params!.get('id'); return `Product ${id}`; });
Enable Compat Mode in Host App
For compatibility with micro applications setting view titles and headings in microfrontends, enable the
preloadInactiveViewsflag in the workbench config. This will continue eager loading microfrontend views and log a deprecation warning, giving applications time to migrate to capability-based titles and headings. Note that this flag will be removed in version 22.Example of enabling the compatibility flag:
import {provideWorkbench} from '@scion/workbench'; provideWorkbench({ microfrontendPlatform: { preloadInactiveViews: true, // ... other config skipped }, });
20.0.0-beta.5 (@scion/workbench)
20.0.0-beta.5 (2025-07-25)
Features
- workbench: provide active workbench element (e94ea0c), closes #550
- workbench: highlight focused workbench element (445a3a4)
- workbench/desktop: preserve content of desktop when detached (88f92eb)
- workbench/main-area: preserve content of main area part when detached (5a0acf9)
Dependencies
- workbench: SCION Workbench requires
@scion/workbench-clientversion1.0.0-beta.30or later.