@bitmovin/api-sdk
Version:
Bitmovin JS/TS API SDK
80 lines (79 loc) • 3.42 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const BaseAPI_1 = require("../../../../common/BaseAPI");
const Mapper_1 = require("../../../../common/Mapper");
const CustomdataApi_1 = require("./customdata/CustomdataApi");
const BitmovinResponse_1 = require("../../../../models/BitmovinResponse");
const DvbSubtitleConfiguration_1 = require("../../../../models/DvbSubtitleConfiguration");
const PaginationResponse_1 = require("../../../../models/PaginationResponse");
const DvbSubtitleConfigurationListQueryParams_1 = require("./DvbSubtitleConfigurationListQueryParams");
/**
* DvbSubtitleApi - object-oriented interface
* @export
* @class DvbSubtitleApi
* @extends {BaseAPI}
*/
class DvbSubtitleApi extends BaseAPI_1.BaseAPI {
constructor(configuration) {
super(configuration);
this.customdata = new CustomdataApi_1.default(configuration);
}
/**
* @summary Create DVB-SUB subtitle configuration
* @param {DvbSubtitleConfiguration} dvbSubtitleConfiguration The DVB-SUB subtitle configuration to be created
* @throws {BitmovinError}
* @memberof DvbSubtitleApi
*/
create(dvbSubtitleConfiguration) {
return this.restClient.post('/encoding/configurations/subtitles/dvb-subtitle', {}, dvbSubtitleConfiguration).then((response) => {
return (0, Mapper_1.map)(response, DvbSubtitleConfiguration_1.default);
});
}
/**
* @summary Delete DVB-SUB subtitle configuration
* @param {string} configurationId Id of the subtitle configuration
* @throws {BitmovinError}
* @memberof DvbSubtitleApi
*/
delete(configurationId) {
const pathParamMap = {
configuration_id: configurationId
};
return this.restClient.delete('/encoding/configurations/subtitles/dvb-subtitle/{configuration_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, BitmovinResponse_1.default);
});
}
/**
* @summary DVB-SUB subtitle configuration details
* @param {string} configurationId Id of the codec configuration
* @throws {BitmovinError}
* @memberof DvbSubtitleApi
*/
get(configurationId) {
const pathParamMap = {
configuration_id: configurationId
};
return this.restClient.get('/encoding/configurations/subtitles/dvb-subtitle/{configuration_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, DvbSubtitleConfiguration_1.default);
});
}
/**
* @summary List DVB-SUB subtitle configurations
* @param {*} [queryParameters] query parameters for filtering, sorting and pagination
* @throws {BitmovinError}
* @memberof DvbSubtitleApi
*/
list(queryParameters) {
let queryParams = {};
if (typeof queryParameters === 'function') {
queryParams = queryParameters(new DvbSubtitleConfigurationListQueryParams_1.DvbSubtitleConfigurationListQueryParamsBuilder()).buildQueryParams();
}
else if (queryParameters) {
queryParams = queryParameters;
}
return this.restClient.get('/encoding/configurations/subtitles/dvb-subtitle', {}, queryParams).then((response) => {
return new PaginationResponse_1.default(response, DvbSubtitleConfiguration_1.default);
});
}
}
exports.default = DvbSubtitleApi;