X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=shared%2Fmodels%2Factivitypub%2Factivity.ts;h=44cb99efb9da885254ba4300b084df782233829d;hb=5c6d985faeef1d6793d3f44ca6374f1a9b722806;hp=3d035d7d7b4291d15e5d1c09c2421adce19e133d;hpb=54141398354e6e7b94aa3065a705a1251390111c;p=github%2FChocobozzz%2FPeerTube.git diff --git a/shared/models/activitypub/activity.ts b/shared/models/activitypub/activity.ts index 3d035d7d7..44cb99efb 100644 --- a/shared/models/activitypub/activity.ts +++ b/shared/models/activitypub/activity.ts @@ -1,41 +1,45 @@ -import { VideoChannelObject, VideoTorrentObject } from './objects' +import { ActivityPubActor } from './activitypub-actor' import { ActivityPubSignature } from './activitypub-signature' +import { CacheFileObject, VideoTorrentObject } from './objects' +import { DislikeObject } from './objects/dislike-object' import { VideoAbuseObject } from './objects/video-abuse-object' +import { VideoCommentObject } from './objects/video-comment-object' +import { ViewObject } from './objects/view-object' -export type Activity = ActivityCreate | ActivityAdd | ActivityUpdate | +export type Activity = ActivityCreate | ActivityUpdate | ActivityDelete | ActivityFollow | ActivityAccept | ActivityAnnounce | - ActivityUndo + ActivityUndo | ActivityLike | ActivityReject -export type ActivityType = 'Create' | 'Add' | 'Update' | 'Delete' | 'Follow' | 'Accept' | 'Announce' | 'Undo' +export type ActivityType = 'Create' | 'Update' | 'Delete' | 'Follow' | 'Accept' | 'Announce' | 'Undo' | 'Like' | 'Reject' + +export interface ActivityAudience { + to: string[] + cc: string[] +} export interface BaseActivity { '@context'?: any[] id: string to?: string[] cc?: string[] - actor: string + actor: string | ActivityPubActor type: ActivityType signature?: ActivityPubSignature } export interface ActivityCreate extends BaseActivity { type: 'Create' - object: VideoChannelObject | VideoAbuseObject -} - -export interface ActivityAdd extends BaseActivity { - type: 'Add' - target: string - object: VideoTorrentObject + object: VideoTorrentObject | VideoAbuseObject | ViewObject | DislikeObject | VideoCommentObject | CacheFileObject } export interface ActivityUpdate extends BaseActivity { type: 'Update' - object: VideoTorrentObject | VideoChannelObject + object: VideoTorrentObject | ActivityPubActor | CacheFileObject } export interface ActivityDelete extends BaseActivity { type: 'Delete' + object: string | { id: string } } export interface ActivityFollow extends BaseActivity { @@ -45,14 +49,25 @@ export interface ActivityFollow extends BaseActivity { export interface ActivityAccept extends BaseActivity { type: 'Accept' + object: ActivityFollow +} + +export interface ActivityReject extends BaseActivity { + type: 'Reject' + object: ActivityFollow } export interface ActivityAnnounce extends BaseActivity { type: 'Announce' - object: ActivityCreate | ActivityAdd + object: string | { id: string } } export interface ActivityUndo extends BaseActivity { type: 'Undo', - object: ActivityFollow + object: ActivityFollow | ActivityLike | ActivityCreate | ActivityAnnounce +} + +export interface ActivityLike extends BaseActivity { + type: 'Like', + object: string }