X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=shared%2Fmodels%2Factivitypub%2Factivity.ts;h=5b4ce214a22b98ee5198f9aeb7d683f1a3ff3750;hb=17aa80ed016bafa3ccb071af3f86054033823284;hp=95801190d83d07223e0b92c699e0b1a5bdaaf787;hpb=97567dd81f508dd6295ac4d73d849aa2ce0a6549;p=github%2FChocobozzz%2FPeerTube.git diff --git a/shared/models/activitypub/activity.ts b/shared/models/activitypub/activity.ts index 95801190d..5b4ce214a 100644 --- a/shared/models/activitypub/activity.ts +++ b/shared/models/activitypub/activity.ts @@ -1,19 +1,40 @@ import { ActivityPubActor } from './activitypub-actor' import { ActivityPubSignature } from './activitypub-signature' -import { CacheFileObject, VideoTorrentObject } from './objects' +import { ActivityFlagReasonObject, CacheFileObject, VideoTorrentObject } from './objects' +import { AbuseObject } from './objects/abuse-object' 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' import { APObject } from './objects/object.model' import { PlaylistObject } from './objects/playlist-object' +import { VideoCommentObject } from './objects/video-comment-object' +import { ViewObject } from './objects/view-object' -export type Activity = ActivityCreate | ActivityUpdate | - ActivityDelete | ActivityFollow | ActivityAccept | ActivityAnnounce | - ActivityUndo | ActivityLike | ActivityReject | ActivityView | ActivityDislike | ActivityFlag - -export type ActivityType = 'Create' | 'Update' | 'Delete' | 'Follow' | 'Accept' | 'Announce' | 'Undo' | 'Like' | 'Reject' | - 'View' | 'Dislike' | 'Flag' +export type Activity = + ActivityCreate | + ActivityUpdate | + ActivityDelete | + ActivityFollow | + ActivityAccept | + ActivityAnnounce | + ActivityUndo | + ActivityLike | + ActivityReject | + ActivityView | + ActivityDislike | + ActivityFlag + +export type ActivityType = + 'Create' | + 'Update' | + 'Delete' | + 'Follow' | + 'Accept' | + 'Announce' | + 'Undo' | + 'Like' | + 'Reject' | + 'View' | + 'Dislike' | + 'Flag' export interface ActivityAudience { to: string[] @@ -32,7 +53,7 @@ export interface BaseActivity { export interface ActivityCreate extends BaseActivity { type: 'Create' - object: VideoTorrentObject | VideoAbuseObject | ViewObject | DislikeObject | VideoCommentObject | CacheFileObject | PlaylistObject + object: VideoTorrentObject | AbuseObject | ViewObject | DislikeObject | VideoCommentObject | CacheFileObject | PlaylistObject } export interface ActivityUpdate extends BaseActivity { @@ -66,17 +87,17 @@ export interface ActivityAnnounce extends BaseActivity { } export interface ActivityUndo extends BaseActivity { - type: 'Undo', + type: 'Undo' object: ActivityFollow | ActivityLike | ActivityDislike | ActivityCreate | ActivityAnnounce } export interface ActivityLike extends BaseActivity { - type: 'Like', + type: 'Like' object: APObject } export interface ActivityView extends BaseActivity { - type: 'View', + type: 'View' actor: string object: APObject } @@ -89,7 +110,10 @@ export interface ActivityDislike extends BaseActivity { } export interface ActivityFlag extends BaseActivity { - type: 'Flag', - content: string, - object: APObject + type: 'Flag' + content: string + object: APObject | APObject[] + tag?: ActivityFlagReasonObject[] + startAt?: number + endAt?: number }