Releases: SchweizerischeBundesbahnen/scion-workbench
1.0.0-beta.3 (@scion/workbench-client)
1.0.0-beta.3 (2021-02-03)
Bug Fixes
- workbench-client/message-box: provide the messagebox capability under the type
messageboxinstead ofmessage-box(ad15ba1) - workbench-client/routing: allow view navigation without specifying navigation extras (4ade8a9)
Features
- workbench/microfrontend: upgrade to @scion/[email protected] (11c2f20)
11.0.0-beta.3 (@scion/workbench)
11.0.0-beta.3 (2021-01-25)
Bug Fixes
- workbench: start microfrontend platform outside the Angular zone (296f6b0)
Code Refactoring
- workbench-client/message-box: consolidate message box API to be consistent with the popup API (4a386c3)
- workbench-client/notification: consolidate notification API to be consistent with the message box and popup API (162a70d)
Features
- workbench-client/message-box: allow messages to be displayed from microfrontends (30aef07)
- workbench-client/notification: allow notifications to be displayed from microfrontends (4757ac3)
- workbench-client/popup: allow providing a microfrontend for display in a workbench popup (bc23e65)
- workbench/popup: allow to open a popup from a screen coordinate and bind it to the lifecycle of a view (864d75c)
- workbench/startup: export workbench startup lifecycle hooks (321e72b)
BREAKING CHANGES
-
workbench-client/notification: The refactoring of the notification introduced a breaking change as properties were renamed:
- To display a notification, pass a
NotificationConfiginstead of aNotificationobject. TheNotificationobject is now used exclusively as the handle for injection into the notification component. It has the following new methods:setTitle,setSeverity,setDuration,setCssClass. - If passing data to the notification component, set it via
componentInputconfig property instead of theinputproperty.
- To display a notification, pass a
-
workbench-client/message-box: The refactoring of the message box introduced a breaking change as properties were renamed:
- To display a message box, pass a
MessageBoxConfiginstead of aMessageBoxobject. TheMessageBoxobject is now used exclusively as the handle for injection into the message box component. It has the following new methods:setTitle,setSeverity,setActions,setCssClass. - If passing data to the message box component, set it via
componentInputconfig property instead of theinputproperty.
- To display a message box, pass a
-
workbench/popup: consolidated the config for opening a popup in preparation for the microfrontend popup integration
To migrate:
- Rename the
positionproperty toalign. This property is used for aligning the popup relative to its anchor. - Remove the closing strategy
onLayoutChangeas binding a popup to a Workbench view is now supported. This strategy existed only as a workaround to close popups when switching between views. - Pass the preferred popup overlay size as
PopupSizeobject literal instead of separate top-level config properties, as follows:PopupConfig.width->PopupConfig.size.widthPopupConfig.height->PopupConfig.size.heightPopupConfig.minWidth->PopupConfig.size.minWidthPopupConfig.maxWidth->PopupConfig.size.maxWidthPopupConfig.minHeight->PopupConfig.size.minHeightPopupConfig.maxHeight->PopupConfig.size.maxHeight
- Rename the
1.0.0-beta.2 (@scion/workbench-client)
1.0.0-beta.2 (2021-01-25)
Bug Fixes
- workbench: start microfrontend platform outside the Angular zone (296f6b0)
Code Refactoring
- workbench-client/message-box: consolidate message box API to be consistent with the popup API (4a386c3)
- workbench-client/notification: consolidate notification API to be consistent with the message box and popup API (162a70d)
Features
- workbench-client/message-box: allow messages to be displayed from microfrontends (30aef07)
- workbench-client/notification: allow notifications to be displayed from microfrontends (4757ac3)
- workbench-client/popup: allow providing a microfrontend for display in a workbench popup (bc23e65)
- workbench/popup: allow to open a popup from a screen coordinate and bind it to the lifecycle of a view (864d75c)
BREAKING CHANGES
-
workbench-client/notification: The refactoring of the notification introduced a breaking change as properties were renamed:
- To display a notification, pass a
NotificationConfiginstead of aNotificationobject. TheNotificationobject is now used exclusively as the handle for injection into the notification component. It has the following new methods:setTitle,setSeverity,setDuration,setCssClass. - If passing data to the notification component, set it via
componentInputconfig property instead of theinputproperty.
- To display a notification, pass a
-
workbench-client/message-box: The refactoring of the message box introduced a breaking change as properties were renamed:
- To display a message box, pass a
MessageBoxConfiginstead of aMessageBoxobject. TheMessageBoxobject is now used exclusively as the handle for injection into the message box component. It has the following new methods:setTitle,setSeverity,setActions,setCssClass. - If passing data to the message box component, set it via
componentInputconfig property instead of theinputproperty.
- To display a message box, pass a
-
workbench/popup: consolidated the config for opening a popup in preparation for the microfrontend popup integration
To migrate:
- Rename the
positionproperty toalign. This property is used for aligning the popup relative to its anchor. - Remove the closing strategy
onLayoutChangeas binding a popup to a Workbench view is now supported. This strategy existed only as a workaround to close popups when switching between views. - Pass the preferred popup overlay size as
PopupSizeobject literal instead of separate top-level config properties, as follows:PopupConfig.width->PopupConfig.size.widthPopupConfig.height->PopupConfig.size.heightPopupConfig.minWidth->PopupConfig.size.minWidthPopupConfig.maxWidth->PopupConfig.size.maxWidthPopupConfig.minHeight->PopupConfig.size.minHeightPopupConfig.maxHeight->PopupConfig.size.maxHeight
- Rename the
11.0.0-beta.2 (@scion/workbench)
11.0.0-beta.2 (2020-12-22)
Features
- workbench-client: provide core workbench API to microfrontends (55fabc3)
BREAKING CHANGES
-
workbench-client: Workbench Microfrontend support introduced the following breaking changes:
- The workbench component is no longer positioned absolutely but in the normal document flow. To migrate, add the workbench component to your CSS layout and make sure it fills the remaining space vertically and horizontally.
- Renamed the workbench config from
WorkbenchConfigtoWorkbenchModuleConfig. - Removed the e2e-testing related CSS classes
e2e-activeande2e-dirty; to migrate, replace them withactiveanddirty. - Renamed flag to set popup closing strategy from
onGridLayoutChangetoonLayoutChange
1.0.0-beta.1 (@scion/workbench-client)
1.0.0-beta.1 (2020-12-22)
Features
- workbench-client: add project skeleton for @scion/workbench-client (59895f4)
- workbench-client: provide core workbench API to microfrontends (55fabc3)
BREAKING CHANGES
-
workbench-client: Workbench Microfrontend support introduced the following breaking changes:
- The workbench component is no longer positioned absolutely but in the normal document flow. To migrate, add the workbench component to your CSS layout and make sure it fills the remaining space vertically and horizontally.
- Renamed the workbench config from
WorkbenchConfigtoWorkbenchModuleConfig. - Removed the e2e-testing related CSS classes
e2e-activeande2e-dirty; to migrate, replace them withactiveanddirty. - Renamed flag to set popup closing strategy from
onGridLayoutChangetoonLayoutChange
11.0.0-beta.1 (@scion/workbench)
11.0.0-beta.1 (2020-11-17)
Bug Fixes
- workbench: remove flickering when dropping views (46a9c4d)
- workbench: wait to navigate until other navigations complete (5448260)
chore
- application-platform: delete SCION Workbench Application Platform (3468a43), closes #232
- dimension: delete
@scion/dimensionmodule (7c73203) - viewport: delete
@scion/viewportmodule (809b028) - workbench: update @scion/workbench to Angular 11 (5d45ce3), closes #234
Code Refactoring
- workbench: refactor the workbench layout as prerequisite for complex layouts with fixed parts (84b764c)
BREAKING CHANGES
-
workbench: Added support for Angular 11.
To migrate:
Migrate your app to Angular 11 as following:- Run
ng update @angular/cli @angular/core @angular/cdk. - Refer to the Angular Update Guide for detailed instructions on how to update Angular: https://update.angular.io/
- Run
-
dimension: The dimension was moved from
@scion/dimensionto@scion/toolkitNPM module.SCION Toolkit is a collection of UI components and utilities. The toolkit is published as single NPM library with a separate entry point per tool, allowing for tree shaking away not used tools.
Refer to https://github.com/SchweizerischeBundesbahnen/scion-toolkit/blob/master/docs/site/tools/dimension.md for more information about dimension directive.
Refer to https://github.com/SchweizerischeBundesbahnen/scion-toolkit/blob/master/docs/site/tools/observable.md for more information about replacement ofDimensionService.To migrate:
- Uninstall NPM module
@scion/dimension - Install NPM module
@scion/toolkit - Replace ES2015 imports
@scion/dimensionwith@scion/toolkit/dimension - Replace usage of
DimensionServicewithfromDimension$Observable for observing the dimension of a DOM element.
- Uninstall NPM module
-
viewport: The viewport was moved from
@scion/viewportto@scion/toolkitNPM module.SCION Toolkit is a collection of UI components and utilities. The toolkit is published as single NPM library with a separate entry point per tool, allowing for tree shaking away not used tools.
Refer to https://github.com/SchweizerischeBundesbahnen/scion-toolkit/blob/master/docs/site/tools/viewport.md for more information.To migrate:
- Uninstall NPM module
@scion/viewport - Install NPM module
@scion/toolkit - Replace ES2015 imports
@scion/viewportwith@scion/toolkit/viewport
- Uninstall NPM module
-
application-platform: The development of the SCION Application Platform was discontinued in favor of the new SCION Microfrontend Platform. SCION Microfrontend Platform is extremely lightweight and does not depend on SCION Workbench and Angular. Microfrontend support for the SCION Workbench will be back soon. We are working on the integration of the new SCION Microfrontend Platform into the workbench to enable a seamless integration of microfrontends as workbench views.
We have deleted the SCION application platform from our Git repository and deprecated respective NPM modules. This project is discontinued and will no longer be maintained. Its documentation is still online. The following NPM modules are deprecated:
@scion/workbench-application-platform,@scion/workbench-application-platform.api,@scion/workbench-application.core,@scion/workbench-application. angular,@scion/mouse-dispatcher,@scion/dimension(moved to@scion/toolkit),@scion/viewport(moved to@scion/toolkit).If you still need updates for new Angular versions, please let us know and submit a GitHub issue. Alternatively, micro applications can use the TypeScript module
@scion/workbench-application.coreinstead of@scion/workbench-application.angular. We plan to release the new microfrontend support for the SCION Workbench by the end of 2020 so that you can migrate to Angular 11. Detailed migration instructions for upgrading to the new workbench microfrontend support will follow after its release.Refer to https://github.com/SchweizerischeBundesbahnen/scion-microfrontend-platform for more information about SCION Microfrontend Platform.
-
workbench: The refactoring of the workbench layout introduced a breaking change as properties were renamed, dependencies added or removed, and the internal DOM structure changed.
To migrate:
- Update the usage of following properties:
- Property
selfViewRefofWbNavigationExtraswas renamed toselfViewId - Property
blankViewPartRefofWbNavigationExtraswas renamed toblankPartId - Property
viewRefofWorkbenchViewwas renamed toviewId - Property
viewPartofWorkbenchViewwas renamed topart - Property
viewPartRefofWorkbenchViewPartwas renamed topartId - Property
activeViewRef$ofWorkbenchViewPartwas renamed toactiveViewId$ - Property
activeViewRefofWorkbenchViewPartwas renamed toactiveViewId - Property
viewRefs$ofWorkbenchViewPartwas renamed toviewIds$ - Property
viewRefsofWorkbenchViewPartwas renamed toviewIds - Property
viewRefofWorkbenchViewPartActionwas renamed toviewId
- Property
- Add the dependency
@scion/[email protected]as required by the workbench - Remove the dependencies
@scion/dimensionand@scion/viewportas tools are now used from@scion/toolkit.
Refer to https://github.com/SchweizerischeBundesbahnen/scion-toolkit for more information about its installation and usage. - If you rely on the workbench-internal DOM structure to style your app, change CSS selectors as following:
- Attribute
viewpartrefof<wb-view-part>was changed todata-partid - Attribute
viewrefof<wb-view>was changed todata-viewid - Attribute
viewrefof<wb-view-tab>was changed todata-viewid - DOM element
<wb-view-part-grid>was renamed to<wb-parts-layout> - DOM element
<wb-view-part-sash-box>was renamed to<wb-tree-node> - Added
<sci-sashbox>as child to<wb-tree-node>element
- Attribute
- The serialized representation of the layout in the URL changed. For that reason, we renamed the query parameter
viewgridtopartsso that the app does not error when loading it from a bookmark into the browser.
- Update the usage of following properties:
0.0.0-beta.35 (@scion/workbench)
0.0.0-beta.35 (2020-07-17)
chore
BREAKING CHANGES
-
Added support for Angular 10.
To migrate:
- run
ng update @angular/cli @angular/core @angular/cdkto migrate your app to Angular 10. For more information, see https://angular.io/guide/updating-to-version-10.
- run
0.0.0-beta.34 (@scion/workbench)
0.0.0-beta.34 (2020-07-02)
Bug Fixes
0.0.0-beta.33 (@scion/workbench)
0.0.0-beta.33 (2020-02-21)
Features
- chore: add support for angular 9, drop support for angular < 9 #197