React = require 'react'
{remote} = require 'electron'
{Actions, NylasAPI, AccountStore} = require 'nylas-exports'
{RetinaImg, ButtonDropdown, Menu} = require 'nylas-component-kit'
class MessageControls extends React.Component
@displayName: "MessageControls"
@propTypes:
thread: React.PropTypes.object.isRequired
message: React.PropTypes.object.isRequired
constructor: (@props) ->
render: =>
items = @_items()
}
primaryTitle={items[0].name}
primaryClick={items[0].select}
closeOnMenuClick={true}
menu={@_dropdownMenu(items[1..-1])}/>
_items: ->
reply =
name: 'Reply',
image: 'ic-dropdown-reply.png'
select: @_onReply
replyAll =
name: 'Reply All',
image: 'ic-dropdown-replyall.png'
select: @_onReplyAll
forward =
name: 'Forward',
image: 'ic-dropdown-forward.png'
select: @_onForward
if @props.message.canReplyAll()
defaultReplyType = NylasEnv.config.get('core.sending.defaultReplyType')
if defaultReplyType is 'reply-all'
return [replyAll, reply, forward]
else
return [reply, replyAll, forward]
else
return [reply, forward]
_account: =>
AccountStore.accountForId(@props.message.accountId)
_dropdownMenu: (items) ->
itemContent = (item) ->
{item.name}