]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - shared/core-utils/videos/common.ts
Translated using Weblate (Japanese)
[github/Chocobozzz/PeerTube.git] / shared / core-utils / videos / common.ts
CommitLineData
9ab330b9 1import { VideoStreamingPlaylistType } from '@shared/models'
527a52ac 2import { VideoPrivacy } from '../../models/videos/video-privacy.enum'
9ab330b9 3import { VideoDetails } from '../../models/videos/video.model'
527a52ac
C
4
5function getAllPrivacies () {
6 return [ VideoPrivacy.PUBLIC, VideoPrivacy.INTERNAL, VideoPrivacy.PRIVATE, VideoPrivacy.UNLISTED ]
7}
8
367a9dc6
C
9function getAllFiles (video: Partial<Pick<VideoDetails, 'files' | 'streamingPlaylists'>>) {
10 const files = video.files
11
9ab330b9
C
12 const hls = getHLS(video)
13 if (hls) return files.concat(hls.files)
367a9dc6
C
14
15 return files
16}
17
9ab330b9
C
18function getHLS (video: Partial<Pick<VideoDetails, 'streamingPlaylists'>>) {
19 return video.streamingPlaylists.find(p => p.type === VideoStreamingPlaylistType.HLS)
20}
21
527a52ac 22export {
367a9dc6 23 getAllPrivacies,
9ab330b9
C
24 getAllFiles,
25 getHLS
527a52ac 26}