Mailspring/internal_packages/message-list/lib/thread-archive-button.cjsx
2015-12-17 00:02:37 +01:00

34 lines
962 B
CoffeeScript

{RetinaImg} = require 'nylas-component-kit'
{Actions,
React,
TaskFactory,
DOMUtils,
FocusedMailViewStore} = require 'nylas-exports'
class ThreadArchiveButton extends React.Component
@displayName: "ThreadArchiveButton"
@containerRequired: false
@propTypes:
thread: React.PropTypes.object.isRequired
render: =>
return false unless FocusedMailViewStore.mailView()?.canArchiveThreads()
<button className="btn btn-toolbar btn-archive"
style={order: -107}
title="Archive"
onClick={@_onArchive}>
<RetinaImg name="toolbar-archive.png" mode={RetinaImg.Mode.ContentIsMask}/>
</button>
_onArchive: (e) =>
return unless DOMUtils.nodeIsVisible(e.currentTarget)
task = TaskFactory.taskForArchiving
threads: [@props.thread],
fromView: FocusedMailViewStore.mailView()
Actions.queueTask(task)
Actions.popSheet()
e.stopPropagation()
module.exports = ThreadArchiveButton