UNPKG

@genialis/resolwe

Version:
53 lines (51 loc) 5.52 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _ = require("lodash"); var Auth = /** @class */ (function () { /** * Constructs auth. * * @param {Connection} connection Connection with the genesis platform server */ function Auth(connection) { this._connection = connection; } /** * Performs user login. * * @param username Username or e-mail address * @param password Password */ Auth.prototype.login = function (username, password) { var _this = this; var authData = { username: username, password: password, }; // Allow login with an e-mail address as username. if (_.contains(username, '@')) { authData['email'] = username; } var response = this._connection.post('/rest-auth/login/', authData).publish().refCount(); response.subscribe(function () { // Connection state has changed, reinitialize query observers. _this._connection.queryObserverManager().reinitialize(); }, _.noop); // Do nothing on error. return response; }; /** * Logs the user out. */ Auth.prototype.logout = function () { var _this = this; var response = this._connection.post('/rest-auth/logout/', {}).publish().refCount(); response.subscribe(function () { // Connection state has changed, reinitialize query observers. _this._connection.queryObserverManager().reinitialize(); }); return response; }; return Auth; }()); exports.Auth = Auth; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9hcGkvYXV0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDBCQUE0QjtBQU01QjtJQUdJOzs7O09BSUc7SUFDSCxjQUFZLFVBQXNCO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLG9CQUFLLEdBQVosVUFBYSxRQUFnQixFQUFFLFFBQWdCO1FBQS9DLGlCQWlCQztRQWhCRyxJQUFNLFFBQVEsR0FBRztZQUNiLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLFFBQVEsRUFBRSxRQUFRO1NBQ3JCLENBQUM7UUFFRixrREFBa0Q7UUFDbEQsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsRUFBRTtZQUMzQixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsUUFBUSxDQUFDO1NBQ2hDO1FBRUQsSUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQXNCLG1CQUFtQixFQUFFLFFBQVEsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hILFFBQVEsQ0FBQyxTQUFTLENBQUM7WUFDZiw4REFBOEQ7WUFDOUQsS0FBSSxDQUFDLFdBQVcsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzNELENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBRSx1QkFBdUI7UUFDcEMsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztJQUVEOztPQUVHO0lBQ0kscUJBQU0sR0FBYjtRQUFBLGlCQU9DO1FBTkcsSUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQXVCLG9CQUFvQixFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzVHLFFBQVEsQ0FBQyxTQUFTLENBQUM7WUFDZiw4REFBOEQ7WUFDOUQsS0FBSSxDQUFDLFdBQVcsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztJQUNMLFdBQUM7QUFBRCxDQWhEQSxBQWdEQyxJQUFBO0FBaERZLG9CQUFJIiwiZmlsZSI6ImFwaS9hdXRoLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0ICogYXMgUnggZnJvbSAncngnO1xuXG5pbXBvcnQge0Nvbm5lY3Rpb259IGZyb20gJy4vY29ubmVjdGlvbic7XG5pbXBvcnQgKiBhcyB0eXBlcyBmcm9tICcuL3R5cGVzL3Jlc3QnO1xuXG5leHBvcnQgY2xhc3MgQXV0aCB7XG4gICAgcHJpdmF0ZSBfY29ubmVjdGlvbjogQ29ubmVjdGlvbjtcblxuICAgIC8qKlxuICAgICAqIENvbnN0cnVjdHMgYXV0aC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7Q29ubmVjdGlvbn0gY29ubmVjdGlvbiBDb25uZWN0aW9uIHdpdGggdGhlIGdlbmVzaXMgcGxhdGZvcm0gc2VydmVyXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoY29ubmVjdGlvbjogQ29ubmVjdGlvbikge1xuICAgICAgICB0aGlzLl9jb25uZWN0aW9uID0gY29ubmVjdGlvbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQZXJmb3JtcyB1c2VyIGxvZ2luLlxuICAgICAqXG4gICAgICogQHBhcmFtIHVzZXJuYW1lIFVzZXJuYW1lIG9yIGUtbWFpbCBhZGRyZXNzXG4gICAgICogQHBhcmFtIHBhc3N3b3JkIFBhc3N3b3JkXG4gICAgICovXG4gICAgcHVibGljIGxvZ2luKHVzZXJuYW1lOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpOiBSeC5PYnNlcnZhYmxlPHR5cGVzLkxvZ2luUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgYXV0aERhdGEgPSB7XG4gICAgICAgICAgICB1c2VybmFtZTogdXNlcm5hbWUsXG4gICAgICAgICAgICBwYXNzd29yZDogcGFzc3dvcmQsXG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gQWxsb3cgbG9naW4gd2l0aCBhbiBlLW1haWwgYWRkcmVzcyBhcyB1c2VybmFtZS5cbiAgICAgICAgaWYgKF8uY29udGFpbnModXNlcm5hbWUsICdAJykpIHtcbiAgICAgICAgICAgIGF1dGhEYXRhWydlbWFpbCddID0gdXNlcm5hbWU7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCByZXNwb25zZSA9IHRoaXMuX2Nvbm5lY3Rpb24ucG9zdDx0eXBlcy5Mb2dpblJlc3BvbnNlPignL3Jlc3QtYXV0aC9sb2dpbi8nLCBhdXRoRGF0YSkucHVibGlzaCgpLnJlZkNvdW50KCk7XG4gICAgICAgIHJlc3BvbnNlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAvLyBDb25uZWN0aW9uIHN0YXRlIGhhcyBjaGFuZ2VkLCByZWluaXRpYWxpemUgcXVlcnkgb2JzZXJ2ZXJzLlxuICAgICAgICAgICAgdGhpcy5fY29ubmVjdGlvbi5xdWVyeU9ic2VydmVyTWFuYWdlcigpLnJlaW5pdGlhbGl6ZSgpO1xuICAgICAgICB9LCBfLm5vb3ApOyAgLy8gRG8gbm90aGluZyBvbiBlcnJvci5cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvZ3MgdGhlIHVzZXIgb3V0LlxuICAgICAqL1xuICAgIHB1YmxpYyBsb2dvdXQoKTogUnguT2JzZXJ2YWJsZTx0eXBlcy5Mb2dvdXRSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IHRoaXMuX2Nvbm5lY3Rpb24ucG9zdDx0eXBlcy5Mb2dvdXRSZXNwb25zZT4oJy9yZXN0LWF1dGgvbG9nb3V0LycsIHt9KS5wdWJsaXNoKCkucmVmQ291bnQoKTtcbiAgICAgICAgcmVzcG9uc2Uuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIC8vIENvbm5lY3Rpb24gc3RhdGUgaGFzIGNoYW5nZWQsIHJlaW5pdGlhbGl6ZSBxdWVyeSBvYnNlcnZlcnMuXG4gICAgICAgICAgICB0aGlzLl9jb25uZWN0aW9uLnF1ZXJ5T2JzZXJ2ZXJNYW5hZ2VyKCkucmVpbml0aWFsaXplKCk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgfVxufVxuIl19