X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=shared%2Fmodels%2Fvideos%2Fvideo.model.ts;h=e057b3e0699177aa49e50ff46ac1db5eb361e9b5;hb=bfbd912886eba17b4aa9a40dcef2fddc685d85bf;hp=eb40e82deb3b97f95434202aeb0d68354c41c4c6;hpb=0f320037e689b2778959c12ddd4ce790f6e4ae4f;p=github%2FChocobozzz%2FPeerTube.git diff --git a/shared/models/videos/video.model.ts b/shared/models/videos/video.model.ts index eb40e82de..e057b3e06 100644 --- a/shared/models/videos/video.model.ts +++ b/shared/models/videos/video.model.ts @@ -1,20 +1,20 @@ -import { VideoResolution } from '../../index' +import { AccountSummary, VideoChannelSummary, VideoResolution, VideoState } from '../../index' import { Account } from '../actors' -import { Avatar } from '../avatars/avatar.model' -import { VideoChannel } from './video-channel.model' +import { VideoChannel } from './channel/video-channel.model' import { VideoPrivacy } from './video-privacy.enum' - -export interface VideoConstant { - id: T - label: string -} +import { VideoScheduleUpdate } from './video-schedule-update.model' +import { VideoConstant } from './video-constant.model' +import { VideoStreamingPlaylist } from './video-streaming-playlist.model' export interface VideoFile { magnetUri: string resolution: VideoConstant size: number // Bytes torrentUrl: string + torrentDownloadUrl: string fileUrl: string + fileDownloadUrl: string + fps: number } export interface Video { @@ -23,6 +23,7 @@ export interface Video { createdAt: Date | string updatedAt: Date | string publishedAt: Date | string + originallyPublishedAt: Date | string category: VideoConstant licence: VideoConstant language: VideoConstant @@ -39,24 +40,18 @@ export interface Video { dislikes: number nsfw: boolean - account: { - id: number - uuid: string - name: string - displayName: string - url: string - host: string - avatar: Avatar - } + waitTranscoding?: boolean + state?: VideoConstant + scheduledUpdate?: VideoScheduleUpdate + + blacklisted?: boolean + blacklistedReason?: string + + account: AccountSummary + channel: VideoChannelSummary - channel: { - id: number - uuid: string - name: string - displayName: string - url: string - host: string - avatar: Avatar + userHistory?: { + currentTime: number } } @@ -64,8 +59,17 @@ export interface VideoDetails extends Video { descriptionPath: string support: string channel: VideoChannel + account: Account tags: string[] files: VideoFile[] - account: Account commentsEnabled: boolean + downloadEnabled: boolean + + // Not optional in details (unlike in Video) + waitTranscoding: boolean + state: VideoConstant + + trackerUrls: string[] + + streamingPlaylists: VideoStreamingPlaylist[] }