chore(sentry,welcome): Refactor route registration to remove deprecating code (#3493)
* Refactor route registration * Reference route RFC * Refactor example code to remove deprecated call * Add changeset * Return feature flag
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
---
|
||||
'@backstage/plugin-sentry': patch
|
||||
'@backstage/plugin-welcome': patch
|
||||
---
|
||||
|
||||
Refactor route registration to remove deprecating code
|
||||
@@ -4,7 +4,7 @@ title: createPlugin
|
||||
description: Documentation on createPlugin
|
||||
---
|
||||
|
||||
Taking a plugin config as argument and returns a new plugin.
|
||||
Takes a plugin config as an argument and returns a new plugin.
|
||||
|
||||
## Plugin Config
|
||||
|
||||
@@ -28,18 +28,22 @@ type PluginHooks = {
|
||||
|
||||
### Creating a basic plugin
|
||||
|
||||
Showcasing adding multiple routes, a feature flag and a redirect.
|
||||
Showcasing adding a route and a feature flag.
|
||||
|
||||
```jsx
|
||||
import { createPlugin } from '@backstage/core';
|
||||
import { createPlugin, createRouteRef } from '@backstage/core';
|
||||
import ExampleComponent from './components/ExampleComponent';
|
||||
|
||||
export const rootRouteRef = createRouteRef({
|
||||
path: '/new-plugin',
|
||||
title: 'New Plugin',
|
||||
});
|
||||
|
||||
export default createPlugin({
|
||||
id: 'new-plugin',
|
||||
register({ router, featureFlags }) {
|
||||
router.addRoute(rootRouteRef, ExampleComponent);
|
||||
featureFlags.register('enable-example-component');
|
||||
|
||||
router.registerRoute('/new-plugin', ExampleComponent);
|
||||
},
|
||||
});
|
||||
```
|
||||
|
||||
@@ -92,6 +92,7 @@ export type RouterHooks = {
|
||||
|
||||
/**
|
||||
* @deprecated See the `addRoute` method
|
||||
* @see https://github.com/backstage/backstage/issues/418
|
||||
*/
|
||||
registerRoute(
|
||||
path: RoutePath,
|
||||
|
||||
@@ -14,12 +14,17 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { createPlugin } from '@backstage/core';
|
||||
import { createPlugin, createRouteRef } from '@backstage/core';
|
||||
import SentryPluginPage from './components/SentryPluginPage';
|
||||
|
||||
export const rootRouteRef = createRouteRef({
|
||||
path: '/sentry',
|
||||
title: 'Sentry',
|
||||
});
|
||||
|
||||
export const plugin = createPlugin({
|
||||
id: 'sentry',
|
||||
register({ router }) {
|
||||
router.registerRoute('/sentry', SentryPluginPage);
|
||||
router.addRoute(rootRouteRef, SentryPluginPage);
|
||||
},
|
||||
});
|
||||
|
||||
@@ -14,14 +14,18 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { createPlugin } from '@backstage/core';
|
||||
import { createPlugin, createRouteRef } from '@backstage/core';
|
||||
import WelcomePage from './components/WelcomePage';
|
||||
|
||||
export const rootRouteRef = createRouteRef({
|
||||
path: '/welcome',
|
||||
title: 'Welcome',
|
||||
});
|
||||
|
||||
export const plugin = createPlugin({
|
||||
id: 'welcome',
|
||||
register({ router, featureFlags }) {
|
||||
router.registerRoute('/welcome', WelcomePage);
|
||||
|
||||
router.addRoute(rootRouteRef, WelcomePage);
|
||||
featureFlags.register('enable-welcome-box');
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user