sepia-search-motore-di-rice.../server/types/video.model.ts

44 lines
1.1 KiB
TypeScript
Raw Normal View History

import { Video, VideoDetails } from '@peertube/peertube-types'
2021-06-24 15:18:54 +02:00
import { IndexableDoc } from './indexable-doc.model'
import { DBChannel, DBChannelSummary } from './channel.model'
import { DBAccount, DBAccountSummary } from './account.model'
2020-02-14 16:14:45 +01:00
export interface IndexableVideo extends Video, IndexableDoc {
}
export interface IndexableVideoDetails extends VideoDetails, IndexableDoc {
}
type IgnoredVideoFields = 'isLocal' | 'createdAt' | 'updatedAt' | 'publishedAt' | 'originallyPublishedAt' | 'channel' | 'account'
interface DBVideoShared {
indexedAt: number
2020-08-27 14:44:21 +02:00
createdAt: number
updatedAt: number
publishedAt: number
originallyPublishedAt: number
2020-02-14 16:14:45 +01:00
host: string
2020-06-05 14:37:39 +02:00
url: string
}
export interface DBVideo extends Omit<Video, IgnoredVideoFields>, DBVideoShared {
account: DBAccountSummary
channel: DBChannelSummary
}
export interface DBVideoDetails extends Omit<VideoDetails, IgnoredVideoFields>, DBVideoShared {
account: DBAccount
channel: DBChannel
_rankingScore?: number
2020-02-14 16:14:45 +01:00
}
2020-08-27 14:44:21 +02:00
// Results from the search API
export interface APIVideo extends Video {
2020-08-27 14:44:21 +02:00
tags: VideoDetails['tags']
score: number
}