Mailspring/packages/nylas-api/route-helpers.js

37 lines
1 KiB
JavaScript
Raw Normal View History

const Serialization = require('./serialization');
const {PubsubConnector, MessageTypes} = require('nylas-core')
module.exports = {
createSyncbackRequest: function createSyncbackRequest(request, reply, syncRequestArgs) {
request.getAccountDatabase().then((db) => {
db.SyncbackRequest.create(syncRequestArgs).then((syncbackRequest) => {
PubsubConnector.notifyAccount(db.accountId, {
type: MessageTypes.SYNCBACK_REQUESTED,
data: syncbackRequest.id,
});
reply(Serialization.jsonStringify(syncbackRequest))
})
})
},
2016-07-01 06:23:34 +08:00
findFolderOrLabel: function findFolderOrLabel({Folder, Label}, str) {
return Promise.props({
folder: Folder.find({
where: { $or: [
{ id: str },
{ name: str },
{ role: str },
]},
}),
label: Label.find({
where: { $or: [
{ id: str },
{ name: str },
{ role: str },
]},
}),
}).then(({folder, label}) =>
folder || label || null
)
},
}