From ae870a32b4e0742be961a456dcf576a789ae838b Mon Sep 17 00:00:00 2001 From: Sam Lee-Lindsay Date: Sun, 21 Apr 2024 18:26:37 +1000 Subject: [PATCH] Fix(SCIMMY.Messages.BulkRequest): uncaught promise rejection in failed bulk operations --- src/lib/messages/bulkrequest.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/messages/bulkrequest.js b/src/lib/messages/bulkrequest.js index c743527..51f0d31 100644 --- a/src/lib/messages/bulkrequest.js +++ b/src/lib/messages/bulkrequest.js @@ -220,7 +220,7 @@ export class BulkRequest { } // Get ready - const resource = new TargetResource(data?.id ?? id); + const resource = new TargetResource(method.toUpperCase() === "POST" ? undefined : id ?? data?.id); let value; // Do the thing! @@ -257,7 +257,10 @@ export class BulkRequest { errorCount++; // Also reject the pending bulkId promise as no resource ID can exist - if (bulkId && bulkIds.has(bulkId)) bulkIds.get(bulkId).reject(error); + if (bulkId && bulkIds.has(bulkId)) { + bulkIds.get(bulkId).reject(error); + bulkIds.get(bulkId).catch(() => {}); + } } return result;