@flink-app/jwt-auth-plugin 0.11.4-next.0 → 0.11.5

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.
@@ -3,8 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.encrypt = encrypt;
7
- exports.genSalt = genSalt;
6
+ exports.genSalt = exports.encrypt = void 0;
8
7
  var bcrypt_1 = __importDefault(require("bcrypt"));
9
8
  function encrypt(password, salt) {
10
9
  return new Promise(function (resolve, reject) {
@@ -15,6 +14,7 @@ function encrypt(password, salt) {
15
14
  });
16
15
  });
17
16
  }
17
+ exports.encrypt = encrypt;
18
18
  function genSalt(rounds) {
19
19
  if (rounds === void 0) { rounds = 10; }
20
20
  return new Promise(function (resolve, reject) {
@@ -25,3 +25,4 @@ function genSalt(rounds) {
25
25
  });
26
26
  });
27
27
  }
28
+ exports.genSalt = genSalt;
@@ -20,12 +20,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
20
20
  });
21
21
  };
22
22
  var __generator = (this && this.__generator) || function (thisArg, body) {
23
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
25
  function verb(n) { return function (v) { return step([n, v]); }; }
26
26
  function step(op) {
27
27
  if (f) throw new TypeError("Generator is already executing.");
28
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
+ while (_) try {
29
29
  if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
30
  if (y = 0, t) op = [op[0] & 2, t.value];
31
31
  switch (op[0]) {
@@ -50,7 +50,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
50
50
  return (mod && mod.__esModule) ? mod : { "default": mod };
51
51
  };
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
- exports.jwtAuthPlugin = jwtAuthPlugin;
53
+ exports.jwtAuthPlugin = void 0;
54
54
  var flink_1 = require("@flink-app/flink");
55
55
  var jwt_simple_1 = __importDefault(require("jwt-simple"));
56
56
  var BcryptUtils_1 = require("./BcryptUtils");
@@ -85,12 +85,13 @@ function jwtAuthPlugin(_a) {
85
85
  validatePassword: validatePassword,
86
86
  };
87
87
  }
88
- function authenticateRequest(req_1, routePermissions_1, rolePermissions_1, _a) {
89
- return __awaiter(this, arguments, void 0, function (req, routePermissions, rolePermissions, _b) {
88
+ exports.jwtAuthPlugin = jwtAuthPlugin;
89
+ function authenticateRequest(req, routePermissions, rolePermissions, _a) {
90
+ var secret = _a.secret, algo = _a.algo, getUser = _a.getUser;
91
+ return __awaiter(this, void 0, void 0, function () {
90
92
  var token, decodedToken, permissionsArr, validPerms, user;
91
- var secret = _b.secret, algo = _b.algo, getUser = _b.getUser;
92
- return __generator(this, function (_c) {
93
- switch (_c.label) {
93
+ return __generator(this, function (_b) {
94
+ switch (_b.label) {
94
95
  case 0:
95
96
  token = getTokenFromReq(req);
96
97
  if (!token) return [3 /*break*/, 2];
@@ -99,7 +100,7 @@ function authenticateRequest(req_1, routePermissions_1, rolePermissions_1, _a) {
99
100
  decodedToken = jwt_simple_1.default.decode(token, secret, false, algo);
100
101
  }
101
102
  catch (err) {
102
- flink_1.log.debug("Failed to decode token: ".concat(err));
103
+ flink_1.log.debug("Failed to decode token: " + err);
103
104
  decodedToken = null;
104
105
  }
105
106
  if (!decodedToken) return [3 /*break*/, 2];
@@ -107,14 +108,14 @@ function authenticateRequest(req_1, routePermissions_1, rolePermissions_1, _a) {
107
108
  ? routePermissions
108
109
  : [routePermissions];
109
110
  if (permissionsArr && permissionsArr.length > 0) {
110
- validPerms = (0, PermissionValidator_1.hasValidPermissions)(decodedToken.roles || [], rolePermissions, permissionsArr);
111
+ validPerms = PermissionValidator_1.hasValidPermissions(decodedToken.roles || [], rolePermissions, permissionsArr);
111
112
  if (!validPerms) {
112
113
  return [2 /*return*/, false];
113
114
  }
114
115
  }
115
116
  return [4 /*yield*/, getUser(decodedToken)];
116
117
  case 1:
117
- user = _c.sent();
118
+ user = _b.sent();
118
119
  req.user = user;
119
120
  return [2 /*return*/, true];
120
121
  case 2: return [2 /*return*/, false];
@@ -130,10 +131,10 @@ function getTokenFromReq(req) {
130
131
  }
131
132
  return;
132
133
  }
133
- function createToken(payload_1, _a) {
134
- return __awaiter(this, arguments, void 0, function (payload, _b) {
135
- var secret = _b.secret, algo = _b.algo, tokenTTL = _b.tokenTTL;
136
- return __generator(this, function (_c) {
134
+ function createToken(payload, _a) {
135
+ var secret = _a.secret, algo = _a.algo, tokenTTL = _a.tokenTTL;
136
+ return __awaiter(this, void 0, void 0, function () {
137
+ return __generator(this, function (_b) {
137
138
  if (!payload) {
138
139
  throw new Error("Cannot create token - payload is missing");
139
140
  }
@@ -151,13 +152,13 @@ function createPasswordHashAndSalt(password, passwordPolicy) {
151
152
  switch (_a.label) {
152
153
  case 0:
153
154
  if (!passwordPolicy.test(password)) {
154
- flink_1.log.debug("Password does not match password policy '".concat(passwordPolicy, "'"));
155
+ flink_1.log.debug("Password does not match password policy '" + passwordPolicy + "'");
155
156
  return [2 /*return*/, null];
156
157
  }
157
- return [4 /*yield*/, (0, BcryptUtils_1.genSalt)(10)];
158
+ return [4 /*yield*/, BcryptUtils_1.genSalt(10)];
158
159
  case 1:
159
160
  salt = _a.sent();
160
- return [4 /*yield*/, (0, BcryptUtils_1.encrypt)(password, salt)];
161
+ return [4 /*yield*/, BcryptUtils_1.encrypt(password, salt)];
161
162
  case 2:
162
163
  hash = _a.sent();
163
164
  return [2 /*return*/, { salt: salt, hash: hash }];
@@ -170,7 +171,7 @@ function validatePassword(password, passwordHash, salt) {
170
171
  var hashCandidate;
171
172
  return __generator(this, function (_a) {
172
173
  switch (_a.label) {
173
- case 0: return [4 /*yield*/, (0, BcryptUtils_1.encrypt)(password, salt)];
174
+ case 0: return [4 /*yield*/, BcryptUtils_1.encrypt(password, salt)];
174
175
  case 1:
175
176
  hashCandidate = _a.sent();
176
177
  return [2 /*return*/, hashCandidate === passwordHash];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hasValidPermissions = hasValidPermissions;
3
+ exports.hasValidPermissions = void 0;
4
4
  var flink_1 = require("@flink-app/flink");
5
5
  /**
6
6
  * Checks if provided role has permission to access route
@@ -21,7 +21,7 @@ function hasValidPermissions(roles, rolePermissions, routePermissions) {
21
21
  var _loop_1 = function (role) {
22
22
  var thisRolesPermissions = rolePermissions[role];
23
23
  if (!thisRolesPermissions) {
24
- flink_1.log.warn("Role '".concat(role, "' does not have any permissions defined"));
24
+ flink_1.log.warn("Role '" + role + "' does not have any permissions defined");
25
25
  return "continue";
26
26
  }
27
27
  if (thisRolesPermissions.includes("*")) {
@@ -41,3 +41,4 @@ function hasValidPermissions(roles, rolePermissions, routePermissions) {
41
41
  }
42
42
  return false;
43
43
  }
44
+ exports.hasValidPermissions = hasValidPermissions;
package/dist/index.js CHANGED
@@ -1,11 +1,7 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
9
5
  }) : (function(o, m, k, k2) {
10
6
  if (k2 === undefined) k2 = k;
11
7
  o[k2] = m[k];
package/package.json CHANGED
@@ -1,32 +1,35 @@
1
1
  {
2
- "name": "@flink-app/jwt-auth-plugin",
3
- "version": "0.11.4-next.0",
4
- "description": "Flink plugin for JWT auth",
5
- "author": "joel@frost.se",
6
- "license": "MIT",
7
- "types": "dist/index.d.ts",
8
- "main": "dist/index.js",
9
- "scripts": {
10
- "build": "tsc"
11
- },
12
- "publishConfig": {
13
- "access": "public"
14
- },
15
- "dependencies": {
16
- "bcrypt": "^5.0.1",
17
- "jwt-simple": "^0.5.6"
18
- },
19
- "devDependencies": {
20
- "@flink-app/flink": "^0.11.4-next.0",
21
- "@types/bcrypt": "^5.0.0",
22
- "@types/jasmine": "^3.7.1",
23
- "@types/node": "^22.10.1",
24
- "jasmine": "^3.7.0",
25
- "jasmine-spec-reporter": "^7.0.0",
26
- "nodemon": "^2.0.7",
27
- "ts-node": "^10.9.2",
28
- "tsc-watch": "^6.2.1",
29
- "typescript": "5.6.2"
30
- },
31
- "gitHead": "6a44df1b6601c86ea3402750b939784d003202c3"
2
+ "name": "@flink-app/jwt-auth-plugin",
3
+ "version": "0.11.5",
4
+ "description": "Flink plugin for JWT auth",
5
+ "scripts": {
6
+ "test": "node --preserve-symlinks -r ts-node/register -- node_modules/jasmine/bin/jasmine --config=./spec/support/jasmine.json",
7
+ "test:watch": "nodemon --ext ts --exec 'jasmine-ts --config=./spec/support/jasmine.json'",
8
+ "prepublish": "tsc --project tsconfig.dist.json",
9
+ "watch": "tsc-watch --project tsconfig.dist.json"
10
+ },
11
+ "author": "joel@frost.se",
12
+ "license": "MIT",
13
+ "types": "dist/index.d.ts",
14
+ "main": "dist/index.js",
15
+ "publishConfig": {
16
+ "access": "public"
17
+ },
18
+ "dependencies": {
19
+ "bcrypt": "^5.0.1",
20
+ "jwt-simple": "^0.5.6"
21
+ },
22
+ "devDependencies": {
23
+ "@flink-app/flink": "^0.11.5",
24
+ "@types/bcrypt": "^5.0.0",
25
+ "@types/jasmine": "^3.7.1",
26
+ "@types/node": "^15.6.2",
27
+ "jasmine": "^3.7.0",
28
+ "jasmine-spec-reporter": "^7.0.0",
29
+ "nodemon": "^2.0.7",
30
+ "ts-node": "^9.1.1",
31
+ "tsc-watch": "^4.2.9",
32
+ "typescript": "^4.2.4"
33
+ },
34
+ "gitHead": "3e4488748859fc5f1de798dea4ea2611f9694221"
32
35
  }