diff options
Diffstat (limited to 'shared/models/activitypub/objects')
4 files changed, 61 insertions, 0 deletions
diff --git a/shared/models/activitypub/objects/common-objects.ts b/shared/models/activitypub/objects/common-objects.ts new file mode 100644 index 000000000..3eaab21b5 --- /dev/null +++ b/shared/models/activitypub/objects/common-objects.ts | |||
@@ -0,0 +1,25 @@ | |||
1 | export interface ActivityIdentifierObject { | ||
2 | identifier: string | ||
3 | name: string | ||
4 | } | ||
5 | |||
6 | export interface ActivityTagObject { | ||
7 | type: 'Hashtag' | ||
8 | name: string | ||
9 | } | ||
10 | |||
11 | export interface ActivityIconObject { | ||
12 | type: 'Image' | ||
13 | url: string | ||
14 | mediaType: 'image/jpeg' | ||
15 | width: number | ||
16 | height: number | ||
17 | } | ||
18 | |||
19 | export interface ActivityUrlObject { | ||
20 | type: 'Link' | ||
21 | mimeType: 'video/mp4' | 'video/webm' | 'application/x-bittorrent' | 'application/x-bittorrent;x-scheme-handler/magnet' | ||
22 | url: string | ||
23 | width: number | ||
24 | size?: number | ||
25 | } | ||
diff --git a/shared/models/activitypub/objects/index.ts b/shared/models/activitypub/objects/index.ts new file mode 100644 index 000000000..8c2e2daca --- /dev/null +++ b/shared/models/activitypub/objects/index.ts | |||
@@ -0,0 +1,3 @@ | |||
1 | export * from './common-objects' | ||
2 | export * from './video-channel-object' | ||
3 | export * from './video-torrent-object' | ||
diff --git a/shared/models/activitypub/objects/video-channel-object.ts b/shared/models/activitypub/objects/video-channel-object.ts new file mode 100644 index 000000000..d64b4aed8 --- /dev/null +++ b/shared/models/activitypub/objects/video-channel-object.ts | |||
@@ -0,0 +1,8 @@ | |||
1 | import { ActivityIdentifierObject } from './common-objects' | ||
2 | |||
3 | export interface VideoChannelObject { | ||
4 | type: 'VideoChannel' | ||
5 | name: string | ||
6 | content: string | ||
7 | uuid: ActivityIdentifierObject | ||
8 | } | ||
diff --git a/shared/models/activitypub/objects/video-torrent-object.ts b/shared/models/activitypub/objects/video-torrent-object.ts new file mode 100644 index 000000000..00cc0a649 --- /dev/null +++ b/shared/models/activitypub/objects/video-torrent-object.ts | |||
@@ -0,0 +1,25 @@ | |||
1 | import { | ||
2 | ActivityIconObject, | ||
3 | ActivityIdentifierObject, | ||
4 | ActivityTagObject, | ||
5 | ActivityUrlObject | ||
6 | } from './common-objects' | ||
7 | |||
8 | export interface VideoTorrentObject { | ||
9 | type: 'Video' | ||
10 | name: string | ||
11 | duration: string | ||
12 | uuid: string | ||
13 | tag: ActivityTagObject[] | ||
14 | category: ActivityIdentifierObject | ||
15 | licence: ActivityIdentifierObject | ||
16 | language: ActivityIdentifierObject | ||
17 | views: number | ||
18 | nsfw: boolean | ||
19 | published: Date | ||
20 | updated: Date | ||
21 | mediaType: 'text/markdown' | ||
22 | content: string | ||
23 | icon: ActivityIconObject | ||
24 | url: ActivityUrlObject[] | ||
25 | } | ||