]>
Commit | Line | Data |
---|---|---|
1 | import validator from 'validator' | |
2 | import { PlaylistElementObject, PlaylistObject } from '@shared/models' | |
3 | import { exists, isDateValid, isUUIDValid } from '../misc' | |
4 | import { isVideoPlaylistNameValid } from '../video-playlists' | |
5 | import { isActivityPubUrlValid } from './misc' | |
6 | ||
7 | function isPlaylistObjectValid (object: PlaylistObject) { | |
8 | return exists(object) && | |
9 | object.type === 'Playlist' && | |
10 | validator.isInt(object.totalItems + '') && | |
11 | isVideoPlaylistNameValid(object.name) && | |
12 | isUUIDValid(object.uuid) && | |
13 | isDateValid(object.published) && | |
14 | isDateValid(object.updated) | |
15 | } | |
16 | ||
17 | function isPlaylistElementObjectValid (object: PlaylistElementObject) { | |
18 | return exists(object) && | |
19 | object.type === 'PlaylistElement' && | |
20 | validator.isInt(object.position + '') && | |
21 | isActivityPubUrlValid(object.url) | |
22 | } | |
23 | ||
24 | // --------------------------------------------------------------------------- | |
25 | ||
26 | export { | |
27 | isPlaylistObjectValid, | |
28 | isPlaylistElementObjectValid | |
29 | } |