Mercurial > hg > ugly-duckling
annotate src/app/analysis-item/analysis-item.component.ts @ 285:2d7da410ba46
Introduce width Inputs to analysis items and waveform and observe for Dimension changes in notebook-feed.
author | Lucas Thompson <dev@lucas.im> |
---|---|
date | Thu, 04 May 2017 17:09:48 +0100 |
parents | 53ea6406d601 |
children | d17d5038b11a |
rev | line source |
---|---|
dev@170 | 1 /** |
dev@170 | 2 * Created by lucast on 21/03/2017. |
dev@170 | 3 */ |
dev@231 | 4 import { |
dev@231 | 5 ChangeDetectionStrategy, |
dev@231 | 6 Component, |
dev@231 | 7 Input, |
dev@231 | 8 OnInit |
dev@236 | 9 } from '@angular/core'; |
dev@170 | 10 |
dev@200 | 11 export interface AnalysisItem { |
dev@200 | 12 rootAudioUri: string; |
dev@200 | 13 hasSharedTimeline: boolean; |
dev@200 | 14 isRoot: boolean; |
dev@200 | 15 extractorKey: string; |
dev@200 | 16 title?: string; |
dev@200 | 17 description?: string; |
dev@206 | 18 id?: string; |
dev@224 | 19 progress?: number; |
dev@170 | 20 } |
dev@170 | 21 |
dev@170 | 22 @Component({ |
dev@170 | 23 selector: 'ugly-analysis-item', |
dev@170 | 24 templateUrl: './analysis-item.component.html', |
dev@231 | 25 styleUrls: ['./analysis-item.component.css'], |
dev@231 | 26 changeDetection: ChangeDetectionStrategy.OnPush |
dev@170 | 27 }) |
dev@224 | 28 export class AnalysisItemComponent implements OnInit { |
dev@224 | 29 |
dev@189 | 30 @Input() timeline: Timeline; |
dev@200 | 31 @Input() isActive: boolean; |
dev@231 | 32 @Input() item: AnalysisItem; |
dev@285 | 33 @Input() contentWidth: number; |
dev@224 | 34 private hasProgressOnInit = false; |
dev@224 | 35 |
dev@224 | 36 ngOnInit(): void { |
dev@231 | 37 this.hasProgressOnInit = this.item.progress != null; |
dev@224 | 38 } |
dev@224 | 39 |
dev@224 | 40 isLoading(): boolean { |
dev@231 | 41 return this.hasProgressOnInit && this.item.progress < 100; |
dev@224 | 42 } |
dev@170 | 43 } |