From 03b49b66ccaf3dbb7084b0b9cd2183e63242d7fb Mon Sep 17 00:00:00 2001 From: Jinwoo Park Date: Mon, 13 Nov 2023 21:09:41 +0900 Subject: [PATCH] Chore: copy data argument to avoid mutate origin. copy data argument passed to mail.send method to avoid mutate original variable --- packages/mail/src/classes/mail-service.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/mail/src/classes/mail-service.js b/packages/mail/src/classes/mail-service.js index 8f4bb8bb1..111930985 100644 --- a/packages/mail/src/classes/mail-service.js +++ b/packages/mail/src/classes/mail-service.js @@ -180,18 +180,20 @@ class MailService { //Send mail try { + // copy object to avoid mutating original + const args = data; //Append multiple flag to data if not set if (typeof data.isMultiple === 'undefined') { - data.isMultiple = isMultiple; + args.isMultiple = isMultiple; } //Append global substitution wrappers if not set in data if (typeof data.substitutionWrappers === 'undefined') { - data.substitutionWrappers = this.substitutionWrappers; + args.substitutionWrappers = this.substitutionWrappers; } //Create Mail instance from data and get JSON body for request - const mail = Mail.create(data); + const mail = Mail.create(args); const body = mail.toJSON(); //Filters the Mail body to avoid sensitive content leakage