@bmostickit/common 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/errors/not-authorized-error.d.ts +1 -1
- package/build/errors/not-authorized-error.js +1 -1
- package/build/events/types/expirations.d.ts +6 -0
- package/build/events/types/expirations.js +12 -0
- package/build/index.d.ts +2 -0
- package/build/index.js +2 -0
- package/build/middlewares/current-user.js +2 -2
- package/build/middlewares/refresh.d.ts +2 -0
- package/build/middlewares/refresh.js +28 -0
- package/package.json +1 -1
|
@@ -9,7 +9,7 @@ class NotAuthorizedError extends custom_error_1.CustomError {
|
|
|
9
9
|
Object.setPrototypeOf(this, NotAuthorizedError.prototype);
|
|
10
10
|
}
|
|
11
11
|
serializeErrors() {
|
|
12
|
-
return [{ message: 'Not authorized
|
|
12
|
+
return [{ message: 'Not authorized' }];
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
exports.NotAuthorizedError = NotAuthorizedError;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Expirations = void 0;
|
|
4
|
+
var Expirations;
|
|
5
|
+
(function (Expirations) {
|
|
6
|
+
// Expiration time for the JWT access token in seconds
|
|
7
|
+
Expirations[Expirations["accessTokenExp"] = 1800] = "accessTokenExp";
|
|
8
|
+
Expirations[Expirations["accessTokenTestExp"] = 30] = "accessTokenTestExp";
|
|
9
|
+
// Expiration time for the JWT refresh token
|
|
10
|
+
Expirations["refreshTokenExp"] = "1d";
|
|
11
|
+
Expirations[Expirations["refreshTokenTestExp"] = 120] = "refreshTokenTestExp";
|
|
12
|
+
})(Expirations || (exports.Expirations = Expirations = {}));
|
package/build/index.d.ts
CHANGED
|
@@ -8,6 +8,8 @@ export * from './middlewares/current-user';
|
|
|
8
8
|
export * from './middlewares/error-handler';
|
|
9
9
|
export * from './middlewares/require-auth';
|
|
10
10
|
export * from './middlewares/validate-request';
|
|
11
|
+
export * from './middlewares/refresh';
|
|
11
12
|
export * from './events/base-listener';
|
|
12
13
|
export * from './events/base-publisher';
|
|
13
14
|
export * from './events/subjects';
|
|
15
|
+
export * from './events/types/expirations';
|
package/build/index.js
CHANGED
|
@@ -24,6 +24,8 @@ __exportStar(require("./middlewares/current-user"), exports);
|
|
|
24
24
|
__exportStar(require("./middlewares/error-handler"), exports);
|
|
25
25
|
__exportStar(require("./middlewares/require-auth"), exports);
|
|
26
26
|
__exportStar(require("./middlewares/validate-request"), exports);
|
|
27
|
+
__exportStar(require("./middlewares/refresh"), exports);
|
|
27
28
|
__exportStar(require("./events/base-listener"), exports);
|
|
28
29
|
__exportStar(require("./events/base-publisher"), exports);
|
|
29
30
|
__exportStar(require("./events/subjects"), exports);
|
|
31
|
+
__exportStar(require("./events/types/expirations"), exports);
|
|
@@ -7,11 +7,11 @@ exports.currentUser = void 0;
|
|
|
7
7
|
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
8
8
|
const currentUser = (req, res, next) => {
|
|
9
9
|
var _a;
|
|
10
|
-
if (!((_a = req.session) === null || _a === void 0 ? void 0 : _a.
|
|
10
|
+
if (!((_a = req.session) === null || _a === void 0 ? void 0 : _a.accessToken)) {
|
|
11
11
|
return next();
|
|
12
12
|
}
|
|
13
13
|
try {
|
|
14
|
-
const payload = jsonwebtoken_1.default.verify(req.session.
|
|
14
|
+
const payload = jsonwebtoken_1.default.verify(req.session.accessToken, process.env.JWT_KEY);
|
|
15
15
|
req.currentUser = payload;
|
|
16
16
|
}
|
|
17
17
|
catch (err) { }
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.refresh = void 0;
|
|
7
|
+
const expirations_1 = require("../events/types/expirations");
|
|
8
|
+
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
9
|
+
const refresh = (req, res, next) => {
|
|
10
|
+
var _a;
|
|
11
|
+
if (!((_a = req.session) === null || _a === void 0 ? void 0 : _a.refreshToken)) {
|
|
12
|
+
return next();
|
|
13
|
+
}
|
|
14
|
+
const refreshToken = req.session.refreshToken;
|
|
15
|
+
try {
|
|
16
|
+
const userInfo = jsonwebtoken_1.default.verify(refreshToken, process.env.JWT_KEY);
|
|
17
|
+
const accessToken = jsonwebtoken_1.default.sign(userInfo, process.env.JWT_KEY, {
|
|
18
|
+
expiresIn: expirations_1.Expirations.accessTokenTestExp,
|
|
19
|
+
});
|
|
20
|
+
req.session = {
|
|
21
|
+
accessToken,
|
|
22
|
+
refreshToken,
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
catch (err) { }
|
|
26
|
+
next();
|
|
27
|
+
};
|
|
28
|
+
exports.refresh = refresh;
|