+import { forkJoin } from 'rxjs'
import { map, switchMap } from 'rxjs/operators'
import { AfterViewInit, Component, EventEmitter, OnInit, Output } from '@angular/core'
import { Router } from '@angular/router'
import { AuthService, CanComponentDeactivate, HooksService, Notifier, ServerService } from '@app/core'
-import { getAbsoluteAPIUrl, scrollToTop } from '@app/helpers'
+import { scrollToTop } from '@app/helpers'
import { FormValidatorService } from '@app/shared/shared-forms'
import { VideoCaptionService, VideoEdit, VideoImportService, VideoService } from '@app/shared/shared-main'
import { LoadingBarService } from '@ngx-loading-bar/core'
this.videoImportService
.importVideoUrl(this.targetUrl, videoUpdate)
.pipe(
- switchMap(res => {
- return this.videoCaptionService
- .listCaptions(res.video.uuid)
- .pipe(
- map(result => ({ video: res.video, videoCaptions: result.data }))
- )
+ switchMap(previous => {
+ return forkJoin([
+ this.videoCaptionService.listCaptions(previous.video.uuid),
+ this.videoService.getVideo({ videoId: previous.video.uuid })
+ ]).pipe(map(([ videoCaptionsResult, video ]) => ({ videoCaptions: videoCaptionsResult.data, video })))
})
)
.subscribe({
this.isImportingVideo = false
this.hasImportedVideo = true
- const absoluteAPIUrl = getAbsoluteAPIUrl()
-
- const thumbnailUrl = video.thumbnailPath
- ? absoluteAPIUrl + video.thumbnailPath
- : null
-
- const previewUrl = video.previewPath
- ? absoluteAPIUrl + video.previewPath
- : null
-
- this.video = new VideoEdit(Object.assign(video, {
- commentsEnabled: videoUpdate.commentsEnabled,
- downloadEnabled: videoUpdate.downloadEnabled,
- privacy: { id: this.firstStepPrivacyId },
- support: null,
- thumbnailUrl,
- previewUrl
- }))
+ this.video = new VideoEdit(video)
+ this.video.patch({ privacy: this.firstStepPrivacyId })
this.videoCaptions = videoCaptions