       }
 
     { selected, invitedId, leavingId, managedId } = sidebarState
+
     debug 'sidebar update', {
       machineId: machine.getId(), selected, invitedId, leavingId
     }

  render: ->

    { machine, status, percentage
      selected, invited, leaving, managed, coordinates } = @props

    <MachineItem itemDidMount={(item) => @item = item}



    super props

    @state = { coordinates: {} }

    @item = null


  componentDidMount: ->

    if @item and (@props.leaving or @props.invited or @props.managed)
      kd.utils.defer =>
        rect = findDOMNode(@item).getBoundingClientRect()

        @setState
          coordinates: { top: rect.top, left: rect.width + rect.left }


  componentWillReceiveProps: (nextProps) ->

    if @item and (nextProps.leaving or nextProps.invited or nextProps.managed)
      kd.utils.defer =>
        rect = findDOMNode(@item).getBoundingClientRect()

        @setState
          coordinates: { top: rect.top, left: rect.width + rect.left }


  onMachineClick: (event) ->
