UNPKG

@wepublish/api

Version:
31 lines 1.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SessionStrategy = void 0; const tslib_1 = require("tslib"); const common_1 = require("@nestjs/common"); const passport_1 = require("@nestjs/passport"); const passport_http_bearer_1 = require("passport-http-bearer"); const authentication_service_1 = require("./authentication.service"); let SessionStrategy = exports.SessionStrategy = class SessionStrategy extends (0, passport_1.PassportStrategy)(passport_http_bearer_1.Strategy, 'session') { constructor(authService) { super({ session: false // would use a cookie if set to true }); this.authService = authService; } validate(token) { return tslib_1.__awaiter(this, void 0, void 0, function* () { const session = yield this.authService.getSessionByToken(token); const isSessionValid = this.authService.isSessionValid(session); if (!isSessionValid) { return false; } return session; }); } }; exports.SessionStrategy = SessionStrategy = tslib_1.__decorate([ (0, common_1.Injectable)(), tslib_1.__metadata("design:paramtypes", [authentication_service_1.AuthenticationService]) ], SessionStrategy); //# sourceMappingURL=session.strategy.js.map