From c630360631f67ac7e05eef99f61391364d6635c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20Adel=C3=B6w?= Date: Mon, 13 Mar 2023 13:36:06 +0100 Subject: [PATCH] catalog-client: getEntitiesByRefs should return undefined MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Fredrik Adelöw --- .changeset/tidy-ties-guess.md | 5 +++++ packages/catalog-client/src/CatalogClient.test.ts | 2 +- packages/catalog-client/src/CatalogClient.ts | 6 ++++-- 3 files changed, 10 insertions(+), 3 deletions(-) create mode 100644 .changeset/tidy-ties-guess.md diff --git a/.changeset/tidy-ties-guess.md b/.changeset/tidy-ties-guess.md new file mode 100644 index 0000000000..63247c3819 --- /dev/null +++ b/.changeset/tidy-ties-guess.md @@ -0,0 +1,5 @@ +--- +'@backstage/catalog-client': patch +--- + +Ensure that `getEntitiesByRefs` returns `undefined` instead of `null` for missing items diff --git a/packages/catalog-client/src/CatalogClient.test.ts b/packages/catalog-client/src/CatalogClient.test.ts index c235ff1592..53bb55b95f 100644 --- a/packages/catalog-client/src/CatalogClient.test.ts +++ b/packages/catalog-client/src/CatalogClient.test.ts @@ -249,7 +249,7 @@ describe('CatalogClient', () => { { token }, ); - expect(response).toEqual({ items: [entity, null] }); + expect(response).toEqual({ items: [entity, undefined] }); }); }); diff --git a/packages/catalog-client/src/CatalogClient.ts b/packages/catalog-client/src/CatalogClient.ts index 4984d394d4..be4ae6289d 100644 --- a/packages/catalog-client/src/CatalogClient.ts +++ b/packages/catalog-client/src/CatalogClient.ts @@ -199,9 +199,11 @@ export class CatalogClient implements CatalogApi { throw await ResponseError.fromResponse(response); } - const { items } = await response.json(); + const { items } = (await response.json()) as { + items: Array; + }; - return { items }; + return { items: items.map(i => i ?? undefined) }; } /**