(mails)
| 243 | } |
| 244 | |
| 245 | function buildLuckmailBaselineCursor(mails) { |
| 246 | const latestMail = normalizeLuckmailTokenMails(mails) |
| 247 | .sort((left, right) => { |
| 248 | const leftTimestamp = normalizeTimestamp(left.received_at); |
| 249 | const rightTimestamp = normalizeTimestamp(right.received_at); |
| 250 | if (leftTimestamp !== rightTimestamp) { |
| 251 | return rightTimestamp - leftTimestamp; |
| 252 | } |
| 253 | return String(right.message_id || '').localeCompare(String(left.message_id || '')); |
| 254 | })[0] || null; |
| 255 | |
| 256 | return latestMail ? buildLuckmailMailCursor(latestMail) : null; |
| 257 | } |
| 258 | |
| 259 | function isLuckmailMailNewerThanCursor(mail = {}, cursor = {}) { |
| 260 | const normalizedMail = normalizeLuckmailTokenMail(mail); |
no test coverage detected