X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2Fshared%2Fshared-custom-markup%2Fpeertube-custom-tags%2Fplaylist-miniature-markup.component.ts;h=07fa6fd2d29cb5fe2c9d4bf93be25c994b96e70a;hb=ab4b8974997777373a6032073f9c1aaf33ba9931;hp=eddc3636e55c4a9411cca9a04c3c4749aa827655;hpb=8ee25e17b88b970703f4df9e74cb4726bbffd837;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/shared/shared-custom-markup/peertube-custom-tags/playlist-miniature-markup.component.ts b/client/src/app/shared/shared-custom-markup/peertube-custom-tags/playlist-miniature-markup.component.ts index eddc3636e..07fa6fd2d 100644 --- a/client/src/app/shared/shared-custom-markup/peertube-custom-tags/playlist-miniature-markup.component.ts +++ b/client/src/app/shared/shared-custom-markup/peertube-custom-tags/playlist-miniature-markup.component.ts @@ -1,6 +1,10 @@ -import { Component, Input, OnInit } from '@angular/core' +import { finalize } from 'rxjs/operators' +import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core' +import { Notifier } from '@app/core' +import { FindInBulkService } from '@app/shared/shared-search' import { MiniatureDisplayOptions } from '../../shared-video-miniature' -import { VideoPlaylist, VideoPlaylistService } from '../../shared-video-playlist' +import { VideoPlaylist } from '../../shared-video-playlist' +import { CustomMarkupComponent } from './shared' /* * Markup component that creates a playlist miniature only @@ -11,9 +15,11 @@ import { VideoPlaylist, VideoPlaylistService } from '../../shared-video-playlist templateUrl: 'playlist-miniature-markup.component.html', styleUrls: [ 'playlist-miniature-markup.component.scss' ] }) -export class PlaylistMiniatureMarkupComponent implements OnInit { +export class PlaylistMiniatureMarkupComponent implements CustomMarkupComponent, OnInit { @Input() uuid: string + @Output() loaded = new EventEmitter() + playlist: VideoPlaylist displayOptions: MiniatureDisplayOptions = { @@ -28,11 +34,17 @@ export class PlaylistMiniatureMarkupComponent implements OnInit { } constructor ( - private playlistService: VideoPlaylistService + private findInBulkService: FindInBulkService, + private notifier: Notifier ) { } ngOnInit () { - this.playlistService.getVideoPlaylist(this.uuid) - .subscribe(playlist => this.playlist = playlist) + this.findInBulkService.getPlaylist(this.uuid) + .pipe(finalize(() => this.loaded.emit(true))) + .subscribe({ + next: playlist => this.playlist = playlist, + + error: err => this.notifier.error($localize`Error in playlist miniature component: ${err.message}`) + }) } }