import { audiencify, getActorsInvolvedInVideo, getAudience, getAudienceFromFollowersOf, getVideoCommentAudience } from '../audience'
import { logger } from '../../../helpers/logger'
import { VideoPlaylistPrivacy } from '../../../../shared/models/videos/playlist/video-playlist-privacy.model'
-import { getServerActor } from '../../../helpers/utils'
import {
MActorLight,
MCommentOwnerVideo,
MVideoRedundancyFileVideo,
MVideoRedundancyStreamingPlaylistVideo
} from '../../../typings/models'
+import { getServerActor } from '@server/models/application/application'
+import { ContextType } from '@shared/models/activitypub/context'
async function sendCreateVideo (video: MVideoAP, t: Transaction) {
if (!video.hasPrivacyForFederation()) return undefined
byActor,
video,
url: fileRedundancy.url,
- object: fileRedundancy.toActivityPubObject()
+ object: fileRedundancy.toActivityPubObject(),
+ contextType: 'CacheFile'
})
}
// Add the actor that commented too
actorsInvolvedInComment.push(byActor)
- const parentsCommentActors = threadParentComments.map(c => c.Account.Actor)
+ const parentsCommentActors = threadParentComments.filter(c => !c.isDeleted())
+ .map(c => c.Account.Actor)
let audience: ActivityAudience
if (isOrigin) {
url: string
object: any
transaction?: Transaction
+ contextType?: ContextType
}) {
const activityBuilder = (audience: ActivityAudience) => {
return buildCreateActivity(options.url, options.byActor, options.object, audience)