From 21f88fb27beac51bda0ad8051a262f0216debdb5 Mon Sep 17 00:00:00 2001 From: theo Date: Tue, 7 Dec 2021 14:33:08 -0500 Subject: [PATCH] fix: error message for find operators --- src/transformer.ts | 27 +++------------------------ 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/src/transformer.ts b/src/transformer.ts index 33d9d46..3bf2f97 100644 --- a/src/transformer.ts +++ b/src/transformer.ts @@ -89,29 +89,8 @@ export class JSONEncryptionTransformer implements ValueTransformer { if (!value) { return; } - // Support FindOperator. - // Just support "Equal", "In", "Not", and "IsNull". - // Other operators aren't work correctly, because values are encrypted on the db. - if (value.type === `in`) { - return In((value.value as string[]).map(s => - encryptData( - Buffer.from(s, 'utf-8'), - this.options - ).toString('base64') - )); - } else if (value.type === 'equal') { - return Equal(encryptData( - Buffer.from(value.value as string, 'utf-8'), - this.options - ).toString('base64')); - } else if (value.type === 'not') { - return Not( - this.to(value.child ?? value.value) - ); - } else if (value.type === 'isNull') { - return value - } else { - throw new Error('Only "Equal","In", "Not", and "IsNull" are supported for FindOperator'); - } + + // FindOperators are not supported. + throw new Error('Filter operators are not supported for JSON encrypted fields'); } }