2019-03-05 10:58:44 +01:00
|
|
|
import { exists, isDateValid } from '../misc'
|
2019-02-26 10:55:40 +01:00
|
|
|
import { PlaylistObject } from '../../../../shared/models/activitypub/objects/playlist-object'
|
2020-01-07 14:56:07 +01:00
|
|
|
import validator from 'validator'
|
2019-02-26 10:55:40 +01:00
|
|
|
import { PlaylistElementObject } from '../../../../shared/models/activitypub/objects/playlist-element-object'
|
|
|
|
import { isActivityPubUrlValid } from './misc'
|
|
|
|
|
|
|
|
function isPlaylistObjectValid (object: PlaylistObject) {
|
|
|
|
return exists(object) &&
|
|
|
|
object.type === 'Playlist' &&
|
2019-03-05 10:58:44 +01:00
|
|
|
validator.isInt(object.totalItems + '') &&
|
|
|
|
isDateValid(object.published) &&
|
|
|
|
isDateValid(object.updated)
|
2019-02-26 10:55:40 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
function isPlaylistElementObjectValid (object: PlaylistElementObject) {
|
|
|
|
return exists(object) &&
|
|
|
|
object.type === 'PlaylistElement' &&
|
|
|
|
validator.isInt(object.position + '') &&
|
|
|
|
isActivityPubUrlValid(object.url)
|
|
|
|
}
|
|
|
|
|
|
|
|
// ---------------------------------------------------------------------------
|
|
|
|
|
|
|
|
export {
|
|
|
|
isPlaylistObjectValid,
|
|
|
|
isPlaylistElementObjectValid
|
|
|
|
}
|