if (thumbnailModel) await videoUpdated.addAndSaveThumbnail(thumbnailModel, t)
- const previewUrl = videoUpdated.getPreview().getFileUrl(videoUpdated)
- const previewModel = createPlaceholderThumbnail(previewUrl, video, ThumbnailType.PREVIEW, PREVIEWS_SIZE)
- await videoUpdated.addAndSaveThumbnail(previewModel, t)
+ if (videoUpdated.getPreview()) {
+ const previewUrl = videoUpdated.getPreview().getFileUrl(videoUpdated)
+ const previewModel = createPlaceholderThumbnail(previewUrl, video, ThumbnailType.PREVIEW, PREVIEWS_SIZE)
+ await videoUpdated.addAndSaveThumbnail(previewModel, t)
+ }
{
const videoFileAttributes = videoFileActivityUrlToDBAttributes(videoUpdated, videoObject.url)
const video = VideoModel.build(videoData) as MVideoThumbnail
const promiseThumbnail = createVideoMiniatureFromUrl(getThumbnailFromIcons(videoObject).url, video, ThumbnailType.MINIATURE)
+ .catch(err => {
+ logger.error('Cannot create miniature from url.', { err })
+ return undefined
+ })
let thumbnailModel: MThumbnail
if (waitThumbnail === true) {
})
if (waitThumbnail === false) {
+ // Error is already caught above
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
promiseThumbnail.then(thumbnailModel => {
+ if (!thumbnailModel) return
+
thumbnailModel = videoCreated.id
return thumbnailModel.save()
- }).catch(err => logger.error('Cannot create miniature from url.', { err }))
+ })
}
return { autoBlacklisted, videoCreated }
const privacy = to.indexOf(ACTIVITY_PUB.PUBLIC) !== -1 ? VideoPrivacy.PUBLIC : VideoPrivacy.UNLISTED
const duration = videoObject.duration.replace(/[^\d]+/, '')
- let language: string | undefined
- if (videoObject.language) {
- language = videoObject.language.identifier
- }
+ const language = videoObject.language?.identifier
- let category: number | undefined
- if (videoObject.category) {
- category = parseInt(videoObject.category.identifier, 10)
- }
+ const category = videoObject.category
+ ? parseInt(videoObject.category.identifier, 10)
+ : undefined
- let licence: number | undefined
- if (videoObject.licence) {
- licence = parseInt(videoObject.licence.identifier, 10)
- }
+ const licence = videoObject.licence
+ ? parseInt(videoObject.licence.identifier, 10)
+ : undefined
const description = videoObject.content || null
const support = videoObject.support || null
duration: parseInt(duration, 10),
createdAt: new Date(videoObject.published),
publishedAt: new Date(videoObject.published),
- originallyPublishedAt: videoObject.originallyPublishedAt ? new Date(videoObject.originallyPublishedAt) : null,
+
+ originallyPublishedAt: videoObject.originallyPublishedAt
+ ? new Date(videoObject.originallyPublishedAt)
+ : null,
+
updatedAt: new Date(videoObject.updated),
views: videoObject.views,
likes: 0,