context = window RecordingStore = @RecordingStore @SessionRecordingStatus = React.createClass({ mixins: [Reflux.listenTo(@RecordingStore, "onRecordingChanged")] onRecordingChanged: (details) -> @setState(details) getInitialState: () -> { isRecording: false, cause: "", events:[] } render: () -> classes = classNames({ 'session-recording-status' : true 'has-details' : @state.detail? }) modelState = RecordingStore.recordingModel?.getState() #if @state.isRecording == false # return null if this.state.isRecording recording = `Recording` else recording = `Not Recording` cause = `cause={this.state.cause}` waitingOnClientStop = null waitingOnServerStop = null if modelState? if modelState.waitingOnClientStop waitingOnClientStop = `clientStopping` if modelState.waitingOnServerStop waitingOnServerStop = `serverStopping` events = [] for event in @state.events events.push(`
  • {event[0]} brid={event[1]}
  • `) initiator = "" if this.state.thisClientStartedRecording initiator = "Initatior" body = `
    {recording} {initiator} {cause} {waitingOnClientStop} {waitingOnServerStop}
    ` `
    {body}
    ` componentDidMount: () -> })