UNPKG

762 BJavaScriptView Raw
1const base64 = require('js-base64').Base64
2
3const formatMessage = message => {
4 let paragraphs
5 let headers = {}
6 const { payload } = message
7 if (payload) {
8 const { parts } = payload
9 if (parts && parts.length && parts[0].body) {
10 paragraphs = base64.decode(parts[0].body.data)
11 }
12 if (payload.headers) {
13 headers = payload.headers.reduce((acc, { name, value }) => {
14 acc[name.toLowerCase()] = value
15 return acc
16 }, {})
17 }
18 }
19 const {
20 id,
21 historyId,
22 snippet,
23 internalDate,
24 labelIds
25 } = message
26 return {
27 headers,
28 paragraphs,
29 id,
30 historyId,
31 snippet,
32 internalDate,
33 labelIds
34 }
35}
36
37const format = messages => messages.map(formatMessage)
38
39module.exports = format