@flink-app/otp-auth-plugin 0.12.1-alpha.47 → 0.13.0
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/CHANGELOG.md +7 -0
- package/dist/OtpAuthPlugin.js +3 -4
- package/dist/functions/initiate.js +3 -4
- package/dist/functions/verify.js +3 -4
- package/dist/handlers/PostOtpInitiate.js +2 -2
- package/dist/handlers/PostOtpVerify.js +2 -2
- package/dist/repos/OtpSessionRepo.js +2 -2
- package/dist/utils/otp-utils.js +6 -7
- package/package.json +32 -36
- package/tsconfig.json +2 -2
package/CHANGELOG.md
ADDED
package/dist/OtpAuthPlugin.js
CHANGED
|
@@ -43,8 +43,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
43
43
|
});
|
|
44
44
|
};
|
|
45
45
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
46
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
47
|
-
return g =
|
|
46
|
+
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);
|
|
47
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
48
48
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
49
49
|
function step(op) {
|
|
50
50
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -73,7 +73,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
73
73
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
74
74
|
};
|
|
75
75
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
76
|
-
exports.otpAuthPlugin =
|
|
76
|
+
exports.otpAuthPlugin = otpAuthPlugin;
|
|
77
77
|
var flink_1 = require("@flink-app/flink");
|
|
78
78
|
var initiate_1 = require("./functions/initiate");
|
|
79
79
|
var verify_1 = require("./functions/verify");
|
|
@@ -228,4 +228,3 @@ function otpAuthPlugin(options) {
|
|
|
228
228
|
init: init,
|
|
229
229
|
};
|
|
230
230
|
}
|
|
231
|
-
exports.otpAuthPlugin = otpAuthPlugin;
|
|
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g =
|
|
12
|
+
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);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
14
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
15
|
function step(op) {
|
|
16
16
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -36,7 +36,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.initiate =
|
|
39
|
+
exports.initiate = initiate;
|
|
40
40
|
var flink_1 = require("@flink-app/flink");
|
|
41
41
|
var otp_utils_1 = require("../utils/otp-utils");
|
|
42
42
|
function initiate(ctx, options) {
|
|
@@ -101,4 +101,3 @@ function initiate(ctx, options) {
|
|
|
101
101
|
});
|
|
102
102
|
});
|
|
103
103
|
}
|
|
104
|
-
exports.initiate = initiate;
|
package/dist/functions/verify.js
CHANGED
|
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g =
|
|
12
|
+
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);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
14
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
15
|
function step(op) {
|
|
16
16
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -36,7 +36,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.verify =
|
|
39
|
+
exports.verify = verify;
|
|
40
40
|
var flink_1 = require("@flink-app/flink");
|
|
41
41
|
function verify(ctx, options) {
|
|
42
42
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -139,4 +139,3 @@ function verify(ctx, options) {
|
|
|
139
139
|
});
|
|
140
140
|
});
|
|
141
141
|
}
|
|
142
|
-
exports.verify = verify;
|
|
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g =
|
|
12
|
+
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);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
14
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
15
|
function step(op) {
|
|
16
16
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g =
|
|
12
|
+
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);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
14
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
15
|
function step(op) {
|
|
16
16
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -24,8 +24,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
24
24
|
});
|
|
25
25
|
};
|
|
26
26
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
27
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
28
|
-
return g =
|
|
27
|
+
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);
|
|
28
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
29
29
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
30
30
|
function step(op) {
|
|
31
31
|
if (f) throw new TypeError("Generator is already executing.");
|
package/dist/utils/otp-utils.js
CHANGED
|
@@ -3,7 +3,12 @@ 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.
|
|
6
|
+
exports.generateOtpCode = generateOtpCode;
|
|
7
|
+
exports.generateSessionId = generateSessionId;
|
|
8
|
+
exports.validateIdentifier = validateIdentifier;
|
|
9
|
+
exports.normalizePhoneNumber = normalizePhoneNumber;
|
|
10
|
+
exports.normalizeEmail = normalizeEmail;
|
|
11
|
+
exports.normalizeIdentifier = normalizeIdentifier;
|
|
7
12
|
var crypto_1 = __importDefault(require("crypto"));
|
|
8
13
|
/**
|
|
9
14
|
* Generates a random numeric OTP code.
|
|
@@ -22,7 +27,6 @@ function generateOtpCode(length) {
|
|
|
22
27
|
// Use crypto.randomInt for cryptographically secure random numbers
|
|
23
28
|
return crypto_1.default.randomInt(min, max + 1).toString();
|
|
24
29
|
}
|
|
25
|
-
exports.generateOtpCode = generateOtpCode;
|
|
26
30
|
/**
|
|
27
31
|
* Generates a unique session ID.
|
|
28
32
|
*
|
|
@@ -31,7 +35,6 @@ exports.generateOtpCode = generateOtpCode;
|
|
|
31
35
|
function generateSessionId() {
|
|
32
36
|
return crypto_1.default.randomBytes(16).toString("hex");
|
|
33
37
|
}
|
|
34
|
-
exports.generateSessionId = generateSessionId;
|
|
35
38
|
/**
|
|
36
39
|
* Validates that an identifier looks like a valid phone number or email.
|
|
37
40
|
*
|
|
@@ -55,7 +58,6 @@ function validateIdentifier(identifier, method) {
|
|
|
55
58
|
return phoneRegex.test(identifier);
|
|
56
59
|
}
|
|
57
60
|
}
|
|
58
|
-
exports.validateIdentifier = validateIdentifier;
|
|
59
61
|
/**
|
|
60
62
|
* Normalizes a phone number by removing formatting characters.
|
|
61
63
|
*
|
|
@@ -66,7 +68,6 @@ function normalizePhoneNumber(phoneNumber) {
|
|
|
66
68
|
// Remove all characters except digits and +
|
|
67
69
|
return phoneNumber.replace(/[^\d+]/g, "");
|
|
68
70
|
}
|
|
69
|
-
exports.normalizePhoneNumber = normalizePhoneNumber;
|
|
70
71
|
/**
|
|
71
72
|
* Normalizes an email by converting to lowercase and trimming.
|
|
72
73
|
*
|
|
@@ -76,7 +77,6 @@ exports.normalizePhoneNumber = normalizePhoneNumber;
|
|
|
76
77
|
function normalizeEmail(email) {
|
|
77
78
|
return email.toLowerCase().trim();
|
|
78
79
|
}
|
|
79
|
-
exports.normalizeEmail = normalizeEmail;
|
|
80
80
|
/**
|
|
81
81
|
* Normalizes an identifier based on the delivery method.
|
|
82
82
|
*
|
|
@@ -92,4 +92,3 @@ function normalizeIdentifier(identifier, method) {
|
|
|
92
92
|
return normalizePhoneNumber(identifier);
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
|
-
exports.normalizeIdentifier = normalizeIdentifier;
|
package/package.json
CHANGED
|
@@ -1,37 +1,33 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
"
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
"
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
"typescript": "5.4.5"
|
|
35
|
-
},
|
|
36
|
-
"gitHead": "a98a0af7f11e4a97f68da4d0d67677df7d2a2749"
|
|
37
|
-
}
|
|
2
|
+
"name": "@flink-app/otp-auth-plugin",
|
|
3
|
+
"version": "0.13.0",
|
|
4
|
+
"description": "Flink plugin for OTP (One-Time Password) authentication via SMS or email",
|
|
5
|
+
"author": "joel@frost.se",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"main": "dist/index.js",
|
|
9
|
+
"publishConfig": {
|
|
10
|
+
"access": "public"
|
|
11
|
+
},
|
|
12
|
+
"peerDependencies": {
|
|
13
|
+
"mongodb": "^6.15.0"
|
|
14
|
+
},
|
|
15
|
+
"overrides": {
|
|
16
|
+
"@types/node": "22.13.10"
|
|
17
|
+
},
|
|
18
|
+
"devDependencies": {
|
|
19
|
+
"@types/jasmine": "^3.7.1",
|
|
20
|
+
"@types/node": "22.13.10",
|
|
21
|
+
"ts-node": "^10.9.2",
|
|
22
|
+
"tsc-watch": "^4.2.9",
|
|
23
|
+
"@flink-app/flink": "0.13.0"
|
|
24
|
+
},
|
|
25
|
+
"gitHead": "4243e3b3cd6d4e1ca001a61baa8436bf2bbe4113",
|
|
26
|
+
"scripts": {
|
|
27
|
+
"test": "jasmine-ts --config=./spec/support/jasmine.json",
|
|
28
|
+
"test:watch": "nodemon --ext ts --exec 'jasmine-ts --config=./spec/support/jasmine.json'",
|
|
29
|
+
"build": "tsc --project tsconfig.dist.json",
|
|
30
|
+
"watch": "tsc-watch --project tsconfig.dist.json",
|
|
31
|
+
"clean": "rimraf dist .flink"
|
|
32
|
+
}
|
|
33
|
+
}
|
package/tsconfig.json
CHANGED
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
"noEmit": false,
|
|
16
16
|
"declaration": true,
|
|
17
17
|
"experimentalDecorators": true,
|
|
18
|
-
"checkJs":
|
|
18
|
+
"checkJs": false,
|
|
19
19
|
"outDir": "dist",
|
|
20
20
|
"typeRoots": ["./node_modules/@types"]
|
|
21
21
|
},
|
|
22
22
|
"include": ["./src/*", "./spec/*"],
|
|
23
|
-
"exclude": ["./node_modules/*"]
|
|
23
|
+
"exclude": ["./node_modules/*", "./dist/*", "../*/dist/*"]
|
|
24
24
|
}
|