Mercurial > hg > ugly-duckling
view src/app/recording-control/recording-control.component.ts @ 509:041468f553e1 tip master
Merge pull request #57 from LucasThompson/fix/session-stack-max-call-stack
Fix accidental recursion in PersistentStack
author | Lucas Thompson <LucasThompson@users.noreply.github.com> |
---|---|
date | Mon, 27 Nov 2017 11:04:30 +0000 |
parents | 53ea6406d601 |
children |
line wrap: on
line source
/** * Created by lucas on 17/03/2017. */ import { Component, OnInit, OnDestroy, Output, EventEmitter } from '@angular/core'; import { AudioRecorderService, RecorderServiceStatus } from '../services/audio-recorder/audio-recorder.service'; import {Subscription} from 'rxjs/Subscription'; @Component({ selector: 'ugly-recording-control', templateUrl: './recording-control.component.html' }) export class RecordingControlComponent implements OnInit, OnDestroy { private recordingState: Subscription; private newRecording: Subscription; recordingStatus: RecorderServiceStatus; @Output() finishedRecording: EventEmitter<Blob>; constructor(private recordingService: AudioRecorderService) { this.recordingStatus = 'disabled'; this.finishedRecording = new EventEmitter<Blob>(); } ngOnInit(): void { this.recordingState = this.recordingService.recordingStateChange$.subscribe( (status: RecorderServiceStatus) => { this.recordingStatus = status; } ); this.newRecording = this.recordingService.newRecording$.subscribe( (recordingBlob: Blob) => { this.finishedRecording.emit(recordingBlob); } ); } ngOnDestroy(): void { this.recordingState.unsubscribe(); this.newRecording.unsubscribe(); } emitToggleRecording() { this.recordingService.toggleRecording(); } }