From 3e4768c106154f9f69d101c87428005cd982de2b Mon Sep 17 00:00:00 2001 From: Faruk AYDIN Date: Sun, 28 Nov 2021 22:43:47 +0100 Subject: [PATCH] chore: Do not try to encrypt or decrypt if data field is empty --- packages/backend/src/models/connection.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/backend/src/models/connection.ts b/packages/backend/src/models/connection.ts index f4a0f5a2..a3081f9a 100644 --- a/packages/backend/src/models/connection.ts +++ b/packages/backend/src/models/connection.ts @@ -39,13 +39,19 @@ class Connection extends Base { }) encryptData() { + if(!this.eligibleForEncryption()) return; this.data = AES.encrypt(JSON.stringify(this.data), appConfig.encryptionKey).toString(); } decryptData() { + if(!this.eligibleForEncryption()) return; this.data = JSON.parse(AES.decrypt(this.data, appConfig.encryptionKey).toString(enc.Utf8)); } + eligibleForEncryption() { + return this.data ? true : false + } + // TODO: Make another abstraction like beforeSave instead of using // beforeInsert and beforeUpdate separately for the same operation. async $beforeInsert(queryContext: QueryContext) {