@bitmovin/api-sdk
Version:
Bitmovin JS/TS API SDK
125 lines (124 loc) • 5.05 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const BaseAPI_1 = require("../common/BaseAPI");
const Mapper_1 = require("../common/Mapper");
const WebhooksApi_1 = require("./webhooks/WebhooksApi");
const StatesApi_1 = require("./states/StatesApi");
const EmailsApi_1 = require("./emails/EmailsApi");
const BitmovinResponse_1 = require("../models/BitmovinResponse");
const Notification_1 = require("../models/Notification");
const NotificationStateEntry_1 = require("../models/NotificationStateEntry");
const PaginationResponse_1 = require("../models/PaginationResponse");
const NotificationListQueryParams_1 = require("./NotificationListQueryParams");
const NotificationStateEntryListByNotificationIdQueryParams_1 = require("./NotificationStateEntryListByNotificationIdQueryParams");
/**
* NotificationsApi - object-oriented interface
* @export
* @class NotificationsApi
* @extends {BaseAPI}
*/
class NotificationsApi extends BaseAPI_1.BaseAPI {
constructor(configuration) {
super(configuration);
this.webhooks = new WebhooksApi_1.default(configuration);
this.states = new StatesApi_1.default(configuration);
this.emails = new EmailsApi_1.default(configuration);
}
/**
* @summary Delete Notification
* @param {string} notificationId Id of the notification
* @throws {BitmovinError}
* @memberof NotificationsApi
*/
delete(notificationId) {
const pathParamMap = {
notification_id: notificationId
};
return this.restClient.delete('/notifications/{notification_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, BitmovinResponse_1.default);
});
}
/**
* @summary Get Notification
* @param {string} notificationId Id of the notification
* @throws {BitmovinError}
* @memberof NotificationsApi
*/
get(notificationId) {
const pathParamMap = {
notification_id: notificationId
};
return this.restClient.get('/notifications/{notification_id}', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, Notification_1.default);
});
}
/**
* @summary List Notifications
* @param {*} [queryParameters] query parameters for filtering, sorting and pagination
* @throws {BitmovinError}
* @memberof NotificationsApi
*/
list(queryParameters) {
let queryParams = {};
if (typeof queryParameters === 'function') {
queryParams = queryParameters(new NotificationListQueryParams_1.NotificationListQueryParamsBuilder()).buildQueryParams();
}
else if (queryParameters) {
queryParams = queryParameters;
}
return this.restClient.get('/notifications', {}, queryParams).then((response) => {
return new PaginationResponse_1.default(response, Notification_1.default);
});
}
/**
* @summary List Notification State History (All Resources)
* @param {string} notificationId Id of the notification
* @param {*} [queryParameters] query parameters for filtering, sorting and pagination
* @throws {BitmovinError}
* @memberof NotificationsApi
*/
listByNotificationId(notificationId, queryParameters) {
const pathParamMap = {
notification_id: notificationId
};
let queryParams = {};
if (typeof queryParameters === 'function') {
queryParams = queryParameters(new NotificationStateEntryListByNotificationIdQueryParams_1.NotificationStateEntryListByNotificationIdQueryParamsBuilder()).buildQueryParams();
}
else if (queryParameters) {
queryParams = queryParameters;
}
return this.restClient.get('/notifications/{notification_id}/states', pathParamMap, queryParams).then((response) => {
return new PaginationResponse_1.default(response, NotificationStateEntry_1.default);
});
}
/**
* @summary Mute Notification
* @param {string} notificationId Id of the notification
* @throws {BitmovinError}
* @memberof NotificationsApi
*/
mute(notificationId) {
const pathParamMap = {
notification_id: notificationId
};
return this.restClient.post('/notifications/{notification_id}/mute', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, BitmovinResponse_1.default);
});
}
/**
* @summary Unmute Notification
* @param {string} notificationId Id of the notification
* @throws {BitmovinError}
* @memberof NotificationsApi
*/
unmute(notificationId) {
const pathParamMap = {
notification_id: notificationId
};
return this.restClient.post('/notifications/{notification_id}/unmute', pathParamMap).then((response) => {
return (0, Mapper_1.map)(response, BitmovinResponse_1.default);
});
}
}
exports.default = NotificationsApi;