import { Subscriber } from 'rxjs/Subscriber';
import { Observable } from 'rxjs/Observable';
import { NodeManagerService } from 'app/nodes/node-manager.service';
import { Component, OnInit, OnDestroy, NgZone, Input, SimpleChange, OnChanges } from '@angular/core';
import { Router, ActivatedRoute, Params } from '@angular/router';
import { Node } from 'app/nodes/node';
import { MdDialog, MdDialogRef } from '@angular/material';
@Component({
selector: 'app-node-detail',
template: `
toggled data
config groups
`,
styleUrls: ['./node-detail.component.scss'],
})
export class NodeDetailComponent implements OnDestroy, OnChanges {
@Input() node: Node;
@Input() inin: any;
state: Observable;
constructor(public router: Router, private zone: NgZone) { }
ngOnChanges(changes: { [propKey: string]: SimpleChange }) {
if (!!changes['node'].currentValue) {
this.setup();
// const res = this.node.accelerationX
// .timeInterval()
// .flatMap(valueInterval =>
// Observable
// .from(valueInterval.value)
// .map(value => Observable.of([value]).delay(valueInterval.interval / valueInterval.value.length))
// .concatAll());
}
}
ngOnDestroy() {
this.node.disconnect();
}
setup() {
this.state = this.node.connected
.filter(state => !state)
.flatMapTo(this.node.connect())
.share();
}
cancelConnect() {
this.router.navigate(['/']);
}
}