PeerTube/server/helpers/custom-validators/user-notifications.ts

25 lines
850 B
TypeScript
Raw Normal View History

2018-12-26 03:36:24 -06:00
import { exists } from './misc'
2020-01-07 07:56:07 -06:00
import validator from 'validator'
2018-12-26 03:36:24 -06:00
import { UserNotificationType } from '../../../shared/models/users'
import { UserNotificationSettingValue } from '../../../shared/models/users/user-notification-setting.model'
function isUserNotificationTypeValid (value: any) {
return exists(value) && validator.isInt('' + value) && UserNotificationType[value] !== undefined
}
function isUserNotificationSettingValid (value: any) {
return exists(value) &&
2020-01-31 09:56:52 -06:00
validator.isInt('' + value) &&
(
2019-01-08 04:26:41 -06:00
value === UserNotificationSettingValue.NONE ||
value === UserNotificationSettingValue.WEB ||
value === UserNotificationSettingValue.EMAIL ||
value === (UserNotificationSettingValue.WEB | UserNotificationSettingValue.EMAIL)
)
2018-12-26 03:36:24 -06:00
}
export {
isUserNotificationSettingValid,
isUserNotificationTypeValid
}