1 import { isVideoPrivacyValid } from '@server/helpers/custom-validators/videos'
2 import { MLiveReplaySetting } from '@server/types/models/video/video-live-replay-setting'
3 import { VideoPrivacy } from '@shared/models/videos/video-privacy.enum'
4 import { Transaction } from 'sequelize'
5 import { AllowNull, Column, CreatedAt, Is, Model, Table, UpdatedAt } from 'sequelize-typescript'
6 import { throwIfNotValid } from '../shared/sequelize-helpers'
9 tableName: 'videoLiveReplaySetting'
11 export class VideoLiveReplaySettingModel extends Model<VideoLiveReplaySettingModel> {
20 @Is('VideoPrivacy', value => throwIfNotValid(value, isVideoPrivacyValid, 'privacy'))
24 static load (id: number, transaction?: Transaction): Promise<MLiveReplaySetting> {
25 return VideoLiveReplaySettingModel.findOne({
31 static removeSettings (id: number) {
32 return VideoLiveReplaySettingModel.destroy({