24 lines
964 B
TypeScript
24 lines
964 B
TypeScript
import { apiRequest } from '@/shared/api/client'
|
|
import type { InterstitialBlockDto, InterstitialDto } from '@/shared/api/types'
|
|
|
|
export function listInterstitials() {
|
|
return apiRequest<InterstitialDto[]>('/admin/interstitials')
|
|
}
|
|
|
|
export function listInterstitialBlocks() {
|
|
return apiRequest<InterstitialBlockDto[]>('/admin/interstitials/blocks')
|
|
}
|
|
|
|
/** Превращает загруженные файлы в ролики. Уже привязанные к шоу ассеты сервер пропускает. */
|
|
export function importInterstitials(mediaAssetIds: string[]) {
|
|
return apiRequest<{ imported: number }>('/admin/interstitials/import', {
|
|
method: 'POST',
|
|
body: { mediaAssetIds },
|
|
})
|
|
}
|
|
|
|
/** Плейлист обработанного ассета под admin-роутом (JWT) — грузится через hls.js. */
|
|
export function mediaPreviewUrl(assetId: string) {
|
|
return `/api/admin/media/${assetId}/preview/index.m3u8`
|
|
}
|