baasic-sdk-javascript
Version:
JavaScript SDK provides core functionality for building web and mobile applications on [Baasic](http://www.baasic.com/).
85 lines (84 loc) • 4.47 kB
JavaScript
;
/* globals module */
/**
* @module articleSubscriptionsArticleClient
* @description Article Subscriptions Article Client provides an easy way to consume Articles REST API end-points. In order to obtain needed routes `articleSubscriptionsArticleClient` uses `articleSubscriptionsArticleRoute`.
*/
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var inversify_1 = require("inversify");
var httpApi_1 = require("../../../httpApi");
var __1 = require("../");
var ArticleSubscriptionsArticleClient = /** @class */ (function () {
function ArticleSubscriptionsArticleClient(articleSubscriptionsArticleRoute, apiClient) {
this.articleSubscriptionsArticleRoute = articleSubscriptionsArticleRoute;
this.apiClient = apiClient;
}
Object.defineProperty(ArticleSubscriptionsArticleClient.prototype, "routeDefinition", {
get: function () {
return this.articleSubscriptionsArticleRoute;
},
enumerable: true,
configurable: true
});
/**
* Returns a promise that is resolved once the subscribe action has been performed. This action subscribes an user to the specified article.
* @method
* @param article The article identifier.
* @param data The subscribe information.
* @returns A promise that is resolved once the subscribe action has been performed.
* @example articleSubscriptionsArticleClient.subscribe(article, user)
.then(function (data) {
// perform success action here
},
function (response, status, headers, config) {
// perform error handling here
});
**/
ArticleSubscriptionsArticleClient.prototype.subscribe = function (article, data) {
return this.apiClient.post(this.routeDefinition.subscribe(article, data), this.routeDefinition.subscribeParams(article, data));
};
/**
* Returns a promise that is resolved once the isSubscribed action has been performed. This action checks if a user is subscribed to the specified article.
* @method
* @param article The article identifier.
* @param data The subscriber identifier.
* @returns A promise that is resolved once the isSubscribed action has been performed.
* @example articleSubscriptionsArticleClient.subscribe(article, user)
.then(function (data) {
// perform success action here
},
function (response, status, headers, config) {
// perform error handling here
});
**/
ArticleSubscriptionsArticleClient.prototype.isSubscribed = function (article, data) {
return this.apiClient.get(this.articleSubscriptionsArticleRoute.isSubscribed(article, data));
};
/**
* Returns a promise that is resolved once the unSubscribe action has been performed. This action unsubscribes a user from the specified article.
* @method
* @param article The article identifier.
* @param data The unsubscribe information.
* @returns A promise that is resolved once the unSubscribe action has been performed.
* @example articleSubscriptionsArticleClient.subscribe(article, user)
.then(function (data) {
// perform success action here
},
function (response, status, headers, config) {
// perform error handling here
});
**/
ArticleSubscriptionsArticleClient.prototype.unSubscribe = function (article, data) {
return this.apiClient.delete(this.articleSubscriptionsArticleRoute.unSubscribe(article, data));
};
ArticleSubscriptionsArticleClient = tslib_1.__decorate([
inversify_1.injectable(),
tslib_1.__param(0, inversify_1.inject(__1.TYPES.ArticleSubscriptionsArticleRoute)),
tslib_1.__param(1, inversify_1.inject(httpApi_1.httpTYPES.ApiClient)),
tslib_1.__metadata("design:paramtypes", [__1.ArticleSubscriptionsArticleRoute,
httpApi_1.ApiClient])
], ArticleSubscriptionsArticleClient);
return ArticleSubscriptionsArticleClient;
}());
exports.ArticleSubscriptionsArticleClient = ArticleSubscriptionsArticleClient;