React = require 'react/addons' classNames = require 'classnames' class ActivityBarTask extends React.Component @displayName: 'ActivityBarTask' constructor: (@props) -> @state = expanded: false render: =>
@setState expanded: not @state.expanded}>
{@_taskSummary()}
{JSON.stringify(@props.task.toJSON())}
_taskSummary: => qs = @props.task.queueState errType = "" errCode = "" errMessage = "" if qs.localError? localError = qs.localError errType = localError.constructor.name errMessage = localError.message ? JSON.stringify(localError) else if qs.remoteError? remoteError = qs.remoteError errType = remoteError.constructor.name errCode = remoteError.statusCode ? "" errMessage = remoteError.body?.message ? remoteError?.message ? JSON.stringify(remoteError) return "#{@props.task.constructor.name} #{errType} #{errCode} #{errMessage}" _classNames: => qs = @props.task.queueState ? {} classNames "task": true "task-queued": @props.type is "queued" "task-completed": @props.type is "completed" "task-expanded": @state.expanded "task-local-error": qs.localError "task-remote-error": qs.remoteError "task-is-processing": qs.isProcessing "task-success": qs.performedLocal and qs.performedRemote module.exports = ActivityBarTask