import * as validator from 'validator'
-
-import { exists, isUUIDValid } from '../misc'
-import { isActivityPubUrlValid } from './misc'
-import { isUserUsernameValid } from '../users'
import { CONSTRAINTS_FIELDS } from '../../../initializers/constants'
+import { isAccountNameValid } from '../accounts'
+import { exists, isUUIDValid } from '../misc'
+import { isActivityPubUrlValid, isBaseActivityValid } from './misc'
function isAccountEndpointsObjectValid (endpointObject: any) {
return isAccountSharedInboxValid(endpointObject.sharedInbox)
return isActivityPubUrlValid(outbox)
}
-function isAccountNameValid (name: string) {
- return isUserUsernameValid(name)
-}
-
function isAccountPreferredUsernameValid (preferredUsername: string) {
return isAccountNameValid(preferredUsername)
}
isAccountPreferredUsernameValid(remoteAccount.preferredUsername) &&
isAccountUrlValid(remoteAccount.url) &&
isAccountPublicKeyObjectValid(remoteAccount.publicKey) &&
- isAccountEndpointsObjectValid(remoteAccount.endpoint)
+ isAccountEndpointsObjectValid(remoteAccount.endpoints)
}
function isAccountFollowingCountValid (value: string) {
return exists(value) && validator.isInt('' + value, { min: 0 })
}
+function isAccountDeleteActivityValid (activity: any) {
+ return isBaseActivityValid(activity, 'Delete')
+}
+
+function isAccountFollowActivityValid (activity: any) {
+ return isBaseActivityValid(activity, 'Follow') &&
+ isActivityPubUrlValid(activity.object)
+}
+
+function isAccountAcceptActivityValid (activity: any) {
+ return isBaseActivityValid(activity, 'Accept')
+}
+
// ---------------------------------------------------------------------------
export {
isRemoteAccountValid,
isAccountFollowingCountValid,
isAccountFollowersCountValid,
- isAccountNameValid
+ isAccountNameValid,
+ isAccountFollowActivityValid,
+ isAccountAcceptActivityValid,
+ isAccountDeleteActivityValid
}