mirror of
https://github.com/Foundry376/Mailspring.git
synced 2025-03-01 02:25:45 +08:00
Added MarkThreadAsUnread task
This commit is contained in:
parent
d3fd671ff6
commit
ef11508b38
3 changed files with 28 additions and 0 deletions
|
@ -184,6 +184,13 @@ module.exports = (server) => {
|
|||
threadId: request.params.id,
|
||||
},
|
||||
})
|
||||
} else if (payload.unread === true) {
|
||||
createSyncbackRequest(request, reply, {
|
||||
type: "MarkThreadAsUnread",
|
||||
props: {
|
||||
threadId: request.params.id,
|
||||
},
|
||||
})
|
||||
}
|
||||
},
|
||||
});
|
||||
|
|
|
@ -10,6 +10,8 @@ class SyncbackTaskFactory {
|
|||
Task = require('./syncback_tasks/move-to-folder.imap'); break;
|
||||
case "MarkThreadAsRead":
|
||||
Task = require('./syncback_tasks/mark-thread-as-read.imap'); break;
|
||||
case "MarkThreadAsUnread":
|
||||
Task = require('./syncback_tasks/mark-thread-as-unread.imap'); break;
|
||||
default:
|
||||
throw new Error(`Invalid Task Type: ${syncbackRequest.type}`)
|
||||
}
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
const SyncbackTask = require('./syncback-task')
|
||||
const TaskHelpers = require('./task-helpers')
|
||||
|
||||
class MarkThreadAsUnread extends SyncbackTask {
|
||||
description() {
|
||||
return `MarkThreadAsUnread`;
|
||||
}
|
||||
|
||||
run(db, imap) {
|
||||
const threadId = this.syncbackRequestObject().props.threadId
|
||||
|
||||
const eachMsg = ({message, box}) => {
|
||||
return box.delFlags(message.categoryUID, 'SEEN')
|
||||
}
|
||||
|
||||
return TaskHelpers.forEachMessageInThread({threadId, db, imap, callback: eachMsg})
|
||||
}
|
||||
}
|
||||
module.exports = MarkThreadAsUnread;
|
Loading…
Reference in a new issue