X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fmodels%2Fvideo%2Fvideo-streaming-playlist.ts;h=0ea90d28c40561a0d050ca534b042179002997b5;hb=282e61e6c11f79e919c543871783fe1a00298d18;hp=b30267e0912f0b10eaa9fc51cab7d8739d429d9b;hpb=1735c825726edaa0af5035cb6cbb0cc0db502c6d;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/models/video/video-streaming-playlist.ts b/server/models/video/video-streaming-playlist.ts index b30267e09..0ea90d28c 100644 --- a/server/models/video/video-streaming-playlist.ts +++ b/server/models/video/video-streaming-playlist.ts @@ -1,16 +1,16 @@ -import { AllowNull, BelongsTo, Column, CreatedAt, ForeignKey, HasMany, Is, Model, Table, UpdatedAt, DataType } from 'sequelize-typescript' +import { AllowNull, BelongsTo, Column, CreatedAt, DataType, ForeignKey, HasMany, Is, Model, Table, UpdatedAt } from 'sequelize-typescript' import { isVideoFileInfoHashValid } from '../../helpers/custom-validators/videos' import { throwIfNotValid } from '../utils' import { VideoModel } from './video' import { VideoRedundancyModel } from '../redundancy/video-redundancy' import { VideoStreamingPlaylistType } from '../../../shared/models/videos/video-streaming-playlist.type' import { isActivityPubUrlValid } from '../../helpers/custom-validators/activitypub/misc' -import { CONSTRAINTS_FIELDS, STATIC_PATHS, P2P_MEDIA_LOADER_PEER_VERSION } from '../../initializers/constants' -import { VideoFileModel } from './video-file' +import { CONSTRAINTS_FIELDS, P2P_MEDIA_LOADER_PEER_VERSION, STATIC_PATHS } from '../../initializers/constants' import { join } from 'path' import { sha1 } from '../../helpers/core-utils' import { isArrayOf } from '../../helpers/custom-validators/misc' -import { QueryTypes, Op } from 'sequelize' +import { Op, QueryTypes } from 'sequelize' +import { MStreamingPlaylist, MVideoFile } from '@server/typings/models' @Table({ tableName: 'videoStreamingPlaylist', @@ -26,7 +26,7 @@ import { QueryTypes, Op } from 'sequelize' fields: [ 'p2pMediaLoaderInfohashes' ], using: 'gin' } - ] as any // FIXME: sequelize typings + ] }) export class VideoStreamingPlaylistModel extends Model { @CreatedAt @@ -46,7 +46,7 @@ export class VideoStreamingPlaylistModel extends Model throwIfNotValid(value, v => isArrayOf(v, isVideoFileInfoHashValid), 'info hashes')) - @Column({ type: DataType.ARRAY(DataType.STRING) }) // FIXME: typings + @Column(DataType.ARRAY(DataType.STRING)) p2pMediaLoaderInfohashes: string[] @AllowNull(false) @@ -87,11 +87,11 @@ export class VideoStreamingPlaylistModel extends Model(query, options) + return VideoModel.sequelize.query(query, options) .then(results => results.length === 1) } - static buildP2PMediaLoaderInfoHashes (playlistUrl: string, videoFiles: VideoFileModel[]) { + static buildP2PMediaLoaderInfoHashes (playlistUrl: string, videoFiles: MVideoFile[]) { const hashes: string[] = [] // https://github.com/Novage/p2p-media-loader/blob/master/p2p-media-loader-core/lib/p2p-media-manager.ts#L115 @@ -165,7 +165,7 @@ export class VideoStreamingPlaylistModel extends Model