]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/helpers/custom-validators/activitypub/playlist.ts
Fix error display for embeds
[github/Chocobozzz/PeerTube.git] / server / helpers / custom-validators / activitypub / playlist.ts
1 import validator from 'validator'
2 import { PlaylistElementObject } from '../../../../shared/models/activitypub/objects/playlist-element-object'
3 import { PlaylistObject } from '../../../../shared/models/activitypub/objects/playlist-object'
4 import { exists, isDateValid, isUUIDValid } from '../misc'
5 import { isVideoPlaylistNameValid } from '../video-playlists'
6 import { isActivityPubUrlValid } from './misc'
7
8 function isPlaylistObjectValid (object: PlaylistObject) {
9 return exists(object) &&
10 object.type === 'Playlist' &&
11 validator.isInt(object.totalItems + '') &&
12 isVideoPlaylistNameValid(object.name) &&
13 isUUIDValid(object.uuid) &&
14 isDateValid(object.published) &&
15 isDateValid(object.updated)
16 }
17
18 function isPlaylistElementObjectValid (object: PlaylistElementObject) {
19 return exists(object) &&
20 object.type === 'PlaylistElement' &&
21 validator.isInt(object.position + '') &&
22 isActivityPubUrlValid(object.url)
23 }
24
25 // ---------------------------------------------------------------------------
26
27 export {
28 isPlaylistObjectValid,
29 isPlaylistElementObjectValid
30 }