Skip to content

Commit 4141ea4

Browse files
authored
error handling (#14332)
1 parent bfc0c95 commit 4141ea4

File tree

2 files changed

+22
-4
lines changed

2 files changed

+22
-4
lines changed

components/gmail/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@pipedream/gmail",
3-
"version": "0.1.8",
3+
"version": "0.1.9",
44
"description": "Pipedream Gmail Components",
55
"main": "gmail.app.mjs",
66
"keywords": [

components/gmail/sources/new-email-received/new-email-received.mjs

+21-3
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export default {
1515
name: "New Email Received",
1616
description: "Emit new event when a new email is received.",
1717
type: "source",
18-
version: "0.1.5",
18+
version: "0.1.6",
1919
dedupe: "unique",
2020
props: {
2121
gmail,
@@ -383,6 +383,20 @@ export default {
383383
)
384384
: history.filter((item) => item.messagesAdded?.length);
385385
},
386+
async getMessageDetails(ids) {
387+
const messages = await Promise.all(ids.map(async (id) => {
388+
try {
389+
const message = await this.gmail.getMessage({
390+
id,
391+
});
392+
return message;
393+
} catch {
394+
console.log(`Could not find message ${id}`);
395+
return null;
396+
}
397+
}));
398+
return messages;
399+
},
386400
},
387401
async run(event) {
388402
if (this.triggerType === "polling") {
@@ -464,7 +478,7 @@ export default {
464478

465479
// Fetch full message details for new messages
466480
const newMessageIds = newMessages?.map(({ id }) => id) || [];
467-
const messageDetails = await this.gmail.getMessages(newMessageIds);
481+
const messageDetails = await this.getMessageDetails(newMessageIds);
468482

469483
if (!messageDetails?.length) {
470484
return;
@@ -477,7 +491,11 @@ export default {
477491
this._setLastProcessedHistoryId(latestHistoryId);
478492
console.log("Updated lastProcessedHistoryId:", latestHistoryId);
479493

480-
messageDetails.forEach((message) => this.emitEvent(message));
494+
messageDetails.forEach((message) => {
495+
if (message?.id) {
496+
this.emitEvent(message);
497+
}
498+
});
481499
}
482500
},
483501
};

0 commit comments

Comments
 (0)