mirror of https://github.com/Chocobozzz/PeerTube
30 lines
962 B
TypeScript
30 lines
962 B
TypeScript
import validator from 'validator'
|
|
import { PlaylistElementObject, PlaylistObject } from '@shared/models'
|
|
import { exists, isDateValid, isUUIDValid } from '../misc'
|
|
import { isVideoPlaylistNameValid } from '../video-playlists'
|
|
import { isActivityPubUrlValid } from './misc'
|
|
|
|
function isPlaylistObjectValid (object: PlaylistObject) {
|
|
return exists(object) &&
|
|
object.type === 'Playlist' &&
|
|
validator.isInt(object.totalItems + '') &&
|
|
isVideoPlaylistNameValid(object.name) &&
|
|
isUUIDValid(object.uuid) &&
|
|
isDateValid(object.published) &&
|
|
isDateValid(object.updated)
|
|
}
|
|
|
|
function isPlaylistElementObjectValid (object: PlaylistElementObject) {
|
|
return exists(object) &&
|
|
object.type === 'PlaylistElement' &&
|
|
validator.isInt(object.position + '') &&
|
|
isActivityPubUrlValid(object.url)
|
|
}
|
|
|
|
// ---------------------------------------------------------------------------
|
|
|
|
export {
|
|
isPlaylistObjectValid,
|
|
isPlaylistElementObjectValid
|
|
}
|