diff --git a/CHANGELOG_WORKBENCH_CLIENT.md b/CHANGELOG_WORKBENCH_CLIENT.md index 2d951d29c..6f859dea0 100644 --- a/CHANGELOG_WORKBENCH_CLIENT.md +++ b/CHANGELOG_WORKBENCH_CLIENT.md @@ -1,3 +1,61 @@ +# [1.0.0-beta.22](https://github.com/SchweizerischeBundesbahnen/scion-workbench/compare/workbench-client-1.0.0-beta.21...workbench-client-1.0.0-beta.22) (2024-05-07) + + +### Bug Fixes + +* **workbench-client/view:** fix issues to prevent a view from closing ([a280af9](https://github.com/SchweizerischeBundesbahnen/scion-workbench/commit/a280af9011cb87bc97e4f29a78fbe3b54d05efb3)), closes [#27](https://github.com/SchweizerischeBundesbahnen/scion-workbench/issues/27) [#344](https://github.com/SchweizerischeBundesbahnen/scion-workbench/issues/344) + + +### Refactor + +* **workbench-client/router:** remove `blank` prefix from navigation extras ([446fa51](https://github.com/SchweizerischeBundesbahnen/scion-workbench/commit/446fa51c24f1e616a1e4ebd80f42cfc9300b6970)) + + +### BREAKING CHANGES + +* **workbench-client/view:** Interface and method for preventing closing of a view have changed. + + To migrate, implement the `CanClose` instead of the `ViewClosingListener ` interface. + + **Before migration:** + ```ts + class YourComponent implements ViewClosingListener { + + constructor() { + Beans.get(WorkbenchView).addClosingListener(this); + } + + public async onClosing(event: ViewClosingEvent): Promise { + // invoke 'event.preventDefault()' to prevent closing the view. + } + } + ``` + + **After migration:** + + ```ts + class YourComponent implements CanClose { + + constructor() { + Beans.get(WorkbenchView).addCanClose(this); + } + + public async canClose(): Promise { + // return `true` to close the view, otherwise `false`. + } + } + ``` + +* **workbench-client/router:** Property `blankInsertionIndex` in `WorkbenchNavigationExtras` has been renamed. + + Use `WorkbenchNavigationExtras.position` instead of `WorkbenchNavigationExtras.blankInsertionIndex`. + +* **workbench-client/view:** Changed type of view id from `string` to `ViewId`. + + If storing the view id in a variable, change its type from `string` to `ViewId`. + + + # [1.0.0-beta.21](https://github.com/SchweizerischeBundesbahnen/scion-workbench/compare/workbench-client-1.0.0-beta.20...workbench-client-1.0.0-beta.21) (2024-03-29) diff --git a/CHANGELOG_WORKBENCH_CLIENT_LATEST.md b/CHANGELOG_WORKBENCH_CLIENT_LATEST.md index 911f935ae..57bd10f88 100644 --- a/CHANGELOG_WORKBENCH_CLIENT_LATEST.md +++ b/CHANGELOG_WORKBENCH_CLIENT_LATEST.md @@ -1,21 +1,58 @@ -# [1.0.0-beta.21](https://github.com/SchweizerischeBundesbahnen/scion-workbench/compare/workbench-client-1.0.0-beta.20...workbench-client-1.0.0-beta.21) (2024-03-29) +# [1.0.0-beta.22](https://github.com/SchweizerischeBundesbahnen/scion-workbench/compare/workbench-client-1.0.0-beta.21...workbench-client-1.0.0-beta.22) (2024-05-07) ### Bug Fixes -* **workbench-client/view:** remove qualifier from microfrontend URL and params ([57cfd9e](https://github.com/SchweizerischeBundesbahnen/scion-workbench/commit/57cfd9e4d4090158393086b928a11aa69c38db2f)) +* **workbench-client/view:** fix issues to prevent a view from closing ([a280af9](https://github.com/SchweizerischeBundesbahnen/scion-workbench/commit/a280af9011cb87bc97e4f29a78fbe3b54d05efb3)), closes [#27](https://github.com/SchweizerischeBundesbahnen/scion-workbench/issues/27) [#344](https://github.com/SchweizerischeBundesbahnen/scion-workbench/issues/344) -### Features +### Refactor -* **workbench-client/dialog:** enable microfrontend display in a dialog ([11d762b](https://github.com/SchweizerischeBundesbahnen/scion-workbench/commit/11d762bb40539fdbdc263da8faf2177423a68d43)) +* **workbench-client/router:** remove `blank` prefix from navigation extras ([446fa51](https://github.com/SchweizerischeBundesbahnen/scion-workbench/commit/446fa51c24f1e616a1e4ebd80f42cfc9300b6970)) ### BREAKING CHANGES -* **workbench-client/view:** Removing qualifier from params has introduced a breaking change. - - The view qualifier has been removed from the view parameters as it is static. +* **workbench-client/view:** Interface and method for preventing closing of a view have changed. + + To migrate, implement the `CanClose` instead of the `ViewClosingListener ` interface. + + **Before migration:** + ```ts + class YourComponent implements ViewClosingListener { + + constructor() { + Beans.get(WorkbenchView).addClosingListener(this); + } + + public async onClosing(event: ViewClosingEvent): Promise { + // invoke 'event.preventDefault()' to prevent closing the view. + } + } + ``` + + **After migration:** + + ```ts + class YourComponent implements CanClose { + + constructor() { + Beans.get(WorkbenchView).addCanClose(this); + } + + public async canClose(): Promise { + // return `true` to close the view, otherwise `false`. + } + } + ``` + +* **workbench-client/router:** Property `blankInsertionIndex` in `WorkbenchNavigationExtras` has been renamed. + + Use `WorkbenchNavigationExtras.position` instead of `WorkbenchNavigationExtras.blankInsertionIndex`. + +* **workbench-client/view:** Changed type of view id from `string` to `ViewId`. + + If storing the view id in a variable, change its type from `string` to `ViewId`. diff --git a/docs/site/changelog-workbench-client/changelog.md b/docs/site/changelog-workbench-client/changelog.md index 1941aa8e8..c21b54124 100644 --- a/docs/site/changelog-workbench-client/changelog.md +++ b/docs/site/changelog-workbench-client/changelog.md @@ -6,6 +6,64 @@ ## [Changelog][menu-changelog] > Workbench Client (@scion/workbench-client) +# [1.0.0-beta.22](https://github.com/SchweizerischeBundesbahnen/scion-workbench/compare/workbench-client-1.0.0-beta.21...workbench-client-1.0.0-beta.22) (2024-05-07) + + +### Bug Fixes + +* **workbench-client/view:** fix issues to prevent a view from closing ([a280af9](https://github.com/SchweizerischeBundesbahnen/scion-workbench/commit/a280af9011cb87bc97e4f29a78fbe3b54d05efb3)), closes [#27](https://github.com/SchweizerischeBundesbahnen/scion-workbench/issues/27) [#344](https://github.com/SchweizerischeBundesbahnen/scion-workbench/issues/344) + + +### Refactor + +* **workbench-client/router:** remove `blank` prefix from navigation extras ([446fa51](https://github.com/SchweizerischeBundesbahnen/scion-workbench/commit/446fa51c24f1e616a1e4ebd80f42cfc9300b6970)) + + +### BREAKING CHANGES + +* **workbench-client/view:** Interface and method for preventing closing of a view have changed. + + To migrate, implement the `CanClose` instead of the `ViewClosingListener ` interface. + + **Before migration:** + ```ts + class YourComponent implements ViewClosingListener { + + constructor() { + Beans.get(WorkbenchView).addClosingListener(this); + } + + public async onClosing(event: ViewClosingEvent): Promise { + // invoke 'event.preventDefault()' to prevent closing the view. + } + } + ``` + + **After migration:** + + ```ts + class YourComponent implements CanClose { + + constructor() { + Beans.get(WorkbenchView).addCanClose(this); + } + + public async canClose(): Promise { + // return `true` to close the view, otherwise `false`. + } + } + ``` + +* **workbench-client/router:** Property `blankInsertionIndex` in `WorkbenchNavigationExtras` has been renamed. + + Use `WorkbenchNavigationExtras.position` instead of `WorkbenchNavigationExtras.blankInsertionIndex`. + +* **workbench-client/view:** Changed type of view id from `string` to `ViewId`. + + If storing the view id in a variable, change its type from `string` to `ViewId`. + + + # [1.0.0-beta.21](https://github.com/SchweizerischeBundesbahnen/scion-workbench/compare/workbench-client-1.0.0-beta.20...workbench-client-1.0.0-beta.21) (2024-03-29) diff --git a/projects/scion/workbench-client/package.json b/projects/scion/workbench-client/package.json index 6e5628aa2..3bcc9ef94 100644 --- a/projects/scion/workbench-client/package.json +++ b/projects/scion/workbench-client/package.json @@ -1,6 +1,6 @@ { "name": "@scion/workbench-client", - "version": "1.0.0-beta.21", + "version": "1.0.0-beta.22", "description": "SCION Workbench Client provides core API for a web app to interact with SCION Workbench and other microfrontends. It is a pure TypeScript library based on the framework-agnostic `@scion/microfrontend-platform` library and can be used with any web stack.", "license": "EPL-2.0", "private": false,