dbl-coins-invest
Version:
Sharade DBL package over other coins invest services
109 lines (91 loc) • 4.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _models = require('../mysqldb/models');
var _Observable = require('rxjs/Observable');
var _notifications = require('./schemas/notifications.schema');
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var callback = function callback(observer, error, response) {
if (!!error) {
observer.error(response);
} else {
observer.next(response);
}
observer.complete();
};
var AlertsService = function () {
function AlertsService(userSub) {
_classCallCheck(this, AlertsService);
if (!userSub) throw new Error('userSub have to be provided!!!!');
this.userSub = userSub;
this.model = _models.Account;
}
_createClass(AlertsService, [{
key: 'getAll',
value: function getAll() {
var _this = this;
return _Observable.Observable.create(function (observer) {
_notifications.NotificationModel.scan('userSub').eq(_this.userSub).exec(callback.bind(null, observer));
});
}
}, {
key: 'create',
value: function create(data) {
return _Observable.Observable.create(function (observer) {
_notifications.NotificationModel.create(data, callback.bind(null, observer));
});
}
}, {
key: 'getById',
value: function getById(alertId) {
var _this2 = this;
return _Observable.Observable.create(function (observer) {
_notifications.NotificationModel.get({ id: alertId, userSub: _this2.userSub }, callback.bind(null, observer));
});
}
}, {
key: 'getByType',
value: function getByType(type) {
var _this3 = this;
return _Observable.Observable.create(function (observer) {
_notifications.NotificationModel.query('type').eq(type).where('userSub').eq(_this3.userSub).exec(callback.bind(null, observer));
});
}
}, {
key: 'update',
value: function update() {
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return _Observable.Observable.create(function (observer) {
var _NotificationModel$up;
(_NotificationModel$up = _notifications.NotificationModel.update).call.apply(_NotificationModel$up, [_notifications.NotificationModel].concat(args, [callback.bind(null, observer)]));
});
}
}, {
key: 'delete',
value: function _delete(object) {
return _Observable.Observable.create(function (observer) {
_notifications.NotificationModel.delete(object, callback.bind(null, observer));
});
}
}, {
key: 'batchDelete',
value: function batchDelete(objects) {
return _Observable.Observable.create(function (observer) {
_notifications.NotificationModel.batchDelete(objects, callback.bind(null, observer));
});
}
}, {
key: 'batchPut',
value: function batchPut(data) {
return _Observable.Observable.create(function (observer) {
_notifications.NotificationModel.batchPut(data, callback.bind(null, observer));
});
}
}]);
return AlertsService;
}();
exports.default = AlertsService;