diff --git a/packages/app/package.json b/packages/app/package.json index a9e8e8ddc8..5dbb326538 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -35,6 +35,7 @@ "@backstage/plugin-newrelic": "^0.3.10", "@backstage/plugin-org": "^0.3.31", "@backstage/plugin-pagerduty": "0.3.19", + "@backstage/plugin-permission-react": "^0.1.1", "@backstage/plugin-rollbar": "^0.3.20", "@backstage/plugin-scaffolder": "^0.11.14", "@backstage/plugin-search": "^0.5.1", diff --git a/packages/app/src/apis.ts b/packages/app/src/apis.ts index d587a88402..f67a7b2649 100644 --- a/packages/app/src/apis.ts +++ b/packages/app/src/apis.ts @@ -31,9 +31,15 @@ import { AnyApiFactory, configApiRef, createApiFactory, + discoveryApiRef, errorApiRef, githubAuthApiRef, + identityApiRef, } from '@backstage/core-plugin-api'; +import { + permissionApiRef, + IdentityPermissionApi, +} from '@backstage/plugin-permission-react'; export const apis: AnyApiFactory[] = [ createApiFactory({ @@ -64,4 +70,15 @@ export const apis: AnyApiFactory[] = [ }), createApiFactory(costInsightsApiRef, new ExampleCostInsightsClient()), + + createApiFactory({ + api: permissionApiRef, + deps: { + discoveryApi: discoveryApiRef, + identityApi: identityApiRef, + configApi: configApiRef, + }, + factory: ({ configApi, discoveryApi, identityApi }) => + IdentityPermissionApi.create({ configApi, discoveryApi, identityApi }), + }), ];