aboutsummaryrefslogtreecommitdiffhomepage
path: root/shared/models
diff options
context:
space:
mode:
Diffstat (limited to 'shared/models')
-rw-r--r--shared/models/activitypub/activity.ts10
-rw-r--r--shared/models/activitypub/objects/abuse-object.ts (renamed from shared/models/activitypub/objects/video-abuse-object.ts)4
-rw-r--r--shared/models/activitypub/objects/common-objects.ts4
-rw-r--r--shared/models/activitypub/objects/index.ts4
-rw-r--r--shared/models/index.ts3
-rw-r--r--shared/models/moderation/abuse/abuse-create.model.ts29
-rw-r--r--shared/models/moderation/abuse/abuse-filter.type.ts1
-rw-r--r--shared/models/moderation/abuse/abuse-reason.model.ts33
-rw-r--r--shared/models/moderation/abuse/abuse-state.model.ts (renamed from shared/models/videos/abuse/video-abuse-state.model.ts)2
-rw-r--r--shared/models/moderation/abuse/abuse-update.model.ts7
-rw-r--r--shared/models/moderation/abuse/abuse-video-is.type.ts1
-rw-r--r--shared/models/moderation/abuse/abuse.model.ts73
-rw-r--r--shared/models/moderation/abuse/index.ts7
-rw-r--r--shared/models/moderation/account-block.model.ts (renamed from shared/models/blocklist/account-block.model.ts)0
-rw-r--r--shared/models/moderation/index.ts (renamed from shared/models/blocklist/index.ts)1
-rw-r--r--shared/models/moderation/server-block.model.ts (renamed from shared/models/blocklist/server-block.model.ts)0
-rw-r--r--shared/models/users/user-notification-setting.model.ts2
-rw-r--r--shared/models/users/user-notification.model.ts19
-rw-r--r--shared/models/users/user-right.enum.ts2
-rw-r--r--shared/models/users/user-role.ts2
-rw-r--r--shared/models/users/user.model.ts9
-rw-r--r--shared/models/videos/abuse/index.ts6
-rw-r--r--shared/models/videos/abuse/video-abuse-create.model.ts8
-rw-r--r--shared/models/videos/abuse/video-abuse-reason.model.ts33
-rw-r--r--shared/models/videos/abuse/video-abuse-update.model.ts6
-rw-r--r--shared/models/videos/abuse/video-abuse-video-is.type.ts1
-rw-r--r--shared/models/videos/abuse/video-abuse.model.ts38
-rw-r--r--shared/models/videos/index.ts1
28 files changed, 191 insertions, 115 deletions
diff --git a/shared/models/activitypub/activity.ts b/shared/models/activitypub/activity.ts
index 31b9e4673..5b4ce214a 100644
--- a/shared/models/activitypub/activity.ts
+++ b/shared/models/activitypub/activity.ts
@@ -1,12 +1,12 @@
1import { ActivityPubActor } from './activitypub-actor' 1import { ActivityPubActor } from './activitypub-actor'
2import { ActivityPubSignature } from './activitypub-signature' 2import { ActivityPubSignature } from './activitypub-signature'
3import { CacheFileObject, VideoTorrentObject, ActivityFlagReasonObject } from './objects' 3import { ActivityFlagReasonObject, CacheFileObject, VideoTorrentObject } from './objects'
4import { AbuseObject } from './objects/abuse-object'
4import { DislikeObject } from './objects/dislike-object' 5import { DislikeObject } from './objects/dislike-object'
5import { VideoAbuseObject } from './objects/video-abuse-object'
6import { VideoCommentObject } from './objects/video-comment-object'
7import { ViewObject } from './objects/view-object'
8import { APObject } from './objects/object.model' 6import { APObject } from './objects/object.model'
9import { PlaylistObject } from './objects/playlist-object' 7import { PlaylistObject } from './objects/playlist-object'
8import { VideoCommentObject } from './objects/video-comment-object'
9import { ViewObject } from './objects/view-object'
10 10
11export type Activity = 11export type Activity =
12 ActivityCreate | 12 ActivityCreate |
@@ -53,7 +53,7 @@ export interface BaseActivity {
53 53
54export interface ActivityCreate extends BaseActivity { 54export interface ActivityCreate extends BaseActivity {
55 type: 'Create' 55 type: 'Create'
56 object: VideoTorrentObject | VideoAbuseObject | ViewObject | DislikeObject | VideoCommentObject | CacheFileObject | PlaylistObject 56 object: VideoTorrentObject | AbuseObject | ViewObject | DislikeObject | VideoCommentObject | CacheFileObject | PlaylistObject
57} 57}
58 58
59export interface ActivityUpdate extends BaseActivity { 59export interface ActivityUpdate extends BaseActivity {
diff --git a/shared/models/activitypub/objects/video-abuse-object.ts b/shared/models/activitypub/objects/abuse-object.ts
index 73add8ef4..ad45cc064 100644
--- a/shared/models/activitypub/objects/video-abuse-object.ts
+++ b/shared/models/activitypub/objects/abuse-object.ts
@@ -1,10 +1,12 @@
1import { ActivityFlagReasonObject } from './common-objects' 1import { ActivityFlagReasonObject } from './common-objects'
2 2
3export interface VideoAbuseObject { 3export interface AbuseObject {
4 type: 'Flag' 4 type: 'Flag'
5 content: string 5 content: string
6 object: string | string[] 6 object: string | string[]
7
7 tag?: ActivityFlagReasonObject[] 8 tag?: ActivityFlagReasonObject[]
9
8 startAt?: number 10 startAt?: number
9 endAt?: number 11 endAt?: number
10} 12}
diff --git a/shared/models/activitypub/objects/common-objects.ts b/shared/models/activitypub/objects/common-objects.ts
index 096d422ea..711ce45f4 100644
--- a/shared/models/activitypub/objects/common-objects.ts
+++ b/shared/models/activitypub/objects/common-objects.ts
@@ -1,4 +1,4 @@
1import { VideoAbusePredefinedReasonsString } from '@shared/models/videos' 1import { AbusePredefinedReasonsString } from '@shared/models'
2 2
3export interface ActivityIdentifierObject { 3export interface ActivityIdentifierObject {
4 identifier: string 4 identifier: string
@@ -85,7 +85,7 @@ export interface ActivityMentionObject {
85 85
86export interface ActivityFlagReasonObject { 86export interface ActivityFlagReasonObject {
87 type: 'Hashtag' 87 type: 'Hashtag'
88 name: VideoAbusePredefinedReasonsString 88 name: AbusePredefinedReasonsString
89} 89}
90 90
91export type ActivityTagObject = 91export type ActivityTagObject =
diff --git a/shared/models/activitypub/objects/index.ts b/shared/models/activitypub/objects/index.ts
index fba61e12f..a6a20e87a 100644
--- a/shared/models/activitypub/objects/index.ts
+++ b/shared/models/activitypub/objects/index.ts
@@ -1,6 +1,6 @@
1export * from './abuse-object'
1export * from './cache-file-object' 2export * from './cache-file-object'
2export * from './common-objects' 3export * from './common-objects'
3export * from './video-abuse-object' 4export * from './dislike-object'
4export * from './video-torrent-object' 5export * from './video-torrent-object'
5export * from './view-object' 6export * from './view-object'
6export * from './dislike-object'
diff --git a/shared/models/index.ts b/shared/models/index.ts
index 3d4bdedde..a68f57148 100644
--- a/shared/models/index.ts
+++ b/shared/models/index.ts
@@ -1,7 +1,7 @@
1export * from './activitypub' 1export * from './activitypub'
2export * from './actors' 2export * from './actors'
3export * from './avatars' 3export * from './avatars'
4export * from './blocklist' 4export * from './moderation'
5export * from './bulk' 5export * from './bulk'
6export * from './redundancy' 6export * from './redundancy'
7export * from './users' 7export * from './users'
@@ -14,4 +14,3 @@ export * from './search'
14export * from './server' 14export * from './server'
15export * from './oauth-client-local.model' 15export * from './oauth-client-local.model'
16export * from './result-list.model' 16export * from './result-list.model'
17export * from './server/server-config.model'
diff --git a/shared/models/moderation/abuse/abuse-create.model.ts b/shared/models/moderation/abuse/abuse-create.model.ts
new file mode 100644
index 000000000..b0358dbb9
--- /dev/null
+++ b/shared/models/moderation/abuse/abuse-create.model.ts
@@ -0,0 +1,29 @@
1import { AbusePredefinedReasonsString } from './abuse-reason.model'
2
3export interface AbuseCreate {
4 reason: string
5
6 predefinedReasons?: AbusePredefinedReasonsString[]
7
8 account?: {
9 id: number
10 }
11
12 video?: {
13 id: number
14 startAt?: number
15 endAt?: number
16 }
17
18 comment?: {
19 id: number
20 }
21}
22
23// FIXME: deprecated in 2.3. Remove it
24export interface VideoAbuseCreate {
25 reason: string
26 predefinedReasons?: AbusePredefinedReasonsString[]
27 startAt?: number
28 endAt?: number
29}
diff --git a/shared/models/moderation/abuse/abuse-filter.type.ts b/shared/models/moderation/abuse/abuse-filter.type.ts
new file mode 100644
index 000000000..7dafc6d77
--- /dev/null
+++ b/shared/models/moderation/abuse/abuse-filter.type.ts
@@ -0,0 +1 @@
export type AbuseFilter = 'video' | 'comment' | 'account'
diff --git a/shared/models/moderation/abuse/abuse-reason.model.ts b/shared/models/moderation/abuse/abuse-reason.model.ts
new file mode 100644
index 000000000..36875969d
--- /dev/null
+++ b/shared/models/moderation/abuse/abuse-reason.model.ts
@@ -0,0 +1,33 @@
1export enum AbusePredefinedReasons {
2 VIOLENT_OR_REPULSIVE = 1,
3 HATEFUL_OR_ABUSIVE,
4 SPAM_OR_MISLEADING,
5 PRIVACY,
6 RIGHTS,
7 SERVER_RULES,
8 THUMBNAILS,
9 CAPTIONS
10}
11
12export type AbusePredefinedReasonsString =
13 'violentOrRepulsive' |
14 'hatefulOrAbusive' |
15 'spamOrMisleading' |
16 'privacy' |
17 'rights' |
18 'serverRules' |
19 'thumbnails' |
20 'captions'
21
22export const abusePredefinedReasonsMap: {
23 [key in AbusePredefinedReasonsString]: AbusePredefinedReasons
24} = {
25 violentOrRepulsive: AbusePredefinedReasons.VIOLENT_OR_REPULSIVE,
26 hatefulOrAbusive: AbusePredefinedReasons.HATEFUL_OR_ABUSIVE,
27 spamOrMisleading: AbusePredefinedReasons.SPAM_OR_MISLEADING,
28 privacy: AbusePredefinedReasons.PRIVACY,
29 rights: AbusePredefinedReasons.RIGHTS,
30 serverRules: AbusePredefinedReasons.SERVER_RULES,
31 thumbnails: AbusePredefinedReasons.THUMBNAILS,
32 captions: AbusePredefinedReasons.CAPTIONS
33}
diff --git a/shared/models/videos/abuse/video-abuse-state.model.ts b/shared/models/moderation/abuse/abuse-state.model.ts
index 529f034bd..b00cccad8 100644
--- a/shared/models/videos/abuse/video-abuse-state.model.ts
+++ b/shared/models/moderation/abuse/abuse-state.model.ts
@@ -1,4 +1,4 @@
1export enum VideoAbuseState { 1export enum AbuseState {
2 PENDING = 1, 2 PENDING = 1,
3 REJECTED = 2, 3 REJECTED = 2,
4 ACCEPTED = 3 4 ACCEPTED = 3
diff --git a/shared/models/moderation/abuse/abuse-update.model.ts b/shared/models/moderation/abuse/abuse-update.model.ts
new file mode 100644
index 000000000..4360fe7ac
--- /dev/null
+++ b/shared/models/moderation/abuse/abuse-update.model.ts
@@ -0,0 +1,7 @@
1import { AbuseState } from './abuse-state.model'
2
3export interface AbuseUpdate {
4 moderationComment?: string
5
6 state?: AbuseState
7}
diff --git a/shared/models/moderation/abuse/abuse-video-is.type.ts b/shared/models/moderation/abuse/abuse-video-is.type.ts
new file mode 100644
index 000000000..74937f3b9
--- /dev/null
+++ b/shared/models/moderation/abuse/abuse-video-is.type.ts
@@ -0,0 +1 @@
export type AbuseVideoIs = 'deleted' | 'blacklisted'
diff --git a/shared/models/moderation/abuse/abuse.model.ts b/shared/models/moderation/abuse/abuse.model.ts
new file mode 100644
index 000000000..0a0c6bd35
--- /dev/null
+++ b/shared/models/moderation/abuse/abuse.model.ts
@@ -0,0 +1,73 @@
1import { Account } from '../../actors/account.model'
2import { AbuseState } from './abuse-state.model'
3import { AbusePredefinedReasonsString } from './abuse-reason.model'
4import { VideoConstant } from '../../videos/video-constant.model'
5import { VideoChannel } from '../../videos/channel/video-channel.model'
6
7export interface VideoAbuse {
8 id: number
9 name: string
10 uuid: string
11 nsfw: boolean
12
13 deleted: boolean
14 blacklisted: boolean
15
16 startAt: number | null
17 endAt: number | null
18
19 thumbnailPath?: string
20 channel?: VideoChannel
21
22 countReports: number
23 nthReport: number
24}
25
26export interface VideoCommentAbuse {
27 id: number
28 threadId: number
29
30 video: {
31 id: number
32 name: string
33 uuid: string
34 }
35
36 text: string
37
38 deleted: boolean
39}
40
41export interface Abuse {
42 id: number
43
44 reason: string
45 predefinedReasons?: AbusePredefinedReasonsString[]
46
47 reporterAccount: Account
48 flaggedAccount: Account
49
50 state: VideoConstant<AbuseState>
51 moderationComment?: string
52
53 video?: VideoAbuse
54 comment?: VideoCommentAbuse
55
56 createdAt: Date
57 updatedAt: Date
58
59 countReportsForReporter?: number
60 countReportsForReportee?: number
61
62 // FIXME: deprecated in 2.3, remove the following properties
63
64 // @deprecated
65 startAt?: null
66 // @deprecated
67 endAt?: null
68
69 // @deprecated
70 count?: number
71 // @deprecated
72 nth?: number
73}
diff --git a/shared/models/moderation/abuse/index.ts b/shared/models/moderation/abuse/index.ts
new file mode 100644
index 000000000..55046426a
--- /dev/null
+++ b/shared/models/moderation/abuse/index.ts
@@ -0,0 +1,7 @@
1export * from './abuse-create.model'
2export * from './abuse-filter.type'
3export * from './abuse-reason.model'
4export * from './abuse-state.model'
5export * from './abuse-update.model'
6export * from './abuse-video-is.type'
7export * from './abuse.model'
diff --git a/shared/models/blocklist/account-block.model.ts b/shared/models/moderation/account-block.model.ts
index a942ed614..a942ed614 100644
--- a/shared/models/blocklist/account-block.model.ts
+++ b/shared/models/moderation/account-block.model.ts
diff --git a/shared/models/blocklist/index.ts b/shared/models/moderation/index.ts
index fc7873270..8b6042e97 100644
--- a/shared/models/blocklist/index.ts
+++ b/shared/models/moderation/index.ts
@@ -1,2 +1,3 @@
1export * from './abuse'
1export * from './account-block.model' 2export * from './account-block.model'
2export * from './server-block.model' 3export * from './server-block.model'
diff --git a/shared/models/blocklist/server-block.model.ts b/shared/models/moderation/server-block.model.ts
index a8b8af0b7..a8b8af0b7 100644
--- a/shared/models/blocklist/server-block.model.ts
+++ b/shared/models/moderation/server-block.model.ts
diff --git a/shared/models/users/user-notification-setting.model.ts b/shared/models/users/user-notification-setting.model.ts
index 451f40d58..4e2230a76 100644
--- a/shared/models/users/user-notification-setting.model.ts
+++ b/shared/models/users/user-notification-setting.model.ts
@@ -7,7 +7,7 @@ export enum UserNotificationSettingValue {
7export interface UserNotificationSetting { 7export interface UserNotificationSetting {
8 newVideoFromSubscription: UserNotificationSettingValue 8 newVideoFromSubscription: UserNotificationSettingValue
9 newCommentOnMyVideo: UserNotificationSettingValue 9 newCommentOnMyVideo: UserNotificationSettingValue
10 videoAbuseAsModerator: UserNotificationSettingValue 10 abuseAsModerator: UserNotificationSettingValue
11 videoAutoBlacklistAsModerator: UserNotificationSettingValue 11 videoAutoBlacklistAsModerator: UserNotificationSettingValue
12 blacklistOnMyVideo: UserNotificationSettingValue 12 blacklistOnMyVideo: UserNotificationSettingValue
13 myVideoPublished: UserNotificationSettingValue 13 myVideoPublished: UserNotificationSettingValue
diff --git a/shared/models/users/user-notification.model.ts b/shared/models/users/user-notification.model.ts
index e9be1ca7f..5f7c33976 100644
--- a/shared/models/users/user-notification.model.ts
+++ b/shared/models/users/user-notification.model.ts
@@ -3,7 +3,7 @@ import { FollowState } from '../actors'
3export enum UserNotificationType { 3export enum UserNotificationType {
4 NEW_VIDEO_FROM_SUBSCRIPTION = 1, 4 NEW_VIDEO_FROM_SUBSCRIPTION = 1,
5 NEW_COMMENT_ON_MY_VIDEO = 2, 5 NEW_COMMENT_ON_MY_VIDEO = 2,
6 NEW_VIDEO_ABUSE_FOR_MODERATORS = 3, 6 NEW_ABUSE_FOR_MODERATORS = 3,
7 7
8 BLACKLIST_ON_MY_VIDEO = 4, 8 BLACKLIST_ON_MY_VIDEO = 4,
9 UNBLACKLIST_ON_MY_VIDEO = 5, 9 UNBLACKLIST_ON_MY_VIDEO = 5,
@@ -64,9 +64,22 @@ export interface UserNotification {
64 video: VideoInfo 64 video: VideoInfo
65 } 65 }
66 66
67 videoAbuse?: { 67 abuse?: {
68 id: number 68 id: number
69 video: VideoInfo 69
70 video?: VideoInfo
71
72 comment?: {
73 threadId: number
74
75 video: {
76 id: number
77 uuid: string
78 name: string
79 }
80 }
81
82 account?: ActorInfo
70 } 83 }
71 84
72 videoBlacklist?: { 85 videoBlacklist?: {
diff --git a/shared/models/users/user-right.enum.ts b/shared/models/users/user-right.enum.ts
index 2f88a65de..4a7ae4373 100644
--- a/shared/models/users/user-right.enum.ts
+++ b/shared/models/users/user-right.enum.ts
@@ -11,7 +11,7 @@ export enum UserRight {
11 11
12 MANAGE_SERVER_REDUNDANCY, 12 MANAGE_SERVER_REDUNDANCY,
13 13
14 MANAGE_VIDEO_ABUSES, 14 MANAGE_ABUSES,
15 15
16 MANAGE_JOBS, 16 MANAGE_JOBS,
17 17
diff --git a/shared/models/users/user-role.ts b/shared/models/users/user-role.ts
index 2b08b5850..772988c0c 100644
--- a/shared/models/users/user-role.ts
+++ b/shared/models/users/user-role.ts
@@ -20,7 +20,7 @@ const userRoleRights: { [ id in UserRole ]: UserRight[] } = {
20 20
21 [UserRole.MODERATOR]: [ 21 [UserRole.MODERATOR]: [
22 UserRight.MANAGE_VIDEO_BLACKLIST, 22 UserRight.MANAGE_VIDEO_BLACKLIST,
23 UserRight.MANAGE_VIDEO_ABUSES, 23 UserRight.MANAGE_ABUSES,
24 UserRight.REMOVE_ANY_VIDEO, 24 UserRight.REMOVE_ANY_VIDEO,
25 UserRight.REMOVE_ANY_VIDEO_CHANNEL, 25 UserRight.REMOVE_ANY_VIDEO_CHANNEL,
26 UserRight.REMOVE_ANY_VIDEO_PLAYLIST, 26 UserRight.REMOVE_ANY_VIDEO_PLAYLIST,
diff --git a/shared/models/users/user.model.ts b/shared/models/users/user.model.ts
index 6c959ceea..859736b2f 100644
--- a/shared/models/users/user.model.ts
+++ b/shared/models/users/user.model.ts
@@ -31,10 +31,13 @@ export interface User {
31 videoQuotaDaily: number 31 videoQuotaDaily: number
32 videoQuotaUsed?: number 32 videoQuotaUsed?: number
33 videoQuotaUsedDaily?: number 33 videoQuotaUsedDaily?: number
34
34 videosCount?: number 35 videosCount?: number
35 videoAbusesCount?: number 36
36 videoAbusesAcceptedCount?: number 37 abusesCount?: number
37 videoAbusesCreatedCount?: number 38 abusesAcceptedCount?: number
39 abusesCreatedCount?: number
40
38 videoCommentsCount? : number 41 videoCommentsCount? : number
39 42
40 theme: string 43 theme: string
diff --git a/shared/models/videos/abuse/index.ts b/shared/models/videos/abuse/index.ts
deleted file mode 100644
index f70bc736f..000000000
--- a/shared/models/videos/abuse/index.ts
+++ /dev/null
@@ -1,6 +0,0 @@
1export * from './video-abuse-create.model'
2export * from './video-abuse-reason.model'
3export * from './video-abuse-state.model'
4export * from './video-abuse-update.model'
5export * from './video-abuse-video-is.type'
6export * from './video-abuse.model'
diff --git a/shared/models/videos/abuse/video-abuse-create.model.ts b/shared/models/videos/abuse/video-abuse-create.model.ts
deleted file mode 100644
index c93cb8b2c..000000000
--- a/shared/models/videos/abuse/video-abuse-create.model.ts
+++ /dev/null
@@ -1,8 +0,0 @@
1import { VideoAbusePredefinedReasonsString } from './video-abuse-reason.model'
2
3export interface VideoAbuseCreate {
4 reason: string
5 predefinedReasons?: VideoAbusePredefinedReasonsString[]
6 startAt?: number
7 endAt?: number
8}
diff --git a/shared/models/videos/abuse/video-abuse-reason.model.ts b/shared/models/videos/abuse/video-abuse-reason.model.ts
deleted file mode 100644
index 9064f0c1a..000000000
--- a/shared/models/videos/abuse/video-abuse-reason.model.ts
+++ /dev/null
@@ -1,33 +0,0 @@
1export enum VideoAbusePredefinedReasons {
2 VIOLENT_OR_REPULSIVE = 1,
3 HATEFUL_OR_ABUSIVE,
4 SPAM_OR_MISLEADING,
5 PRIVACY,
6 RIGHTS,
7 SERVER_RULES,
8 THUMBNAILS,
9 CAPTIONS
10}
11
12export type VideoAbusePredefinedReasonsString =
13 'violentOrRepulsive' |
14 'hatefulOrAbusive' |
15 'spamOrMisleading' |
16 'privacy' |
17 'rights' |
18 'serverRules' |
19 'thumbnails' |
20 'captions'
21
22export const videoAbusePredefinedReasonsMap: {
23 [key in VideoAbusePredefinedReasonsString]: VideoAbusePredefinedReasons
24} = {
25 violentOrRepulsive: VideoAbusePredefinedReasons.VIOLENT_OR_REPULSIVE,
26 hatefulOrAbusive: VideoAbusePredefinedReasons.HATEFUL_OR_ABUSIVE,
27 spamOrMisleading: VideoAbusePredefinedReasons.SPAM_OR_MISLEADING,
28 privacy: VideoAbusePredefinedReasons.PRIVACY,
29 rights: VideoAbusePredefinedReasons.RIGHTS,
30 serverRules: VideoAbusePredefinedReasons.SERVER_RULES,
31 thumbnails: VideoAbusePredefinedReasons.THUMBNAILS,
32 captions: VideoAbusePredefinedReasons.CAPTIONS
33}
diff --git a/shared/models/videos/abuse/video-abuse-update.model.ts b/shared/models/videos/abuse/video-abuse-update.model.ts
deleted file mode 100644
index 9b32aae48..000000000
--- a/shared/models/videos/abuse/video-abuse-update.model.ts
+++ /dev/null
@@ -1,6 +0,0 @@
1import { VideoAbuseState } from './video-abuse-state.model'
2
3export interface VideoAbuseUpdate {
4 moderationComment?: string
5 state?: VideoAbuseState
6}
diff --git a/shared/models/videos/abuse/video-abuse-video-is.type.ts b/shared/models/videos/abuse/video-abuse-video-is.type.ts
deleted file mode 100644
index e86018993..000000000
--- a/shared/models/videos/abuse/video-abuse-video-is.type.ts
+++ /dev/null
@@ -1 +0,0 @@
1export type VideoAbuseVideoIs = 'deleted' | 'blacklisted'
diff --git a/shared/models/videos/abuse/video-abuse.model.ts b/shared/models/videos/abuse/video-abuse.model.ts
deleted file mode 100644
index 38605dcac..000000000
--- a/shared/models/videos/abuse/video-abuse.model.ts
+++ /dev/null
@@ -1,38 +0,0 @@
1import { Account } from '../../actors/index'
2import { VideoConstant } from '../video-constant.model'
3import { VideoAbuseState } from './video-abuse-state.model'
4import { VideoChannel } from '../channel/video-channel.model'
5import { VideoAbusePredefinedReasonsString } from './video-abuse-reason.model'
6
7export interface VideoAbuse {
8 id: number
9 reason: string
10 predefinedReasons?: VideoAbusePredefinedReasonsString[]
11 reporterAccount: Account
12
13 state: VideoConstant<VideoAbuseState>
14 moderationComment?: string
15
16 video: {
17 id: number
18 name: string
19 uuid: string
20 nsfw: boolean
21 deleted: boolean
22 blacklisted: boolean
23 thumbnailPath?: string
24 channel?: VideoChannel
25 }
26
27 createdAt: Date
28 updatedAt: Date
29
30 startAt: number
31 endAt: number
32
33 count?: number
34 nth?: number
35
36 countReportsForReporter?: number
37 countReportsForReportee?: number
38}
diff --git a/shared/models/videos/index.ts b/shared/models/videos/index.ts
index e1d96b40a..20b9638ab 100644
--- a/shared/models/videos/index.ts
+++ b/shared/models/videos/index.ts
@@ -1,4 +1,3 @@
1export * from './abuse'
2export * from './blacklist' 1export * from './blacklist'
3export * from './caption' 2export * from './caption'
4export * from './channel' 3export * from './channel'