From d394a3d14a6343941ded086118409c2195d09aa4 Mon Sep 17 00:00:00 2001 From: Bernd Schoolmann Date: Thu, 11 Dec 2025 14:06:55 +0100 Subject: [PATCH 1/2] Update function signature --- libs/common/src/platform/models/domain/domain-base.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libs/common/src/platform/models/domain/domain-base.ts b/libs/common/src/platform/models/domain/domain-base.ts index 04c7484c81e..adb761f9161 100644 --- a/libs/common/src/platform/models/domain/domain-base.ts +++ b/libs/common/src/platform/models/domain/domain-base.ts @@ -76,16 +76,17 @@ export default class Domain { viewModel: ViewEncryptableKeys, props: EncryptableKeys[], orgId: null, - key: SymmetricCryptoKey | null, + key: SymmetricCryptoKey, objectContext: string = "No Domain Context", ): Promise { const encryptService = Utils.getContainerService().getEncryptService(); for (const prop of props) { if (domain[prop] == null) { + viewModel[prop] = null; continue; } try { - viewModel[prop] = await encryptService.decryptString(domain[prop]!, key!); + viewModel[prop] = await encryptService.decryptString(domain[prop]!, key); } catch (e) { throw new Error( `Failed to decrypt property '${String( From a707ff8c97d8121379de869c1f2d645654d3f6c6 Mon Sep 17 00:00:00 2001 From: Bernd Schoolmann Date: Thu, 11 Dec 2025 14:10:39 +0100 Subject: [PATCH 2/2] Undo breaking change (throw on decrypt --- libs/common/src/platform/models/domain/domain-base.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libs/common/src/platform/models/domain/domain-base.ts b/libs/common/src/platform/models/domain/domain-base.ts index adb761f9161..dd1f0ce6710 100644 --- a/libs/common/src/platform/models/domain/domain-base.ts +++ b/libs/common/src/platform/models/domain/domain-base.ts @@ -1,6 +1,6 @@ import { ConditionalExcept, ConditionalKeys } from "type-fest"; -import { EncString } from "../../../key-management/crypto/models/enc-string"; +import { DECRYPT_ERROR, EncString } from "../../../key-management/crypto/models/enc-string"; import { View } from "../../../models/view/view"; import { Utils } from "../../misc/utils"; @@ -88,11 +88,13 @@ export default class Domain { try { viewModel[prop] = await encryptService.decryptString(domain[prop]!, key); } catch (e) { - throw new Error( + // eslint-disable-next-line no-console + console.error( `Failed to decrypt property '${String( prop, )}' of domain. Context: ${objectContext}. Error: ${(e as Error).message}`, ); + viewModel[prop] = DECRYPT_ERROR; } } return viewModel as V;