mirror of https://github.com/Chocobozzz/PeerTube
				
				
				
			
		
			
				
	
	
		
			82 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			TypeScript
		
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			TypeScript
		
	
	
import { pick } from '@peertube/peertube-core-utils'
 | 
						|
import {
 | 
						|
  VideoChannelsSearchQueryAfterSanitize,
 | 
						|
  VideoPlaylistsSearchQueryAfterSanitize,
 | 
						|
  VideosCommonQueryAfterSanitize,
 | 
						|
  VideosSearchQueryAfterSanitize
 | 
						|
} from '@peertube/peertube-models'
 | 
						|
 | 
						|
function pickCommonVideoQuery (query: VideosCommonQueryAfterSanitize) {
 | 
						|
  return pick(query, [
 | 
						|
    'start',
 | 
						|
    'count',
 | 
						|
    'sort',
 | 
						|
    'nsfw',
 | 
						|
    'isLive',
 | 
						|
    'categoryOneOf',
 | 
						|
    'licenceOneOf',
 | 
						|
    'languageOneOf',
 | 
						|
    'privacyOneOf',
 | 
						|
    'tagsOneOf',
 | 
						|
    'tagsAllOf',
 | 
						|
    'isLocal',
 | 
						|
    'include',
 | 
						|
    'skipCount',
 | 
						|
    'hasHLSFiles',
 | 
						|
    'hasWebtorrentFiles', // TODO: Remove in v7
 | 
						|
    'hasWebVideoFiles',
 | 
						|
    'search',
 | 
						|
    'excludeAlreadyWatched'
 | 
						|
  ])
 | 
						|
}
 | 
						|
 | 
						|
function pickSearchVideoQuery (query: VideosSearchQueryAfterSanitize) {
 | 
						|
  return {
 | 
						|
    ...pickCommonVideoQuery(query),
 | 
						|
 | 
						|
    ...pick(query, [
 | 
						|
      'searchTarget',
 | 
						|
      'host',
 | 
						|
      'startDate',
 | 
						|
      'endDate',
 | 
						|
      'originallyPublishedStartDate',
 | 
						|
      'originallyPublishedEndDate',
 | 
						|
      'durationMin',
 | 
						|
      'durationMax',
 | 
						|
      'uuids',
 | 
						|
      'excludeAlreadyWatched'
 | 
						|
    ])
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
function pickSearchChannelQuery (query: VideoChannelsSearchQueryAfterSanitize) {
 | 
						|
  return pick(query, [
 | 
						|
    'searchTarget',
 | 
						|
    'search',
 | 
						|
    'start',
 | 
						|
    'count',
 | 
						|
    'sort',
 | 
						|
    'host',
 | 
						|
    'handles'
 | 
						|
  ])
 | 
						|
}
 | 
						|
 | 
						|
function pickSearchPlaylistQuery (query: VideoPlaylistsSearchQueryAfterSanitize) {
 | 
						|
  return pick(query, [
 | 
						|
    'searchTarget',
 | 
						|
    'search',
 | 
						|
    'start',
 | 
						|
    'count',
 | 
						|
    'sort',
 | 
						|
    'host',
 | 
						|
    'uuids'
 | 
						|
  ])
 | 
						|
}
 | 
						|
 | 
						|
export {
 | 
						|
  pickCommonVideoQuery,
 | 
						|
  pickSearchVideoQuery,
 | 
						|
  pickSearchPlaylistQuery,
 | 
						|
  pickSearchChannelQuery
 | 
						|
}
 |