From 47f7cd25058f4187a7d8e12f2a275efc2a9af72c Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Sat, 14 Mar 2026 12:28:57 +0100 Subject: [PATCH] permission-react: keep batching internal Revert the public multi-request authorize overload and rely on internal batching instead. Frontend app predicate checks now make separate authorize calls that still coalesce within the same tick. Signed-off-by: Patrik Oldsberg Made-with: Cursor --- .changeset/permission-api-batching.md | 2 +- .../permission-react/src/apis/IdentityPermissionApi.ts | 10 ++-------- plugins/permission-react/src/apis/PermissionApi.ts | 3 --- 3 files changed, 3 insertions(+), 12 deletions(-) diff --git a/.changeset/permission-api-batching.md b/.changeset/permission-api-batching.md index 857422665d..187eb2a3bc 100644 --- a/.changeset/permission-api-batching.md +++ b/.changeset/permission-api-batching.md @@ -2,4 +2,4 @@ '@backstage/plugin-permission-react': patch --- -The `PermissionApi.authorize()` method now accepts arrays of permission requests, and permission checks made in the same tick are batched into a single call to the permission backend. +Permission checks made in the same tick are now batched into a single call to the permission backend. diff --git a/plugins/permission-react/src/apis/IdentityPermissionApi.ts b/plugins/permission-react/src/apis/IdentityPermissionApi.ts index 6e848bd778..4a8edefd84 100644 --- a/plugins/permission-react/src/apis/IdentityPermissionApi.ts +++ b/plugins/permission-react/src/apis/IdentityPermissionApi.ts @@ -62,14 +62,8 @@ export class IdentityPermissionApi implements PermissionApi { request: AuthorizePermissionRequest, ): Promise; async authorize( - requests: AuthorizePermissionRequest[], - ): Promise; - async authorize( - request: AuthorizePermissionRequest | AuthorizePermissionRequest[], - ): Promise { - if (Array.isArray(request)) { - return Promise.all(request.map(r => this.loader.load(r))); - } + request: AuthorizePermissionRequest, + ): Promise { return this.loader.load(request); } } diff --git a/plugins/permission-react/src/apis/PermissionApi.ts b/plugins/permission-react/src/apis/PermissionApi.ts index 5f538a068d..d3a37421ef 100644 --- a/plugins/permission-react/src/apis/PermissionApi.ts +++ b/plugins/permission-react/src/apis/PermissionApi.ts @@ -30,9 +30,6 @@ export type PermissionApi = { authorize( request: EvaluatePermissionRequest, ): Promise; - authorize( - requests: EvaluatePermissionRequest[], - ): Promise; }; /**