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

{{ group.title }}

{{ section.title }}

Connecting...
`, 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(['/']); } }