React = require 'react' {Actions, CategoryStore, TaskFactory, FocusedPerspectiveStore} = require 'nylas-exports' class ThreadArchiveQuickAction extends React.Component @displayName: 'ThreadArchiveQuickAction' @propTypes: thread: React.PropTypes.object render: => mailboxPerspective = FocusedPerspectiveStore.current() archive = null if mailboxPerspective?.canArchiveThreads() archive =
return archive shouldComponentUpdate: (newProps, newState) -> newProps.thread.id isnt @props?.thread.id _onArchive: (event) => task = TaskFactory.taskForArchiving threads: [@props.thread] fromView: FocusedPerspectiveStore.current() Actions.queueTask(task) # Don't trigger the thread row click event.stopPropagation() class ThreadTrashQuickAction extends React.Component @displayName: 'ThreadTrashQuickAction' @propTypes: thread: React.PropTypes.object render: => mailboxPerspective = FocusedPerspectiveStore.current() trash = null if mailboxPerspective?.canTrashThreads() trash =
return trash shouldComponentUpdate: (newProps, newState) -> newProps.thread.id isnt @props?.thread.id _onRemove: (event) => task = TaskFactory.taskForMovingToTrash threads: [@props.thread] fromView: FocusedPerspectiveStore.current() Actions.queueTask(task) # Don't trigger the thread row click event.stopPropagation() module.exports = { ThreadArchiveQuickAction, ThreadTrashQuickAction }