MCPcopy Create free account
hub / github.com/SparkPost/node-sparkpost / formatPayload

Function formatPayload

lib/transmissions.js:85–114  ·  view source on GitHub ↗
(originalTransmission)

Source from the content-addressed store, hash-verified

83};
84
85function formatPayload(originalTransmission) {
86 const transmission = _.cloneDeep(originalTransmission);
87
88 // don't format the payload if we are not given an array of recipients
89 if (!_.isArray(transmission.recipients)) {
90 return transmission;
91 }
92
93 // format all the original recipients to be in the object format
94 transmission.recipients = _.map(transmission.recipients, (recipient) => {
95 recipient.address = addressToObject(recipient.address);
96
97 return recipient;
98 });
99
100 // add the CC headers
101 if (_.isArray(transmission.cc) && transmission.cc.length > 0) {
102 _.set(transmission, 'content.headers.CC', generateCCHeader(transmission));
103 }
104
105 const headerTo = generateHeaderTo(transmission.recipients);
106
107 transmission.recipients = addListToRecipients(transmission, 'cc', headerTo);
108 transmission.recipients = addListToRecipients(transmission, 'bcc', headerTo);
109
110 delete transmission.cc;
111 delete transmission.bcc;
112
113 return transmission;
114}
115
116function addListToRecipients(transmission, listName, headerTo) {
117 if (!_.isArray(transmission[listName])) {

Callers 1

transmissions.jsFile · 0.85

Calls 4

addressToObjectFunction · 0.85
generateCCHeaderFunction · 0.85
generateHeaderToFunction · 0.85
addListToRecipientsFunction · 0.85

Tested by

no test coverage detected