diff options
Diffstat (limited to 'shared')
-rw-r--r-- | shared/extra-utils/videos/videos-command.ts | 10 | ||||
-rw-r--r-- | shared/models/search/videos-common-query.model.ts | 17 | ||||
-rw-r--r-- | shared/models/search/videos-search-query.model.ts | 3 | ||||
-rw-r--r-- | shared/models/videos/index.ts | 3 | ||||
-rw-r--r-- | shared/models/videos/video-filter.type.ts (renamed from shared/models/videos/video-query.type.ts) | 0 | ||||
-rw-r--r-- | shared/models/videos/video-include.enum.ts | 7 | ||||
-rw-r--r-- | shared/models/videos/video.model.ts | 20 |
7 files changed, 40 insertions, 20 deletions
diff --git a/shared/extra-utils/videos/videos-command.ts b/shared/extra-utils/videos/videos-command.ts index c1a9ec806..68241f062 100644 --- a/shared/extra-utils/videos/videos-command.ts +++ b/shared/extra-utils/videos/videos-command.ts | |||
@@ -18,8 +18,7 @@ import { | |||
18 | VideoDetails, | 18 | VideoDetails, |
19 | VideoFileMetadata, | 19 | VideoFileMetadata, |
20 | VideoPrivacy, | 20 | VideoPrivacy, |
21 | VideosCommonQuery, | 21 | VideosCommonQuery |
22 | VideosWithSearchCommonQuery | ||
23 | } from '@shared/models' | 22 | } from '@shared/models' |
24 | import { buildAbsoluteFixturePath, wait } from '../miscs' | 23 | import { buildAbsoluteFixturePath, wait } from '../miscs' |
25 | import { unwrapBody } from '../requests' | 24 | import { unwrapBody } from '../requests' |
@@ -246,7 +245,7 @@ export class VideosCommand extends AbstractCommand { | |||
246 | }) | 245 | }) |
247 | } | 246 | } |
248 | 247 | ||
249 | listByAccount (options: OverrideCommandOptions & VideosWithSearchCommonQuery & { | 248 | listByAccount (options: OverrideCommandOptions & VideosCommonQuery & { |
250 | handle: string | 249 | handle: string |
251 | }) { | 250 | }) { |
252 | const { handle, search } = options | 251 | const { handle, search } = options |
@@ -262,7 +261,7 @@ export class VideosCommand extends AbstractCommand { | |||
262 | }) | 261 | }) |
263 | } | 262 | } |
264 | 263 | ||
265 | listByChannel (options: OverrideCommandOptions & VideosWithSearchCommonQuery & { | 264 | listByChannel (options: OverrideCommandOptions & VideosCommonQuery & { |
266 | handle: string | 265 | handle: string |
267 | }) { | 266 | }) { |
268 | const { handle } = options | 267 | const { handle } = options |
@@ -605,7 +604,8 @@ export class VideosCommand extends AbstractCommand { | |||
605 | 'languageOneOf', | 604 | 'languageOneOf', |
606 | 'tagsOneOf', | 605 | 'tagsOneOf', |
607 | 'tagsAllOf', | 606 | 'tagsAllOf', |
608 | 'filter', | 607 | 'isLocal', |
608 | 'include', | ||
609 | 'skipCount' | 609 | 'skipCount' |
610 | ]) | 610 | ]) |
611 | } | 611 | } |
diff --git a/shared/models/search/videos-common-query.model.ts b/shared/models/search/videos-common-query.model.ts index 2f2e9a934..55a98e302 100644 --- a/shared/models/search/videos-common-query.model.ts +++ b/shared/models/search/videos-common-query.model.ts | |||
@@ -1,4 +1,4 @@ | |||
1 | import { VideoFilter } from '../videos' | 1 | import { VideoInclude } from '../videos/video-include.enum' |
2 | import { BooleanBothQuery } from './boolean-both-query.model' | 2 | import { BooleanBothQuery } from './boolean-both-query.model' |
3 | 3 | ||
4 | // These query parameters can be used with any endpoint that list videos | 4 | // These query parameters can be used with any endpoint that list videos |
@@ -11,6 +11,12 @@ export interface VideosCommonQuery { | |||
11 | 11 | ||
12 | isLive?: boolean | 12 | isLive?: boolean |
13 | 13 | ||
14 | // FIXME: deprecated in 4.0 in favour of isLocal and include, to remove | ||
15 | filter?: never | ||
16 | |||
17 | isLocal?: boolean | ||
18 | include?: VideoInclude | ||
19 | |||
14 | categoryOneOf?: number[] | 20 | categoryOneOf?: number[] |
15 | 21 | ||
16 | licenceOneOf?: number[] | 22 | licenceOneOf?: number[] |
@@ -20,17 +26,16 @@ export interface VideosCommonQuery { | |||
20 | tagsOneOf?: string[] | 26 | tagsOneOf?: string[] |
21 | tagsAllOf?: string[] | 27 | tagsAllOf?: string[] |
22 | 28 | ||
23 | filter?: VideoFilter | ||
24 | |||
25 | skipCount?: boolean | 29 | skipCount?: boolean |
30 | |||
31 | search?: string | ||
26 | } | 32 | } |
27 | 33 | ||
28 | export interface VideosCommonQueryAfterSanitize extends VideosCommonQuery { | 34 | export interface VideosCommonQueryAfterSanitize extends VideosCommonQuery { |
29 | start: number | 35 | start: number |
30 | count: number | 36 | count: number |
31 | sort: string | 37 | sort: string |
32 | } | ||
33 | 38 | ||
34 | export interface VideosWithSearchCommonQuery extends VideosCommonQuery { | 39 | // FIXME: deprecated in 4.0, to remove |
35 | search?: string | 40 | filter?: never |
36 | } | 41 | } |
diff --git a/shared/models/search/videos-search-query.model.ts b/shared/models/search/videos-search-query.model.ts index a5436879d..447c72806 100644 --- a/shared/models/search/videos-search-query.model.ts +++ b/shared/models/search/videos-search-query.model.ts | |||
@@ -23,4 +23,7 @@ export interface VideosSearchQueryAfterSanitize extends VideosSearchQuery { | |||
23 | start: number | 23 | start: number |
24 | count: number | 24 | count: number |
25 | sort: string | 25 | sort: string |
26 | |||
27 | // FIXME: deprecated in 4.0, to remove | ||
28 | filter?: never | ||
26 | } | 29 | } |
diff --git a/shared/models/videos/index.ts b/shared/models/videos/index.ts index 733c433a0..3d3eedcc6 100644 --- a/shared/models/videos/index.ts +++ b/shared/models/videos/index.ts | |||
@@ -19,7 +19,8 @@ export * from './video-file-metadata.model' | |||
19 | export * from './video-file.model' | 19 | export * from './video-file.model' |
20 | 20 | ||
21 | export * from './video-privacy.enum' | 21 | export * from './video-privacy.enum' |
22 | export * from './video-query.type' | 22 | export * from './video-filter.type' |
23 | export * from './video-include.enum' | ||
23 | export * from './video-rate.type' | 24 | export * from './video-rate.type' |
24 | export * from './video-resolution.enum' | 25 | export * from './video-resolution.enum' |
25 | 26 | ||
diff --git a/shared/models/videos/video-query.type.ts b/shared/models/videos/video-filter.type.ts index e641a401c..e641a401c 100644 --- a/shared/models/videos/video-query.type.ts +++ b/shared/models/videos/video-filter.type.ts | |||
diff --git a/shared/models/videos/video-include.enum.ts b/shared/models/videos/video-include.enum.ts new file mode 100644 index 000000000..fa720b348 --- /dev/null +++ b/shared/models/videos/video-include.enum.ts | |||
@@ -0,0 +1,7 @@ | |||
1 | export const enum VideoInclude { | ||
2 | NONE = 0, | ||
3 | NOT_PUBLISHED_STATE = 1 << 0, | ||
4 | HIDDEN_PRIVACY = 1 << 1, | ||
5 | BLACKLISTED = 1 << 2, | ||
6 | BLOCKED_OWNER = 1 << 3 | ||
7 | } | ||
diff --git a/shared/models/videos/video.model.ts b/shared/models/videos/video.model.ts index 4a7e399a2..dadde38af 100644 --- a/shared/models/videos/video.model.ts +++ b/shared/models/videos/video.model.ts | |||
@@ -43,13 +43,6 @@ export interface Video { | |||
43 | dislikes: number | 43 | dislikes: number |
44 | nsfw: boolean | 44 | nsfw: boolean |
45 | 45 | ||
46 | waitTranscoding?: boolean | ||
47 | state?: VideoConstant<VideoState> | ||
48 | scheduledUpdate?: VideoScheduleUpdate | ||
49 | |||
50 | blacklisted?: boolean | ||
51 | blacklistedReason?: string | ||
52 | |||
53 | account: AccountSummary | 46 | account: AccountSummary |
54 | channel: VideoChannelSummary | 47 | channel: VideoChannelSummary |
55 | 48 | ||
@@ -58,6 +51,17 @@ export interface Video { | |||
58 | } | 51 | } |
59 | 52 | ||
60 | pluginData?: any | 53 | pluginData?: any |
54 | |||
55 | // Additional attributes dependending on the query | ||
56 | waitTranscoding?: boolean | ||
57 | state?: VideoConstant<VideoState> | ||
58 | scheduledUpdate?: VideoScheduleUpdate | ||
59 | |||
60 | blacklisted?: boolean | ||
61 | blacklistedReason?: string | ||
62 | |||
63 | blockedOwner?: boolean | ||
64 | blockedServer?: boolean | ||
61 | } | 65 | } |
62 | 66 | ||
63 | export interface VideoDetails extends Video { | 67 | export interface VideoDetails extends Video { |
@@ -70,7 +74,7 @@ export interface VideoDetails extends Video { | |||
70 | commentsEnabled: boolean | 74 | commentsEnabled: boolean |
71 | downloadEnabled: boolean | 75 | downloadEnabled: boolean |
72 | 76 | ||
73 | // Not optional in details (unlike in Video) | 77 | // Not optional in details (unlike in parent Video) |
74 | waitTranscoding: boolean | 78 | waitTranscoding: boolean |
75 | state: VideoConstant<VideoState> | 79 | state: VideoConstant<VideoState> |
76 | 80 | ||