aboutsummaryrefslogtreecommitdiffhomepage
path: root/shared
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2021-07-29 11:54:38 +0200
committerChocobozzz <me@florianbigard.com>2021-07-29 11:54:38 +0200
commitd6886027109af42be2e3ec5d14ad166199add11d (patch)
tree3a7603d36ff35a2d623d863f14ab93a2e1e6b7f2 /shared
parentb033851fb54241bb703f86add025229e68cc6f59 (diff)
downloadPeerTube-d6886027109af42be2e3ec5d14ad166199add11d.tar.gz
PeerTube-d6886027109af42be2e3ec5d14ad166199add11d.tar.zst
PeerTube-d6886027109af42be2e3ec5d14ad166199add11d.zip
Refactor search query options
Diffstat (limited to 'shared')
-rw-r--r--shared/core-utils/utils/object.ts4
-rw-r--r--shared/models/search/video-channels-search-query.model.ts6
-rw-r--r--shared/models/search/video-playlists-search-query.model.ts8
-rw-r--r--shared/models/search/videos-common-query.model.ts6
-rw-r--r--shared/models/search/videos-search-query.model.ts8
5 files changed, 29 insertions, 3 deletions
diff --git a/shared/core-utils/utils/object.ts b/shared/core-utils/utils/object.ts
index 7b2bb81d0..9a8a98f9b 100644
--- a/shared/core-utils/utils/object.ts
+++ b/shared/core-utils/utils/object.ts
@@ -1,5 +1,5 @@
1function pick <T extends object> (object: T, keys: (keyof T)[]) { 1function pick <O extends object, K extends keyof O> (object: O, keys: K[]): Pick<O, K> {
2 const result: Partial<T> = {} 2 const result: any = {}
3 3
4 for (const key of keys) { 4 for (const key of keys) {
5 if (Object.prototype.hasOwnProperty.call(object, key)) { 5 if (Object.prototype.hasOwnProperty.call(object, key)) {
diff --git a/shared/models/search/video-channels-search-query.model.ts b/shared/models/search/video-channels-search-query.model.ts
index 77cea4a59..b68a1e80b 100644
--- a/shared/models/search/video-channels-search-query.model.ts
+++ b/shared/models/search/video-channels-search-query.model.ts
@@ -10,3 +10,9 @@ export interface VideoChannelsSearchQuery extends SearchTargetQuery {
10 host?: string 10 host?: string
11 handles?: string[] 11 handles?: string[]
12} 12}
13
14export interface VideoChannelsSearchQueryAfterSanitize extends VideoChannelsSearchQuery {
15 start: number
16 count: number
17 sort: string
18}
diff --git a/shared/models/search/video-playlists-search-query.model.ts b/shared/models/search/video-playlists-search-query.model.ts
index 55393c92a..d9027eb5b 100644
--- a/shared/models/search/video-playlists-search-query.model.ts
+++ b/shared/models/search/video-playlists-search-query.model.ts
@@ -8,5 +8,13 @@ export interface VideoPlaylistsSearchQuery extends SearchTargetQuery {
8 sort?: string 8 sort?: string
9 9
10 host?: string 10 host?: string
11
12 // UUIDs or short UUIDs
11 uuids?: string[] 13 uuids?: string[]
12} 14}
15
16export interface VideoPlaylistsSearchQueryAfterSanitize extends VideoPlaylistsSearchQuery {
17 start: number
18 count: number
19 sort: string
20}
diff --git a/shared/models/search/videos-common-query.model.ts b/shared/models/search/videos-common-query.model.ts
index 179266338..2f2e9a934 100644
--- a/shared/models/search/videos-common-query.model.ts
+++ b/shared/models/search/videos-common-query.model.ts
@@ -25,6 +25,12 @@ export interface VideosCommonQuery {
25 skipCount?: boolean 25 skipCount?: boolean
26} 26}
27 27
28export interface VideosCommonQueryAfterSanitize extends VideosCommonQuery {
29 start: number
30 count: number
31 sort: string
32}
33
28export interface VideosWithSearchCommonQuery extends VideosCommonQuery { 34export interface VideosWithSearchCommonQuery extends VideosCommonQuery {
29 search?: string 35 search?: string
30} 36}
diff --git a/shared/models/search/videos-search-query.model.ts b/shared/models/search/videos-search-query.model.ts
index 736d89577..a5436879d 100644
--- a/shared/models/search/videos-search-query.model.ts
+++ b/shared/models/search/videos-search-query.model.ts
@@ -15,6 +15,12 @@ export interface VideosSearchQuery extends SearchTargetQuery, VideosCommonQuery
15 durationMin?: number // seconds 15 durationMin?: number // seconds
16 durationMax?: number // seconds 16 durationMax?: number // seconds
17 17
18 // UUIDs or short 18 // UUIDs or short UUIDs
19 uuids?: string[] 19 uuids?: string[]
20} 20}
21
22export interface VideosSearchQueryAfterSanitize extends VideosSearchQuery {
23 start: number
24 count: number
25 sort: string
26}