]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/shared/shared-video-playlist/video-playlist.model.ts
Fix client lint
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / shared-video-playlist / video-playlist.model.ts
index d67f372f41e7b101bd1dfb6f656770e98c159cfa..fcc2ce705dda5539b2c509f5bb6458060b6118a9 100644 (file)
@@ -1,5 +1,6 @@
 import { getAbsoluteAPIUrl, getAbsoluteEmbedUrl } from '@app/helpers'
 import { Actor } from '@app/shared/shared-main'
+import { buildPlaylistWatchPath } from '@shared/core-utils'
 import { peertubeTranslate } from '@shared/core-utils/i18n'
 import {
   AccountSummary,
@@ -13,6 +14,8 @@ import {
 export class VideoPlaylist implements ServerVideoPlaylist {
   id: number
   uuid: string
+  shortUUID: string
+
   isLocal: boolean
 
   url: string
@@ -41,11 +44,17 @@ export class VideoPlaylist implements ServerVideoPlaylist {
 
   videoChannelBy?: string
 
+  static buildWatchUrl (playlist: Pick<VideoPlaylist, 'uuid' | 'shortUUID'>) {
+    return buildPlaylistWatchPath({ shortUUID: playlist.shortUUID || playlist.uuid })
+  }
+
   constructor (hash: ServerVideoPlaylist, translations: {}) {
     const absoluteAPIUrl = getAbsoluteAPIUrl()
 
     this.id = hash.id
     this.uuid = hash.uuid
+    this.shortUUID = hash.shortUUID
+
     this.url = hash.url
     this.isLocal = hash.isLocal