UNPKG

@bitmovin/api-sdk

Version:

Bitmovin JS/TS API SDK

90 lines (89 loc) 3.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const BaseAPI_1 = require("../../../../../common/BaseAPI"); const Mapper_1 = require("../../../../../common/Mapper"); const BitmovinResponse_1 = require("../../../../../models/BitmovinResponse"); const VttMediaInfo_1 = require("../../../../../models/VttMediaInfo"); const PaginationResponse_1 = require("../../../../../models/PaginationResponse"); const VttMediaInfoListQueryParams_1 = require("./VttMediaInfoListQueryParams"); /** * VttApi - object-oriented interface * @export * @class VttApi * @extends {BaseAPI} */ class VttApi extends BaseAPI_1.BaseAPI { constructor(configuration) { super(configuration); } /** * @summary Add VTT Media * @param {string} manifestId Id of the hls manifest. * @param {VttMediaInfo} vttMediaInfo The VTT Media to be added * @throws {BitmovinError} * @memberof VttApi */ create(manifestId, vttMediaInfo) { const pathParamMap = { manifest_id: manifestId }; return this.restClient.post('/encoding/manifests/hls/{manifest_id}/media/vtt', pathParamMap, vttMediaInfo).then((response) => { return (0, Mapper_1.map)(response, VttMediaInfo_1.default); }); } /** * @summary Delete VTT Media * @param {string} manifestId Id of the hls manifest. * @param {string} mediaId Id of the VTT media. * @throws {BitmovinError} * @memberof VttApi */ delete(manifestId, mediaId) { const pathParamMap = { manifest_id: manifestId, media_id: mediaId }; return this.restClient.delete('/encoding/manifests/hls/{manifest_id}/media/vtt/{media_id}', pathParamMap).then((response) => { return (0, Mapper_1.map)(response, BitmovinResponse_1.default); }); } /** * @summary VTT Media Details * @param {string} manifestId Id of the hls manifest. * @param {string} mediaId Id of the VTT media. * @throws {BitmovinError} * @memberof VttApi */ get(manifestId, mediaId) { const pathParamMap = { manifest_id: manifestId, media_id: mediaId }; return this.restClient.get('/encoding/manifests/hls/{manifest_id}/media/vtt/{media_id}', pathParamMap).then((response) => { return (0, Mapper_1.map)(response, VttMediaInfo_1.default); }); } /** * @summary List all VTT Media * @param {string} manifestId Id of the hls manifest. * @param {*} [queryParameters] query parameters for filtering, sorting and pagination * @throws {BitmovinError} * @memberof VttApi */ list(manifestId, queryParameters) { const pathParamMap = { manifest_id: manifestId }; let queryParams = {}; if (typeof queryParameters === 'function') { queryParams = queryParameters(new VttMediaInfoListQueryParams_1.VttMediaInfoListQueryParamsBuilder()).buildQueryParams(); } else if (queryParameters) { queryParams = queryParameters; } return this.restClient.get('/encoding/manifests/hls/{manifest_id}/media/vtt', pathParamMap, queryParams).then((response) => { return new PaginationResponse_1.default(response, VttMediaInfo_1.default); }); } } exports.default = VttApi;