From 0f4a7542e4bc7519e33d12bdea6327069014257d Mon Sep 17 00:00:00 2001 From: Mark <10452169+donmanguno@users.noreply.github.com> Date: Wed, 28 Nov 2018 14:09:06 -0500 Subject: [PATCH] Handle PDD API Deleted SDEs When SDEs are deleted with the PDD API the array is replaced with '*** LP deleted data ***' which was causing an unhandled exception. --- lib/Transformer.js | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/lib/Transformer.js b/lib/Transformer.js index b4fa6d7..f0127bc 100644 --- a/lib/Transformer.js +++ b/lib/Transformer.js @@ -79,22 +79,26 @@ module.exports = { let privateData = msg.body.privateData || {}; let claims = msg.body.claims || {}; if (claims && claims.lp_sdes) { - claims.lp_sdes.forEach(sde => { - sde.acr = msg.body.acr; - sde.iss = claims.iss; - SDEs.push(sde); - }); + if (typeof claims.lp_sdes === 'string') { + SDEs.push({type: 'other', info: claims.lp_sdes}) + } else { + claims.lp_sdes.forEach(sde => { + sde.acr = msg.body.acr; + sde.iss = claims.iss; + SDEs.push(sde); + }); + } } if (authData && authData.lp_sdes) { - authData.lp_sdes.forEach(sde => { - sde.auth = {}; - SDEs.push(sde); - }); + if (typeof authData.lp_sdes === 'string') { + SDEs.push({type: 'other', info: authData.lp_sdes}) + } else { + authData.lp_sdes.forEach(sde => { + sde.auth = {}; + SDEs.push(sde); + }); + } } - let ctmrinfo = { - type: 'ctmrinfo', - info: {} - }; if (privateData.mobileNum) { ctmrinfo.info.imei = privateData.mobileNum; }