ca43700c7c7d620eba0ce29fe3034564569eb714
[oweals/peertube.git] / client / src / app / shared / video / video-thumbnail.component.ts
1 import { Component, Input } from '@angular/core'
2 import { Video } from './video.model'
3 import { ScreenService } from '@app/shared/misc/screen.service'
4
5 @Component({
6   selector: 'my-video-thumbnail',
7   styleUrls: [ './video-thumbnail.component.scss' ],
8   templateUrl: './video-thumbnail.component.html'
9 })
10 export class VideoThumbnailComponent {
11   @Input() video: Video
12   @Input() nsfw = false
13
14   constructor (private screenService: ScreenService) {}
15
16   getImageUrl () {
17     if (!this.video) return ''
18
19     if (this.screenService.isInMobileView()) {
20       return this.video.previewUrl
21     }
22
23     return this.video.thumbnailUrl
24   }
25
26   getProgressPercent () {
27     if (!this.video.userHistory) return 0
28
29     const currentTime = this.video.userHistory.currentTime
30
31     return (currentTime / this.video.duration) * 100
32   }
33 }