import { createReadStream, stat } from 'fs-extra'
import got, { Response as GotResponse } from 'got'
import validator from 'validator'
-import { buildAbsoluteFixturePath, omit, pick, wait } from '@shared/core-utils'
+import { buildAbsoluteFixturePath, getAllPrivacies, omit, pick, wait } from '@shared/core-utils'
import { buildUUID } from '@shared/extra-utils'
import {
HttpStatusCode,
VideoCreateResult,
VideoDetails,
VideoFileMetadata,
+ VideoInclude,
VideoPrivacy,
VideosCommonQuery,
VideoTranscodingCreate
})
}
+ listMySubscriptionVideos (options: OverrideCommandOptions & VideosCommonQuery = {}) {
+ const { sort = '-createdAt' } = options
+ const path = '/api/v1/users/me/subscriptions/videos'
+
+ return this.getRequestBody<ResultList<Video>>({
+ ...options,
+
+ path,
+ query: { sort, ...this.buildListQuery(options) },
+ implicitToken: true,
+ defaultExpectedStatus: HttpStatusCode.OK_200
+ })
+ }
+
// ---------------------------------------------------------------------------
list (options: OverrideCommandOptions & VideosCommonQuery = {}) {
})
}
+ listAllForAdmin (options: OverrideCommandOptions & VideosCommonQuery = {}) {
+ const include = VideoInclude.NOT_PUBLISHED_STATE | VideoInclude.BLACKLISTED | VideoInclude.BLOCKED_OWNER
+ const nsfw = 'both'
+ const privacyOneOf = getAllPrivacies()
+
+ return this.list({
+ ...options,
+
+ include,
+ nsfw,
+ privacyOneOf,
+
+ token: this.buildCommonRequestToken({ ...options, implicitToken: true })
+ })
+ }
+
listByAccount (options: OverrideCommandOptions & VideosCommonQuery & {
handle: string
}) {