@nauth-toolkit/nestjs 0.1.91 → 0.1.92
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/dist/decorators/index.d.ts +1 -0
- package/dist/decorators/index.d.ts.map +1 -1
- package/dist/decorators/index.js +1 -0
- package/dist/decorators/index.js.map +1 -1
- package/dist/decorators/recaptcha.decorator.d.ts +46 -0
- package/dist/decorators/recaptcha.decorator.d.ts.map +1 -0
- package/dist/decorators/recaptcha.decorator.js +52 -0
- package/dist/decorators/recaptcha.decorator.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/interceptors/cookie-token.interceptor.d.ts.map +1 -1
- package/dist/interceptors/cookie-token.interceptor.js +17 -0
- package/dist/interceptors/cookie-token.interceptor.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC"}
|
package/dist/decorators/index.js
CHANGED
|
@@ -19,4 +19,5 @@ __exportStar(require("./current-user.decorator"), exports);
|
|
|
19
19
|
__exportStar(require("./client-info.decorator"), exports);
|
|
20
20
|
__exportStar(require("./token-delivery.decorator"), exports);
|
|
21
21
|
__exportStar(require("./hook.decorator"), exports);
|
|
22
|
+
__exportStar(require("./recaptcha.decorator"), exports);
|
|
22
23
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2DAAyC;AACzC,0DAAwC;AACxC,6DAA2C;AAC3C,mDAAiC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2DAAyC;AACzC,0DAAwC;AACxC,6DAA2C;AAC3C,mDAAiC;AACjC,wDAAsC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metadata keys for reCAPTCHA control
|
|
3
|
+
*/
|
|
4
|
+
export declare const SKIP_RECAPTCHA_KEY = "NAUTH_SKIP_RECAPTCHA";
|
|
5
|
+
export declare const REQUIRE_RECAPTCHA_KEY = "NAUTH_REQUIRE_RECAPTCHA";
|
|
6
|
+
/**
|
|
7
|
+
* Skip reCAPTCHA validation for this route
|
|
8
|
+
*
|
|
9
|
+
* Use when a specific route should bypass reCAPTCHA even if globally enabled.
|
|
10
|
+
* Useful for:
|
|
11
|
+
* - Admin routes
|
|
12
|
+
* - Mobile-only endpoints (device attestation preferred)
|
|
13
|
+
* - Internal API calls
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* @Public()
|
|
18
|
+
* @Post('login/admin')
|
|
19
|
+
* @SkipRecaptcha()
|
|
20
|
+
* async adminLogin(@Body() dto: LoginDTO) {
|
|
21
|
+
* return this.authService.login(dto);
|
|
22
|
+
* }
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare const SkipRecaptcha: () => import("@nestjs/common").CustomDecorator<string>;
|
|
26
|
+
/**
|
|
27
|
+
* Require reCAPTCHA validation for this route
|
|
28
|
+
*
|
|
29
|
+
* Use when a specific route must enforce reCAPTCHA even if not globally enabled
|
|
30
|
+
* or not in the enforceFor array. Useful for:
|
|
31
|
+
* - High-risk operations (password reset, account deletion)
|
|
32
|
+
* - Public endpoints that need bot protection
|
|
33
|
+
* - Testing reCAPTCHA integration
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* @Public()
|
|
38
|
+
* @Post('password/reset')
|
|
39
|
+
* @RequireRecaptcha()
|
|
40
|
+
* async resetPassword(@Body() dto: ResetPasswordDTO) {
|
|
41
|
+
* return this.authService.resetPassword(dto);
|
|
42
|
+
* }
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export declare const RequireRecaptcha: () => import("@nestjs/common").CustomDecorator<string>;
|
|
46
|
+
//# sourceMappingURL=recaptcha.decorator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recaptcha.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/recaptcha.decorator.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,kBAAkB,yBAAyB,CAAC;AACzD,eAAO,MAAM,qBAAqB,4BAA4B,CAAC;AAE/D;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,aAAa,wDAA8C,CAAC;AAEzE;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,gBAAgB,wDAAiD,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RequireRecaptcha = exports.SkipRecaptcha = exports.REQUIRE_RECAPTCHA_KEY = exports.SKIP_RECAPTCHA_KEY = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
/**
|
|
6
|
+
* Metadata keys for reCAPTCHA control
|
|
7
|
+
*/
|
|
8
|
+
exports.SKIP_RECAPTCHA_KEY = 'NAUTH_SKIP_RECAPTCHA';
|
|
9
|
+
exports.REQUIRE_RECAPTCHA_KEY = 'NAUTH_REQUIRE_RECAPTCHA';
|
|
10
|
+
/**
|
|
11
|
+
* Skip reCAPTCHA validation for this route
|
|
12
|
+
*
|
|
13
|
+
* Use when a specific route should bypass reCAPTCHA even if globally enabled.
|
|
14
|
+
* Useful for:
|
|
15
|
+
* - Admin routes
|
|
16
|
+
* - Mobile-only endpoints (device attestation preferred)
|
|
17
|
+
* - Internal API calls
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* @Public()
|
|
22
|
+
* @Post('login/admin')
|
|
23
|
+
* @SkipRecaptcha()
|
|
24
|
+
* async adminLogin(@Body() dto: LoginDTO) {
|
|
25
|
+
* return this.authService.login(dto);
|
|
26
|
+
* }
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
const SkipRecaptcha = () => (0, common_1.SetMetadata)(exports.SKIP_RECAPTCHA_KEY, true);
|
|
30
|
+
exports.SkipRecaptcha = SkipRecaptcha;
|
|
31
|
+
/**
|
|
32
|
+
* Require reCAPTCHA validation for this route
|
|
33
|
+
*
|
|
34
|
+
* Use when a specific route must enforce reCAPTCHA even if not globally enabled
|
|
35
|
+
* or not in the enforceFor array. Useful for:
|
|
36
|
+
* - High-risk operations (password reset, account deletion)
|
|
37
|
+
* - Public endpoints that need bot protection
|
|
38
|
+
* - Testing reCAPTCHA integration
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ```typescript
|
|
42
|
+
* @Public()
|
|
43
|
+
* @Post('password/reset')
|
|
44
|
+
* @RequireRecaptcha()
|
|
45
|
+
* async resetPassword(@Body() dto: ResetPasswordDTO) {
|
|
46
|
+
* return this.authService.resetPassword(dto);
|
|
47
|
+
* }
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
const RequireRecaptcha = () => (0, common_1.SetMetadata)(exports.REQUIRE_RECAPTCHA_KEY, true);
|
|
51
|
+
exports.RequireRecaptcha = RequireRecaptcha;
|
|
52
|
+
//# sourceMappingURL=recaptcha.decorator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recaptcha.decorator.js","sourceRoot":"","sources":["../../src/decorators/recaptcha.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAA6C;AAE7C;;GAEG;AACU,QAAA,kBAAkB,GAAG,sBAAsB,CAAC;AAC5C,QAAA,qBAAqB,GAAG,yBAAyB,CAAC;AAE/D;;;;;;;;;;;;;;;;;;GAkBG;AACI,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,IAAA,oBAAW,EAAC,0BAAkB,EAAE,IAAI,CAAC,CAAC;AAA5D,QAAA,aAAa,iBAA+C;AAEzE;;;;;;;;;;;;;;;;;;GAkBG;AACI,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,IAAA,oBAAW,EAAC,6BAAqB,EAAE,IAAI,CAAC,CAAC;AAAlE,QAAA,gBAAgB,oBAAkD"}
|
package/dist/index.d.ts
CHANGED
|
@@ -28,6 +28,7 @@ export { CurrentUser } from './decorators/current-user.decorator';
|
|
|
28
28
|
export { Public, IS_PUBLIC_KEY } from './decorators/public.decorator';
|
|
29
29
|
export { ClientInfo } from './decorators/client-info.decorator';
|
|
30
30
|
export { TokenDelivery, TOKEN_DELIVERY_KEY, RouteDelivery } from './decorators/token-delivery.decorator';
|
|
31
|
+
export { SkipRecaptcha, RequireRecaptcha } from './decorators/recaptcha.decorator';
|
|
31
32
|
export { PreSignupHook, PostSignupHook, UserProfileUpdatedHook, HookDecoratorOptions, } from './decorators/hook.decorator';
|
|
32
33
|
/**
|
|
33
34
|
* NestJS Hook System - Lifecycle hook registration
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,cAAc,qBAAqB,CAAC;AAMpC;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE9D;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACzG,OAAO,EACL,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC;;GAEG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD;;GAEG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AAEjF;;GAEG;AACH,cAAc,SAAS,CAAC;AAExB;;GAEG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD;;GAEG;AACH,cAAc,OAAO,CAAC;AAEtB;;GAEG;AACH,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,qCAAqC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,cAAc,qBAAqB,CAAC;AAMpC;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE9D;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACzG,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EACL,aAAa,EACb,cAAc,EACd,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC;;GAEG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD;;GAEG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AAEjF;;GAEG;AACH,cAAc,SAAS,CAAC;AAExB;;GAEG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAExE;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD;;GAEG;AACH,cAAc,OAAO,CAAC;AAEtB;;GAEG;AACH,OAAO,EACL,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,qCAAqC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -21,7 +21,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
21
21
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
22
22
|
};
|
|
23
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
-
exports.createRedisClusterAdapter = exports.createRedisStorageAdapter = exports.createDatabaseStorageAdapter = exports.CsrfService = exports.NestJsLoggerAdapter = exports.NAuthHttpExceptionFilter = exports.NAuthHooksModule = exports.UserProfileUpdatedHook = exports.PostSignupHook = exports.PreSignupHook = exports.TOKEN_DELIVERY_KEY = exports.TokenDelivery = exports.ClientInfo = exports.IS_PUBLIC_KEY = exports.Public = exports.CurrentUser = exports.CookieTokenInterceptor = exports.NAuthContextInterceptor = exports.CsrfGuard = exports.NAuthContextGuard = exports.AuthGuard = exports.AuthModule = void 0;
|
|
24
|
+
exports.createRedisClusterAdapter = exports.createRedisStorageAdapter = exports.createDatabaseStorageAdapter = exports.CsrfService = exports.NestJsLoggerAdapter = exports.NAuthHttpExceptionFilter = exports.NAuthHooksModule = exports.UserProfileUpdatedHook = exports.PostSignupHook = exports.PreSignupHook = exports.RequireRecaptcha = exports.SkipRecaptcha = exports.TOKEN_DELIVERY_KEY = exports.TokenDelivery = exports.ClientInfo = exports.IS_PUBLIC_KEY = exports.Public = exports.CurrentUser = exports.CookieTokenInterceptor = exports.NAuthContextInterceptor = exports.CsrfGuard = exports.NAuthContextGuard = exports.AuthGuard = exports.AuthModule = void 0;
|
|
25
25
|
// ============================================================================
|
|
26
26
|
// Re-export Public API from Core
|
|
27
27
|
// ============================================================================
|
|
@@ -69,6 +69,9 @@ Object.defineProperty(exports, "ClientInfo", { enumerable: true, get: function (
|
|
|
69
69
|
var token_delivery_decorator_1 = require("./decorators/token-delivery.decorator");
|
|
70
70
|
Object.defineProperty(exports, "TokenDelivery", { enumerable: true, get: function () { return token_delivery_decorator_1.TokenDelivery; } });
|
|
71
71
|
Object.defineProperty(exports, "TOKEN_DELIVERY_KEY", { enumerable: true, get: function () { return token_delivery_decorator_1.TOKEN_DELIVERY_KEY; } });
|
|
72
|
+
var recaptcha_decorator_1 = require("./decorators/recaptcha.decorator");
|
|
73
|
+
Object.defineProperty(exports, "SkipRecaptcha", { enumerable: true, get: function () { return recaptcha_decorator_1.SkipRecaptcha; } });
|
|
74
|
+
Object.defineProperty(exports, "RequireRecaptcha", { enumerable: true, get: function () { return recaptcha_decorator_1.RequireRecaptcha; } });
|
|
72
75
|
var hook_decorator_1 = require("./decorators/hook.decorator");
|
|
73
76
|
Object.defineProperty(exports, "PreSignupHook", { enumerable: true, get: function () { return hook_decorator_1.PreSignupHook; } });
|
|
74
77
|
Object.defineProperty(exports, "PostSignupHook", { enumerable: true, get: function () { return hook_decorator_1.PostSignupHook; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;AAEH,+EAA+E;AAC/E,iCAAiC;AACjC,+EAA+E;AAC/E,+EAA+E;AAC/E,kFAAkF;AAClF,qCAAqC;AACrC,EAAE;AACF,wDAAwD;AACxD,qDAAqD;AACrD,sDAAoC;AAEpC,+EAA+E;AAC/E,0BAA0B;AAC1B,+EAA+E;AAE/E;;GAEG;AACH,6CAA8D;AAArD,yGAAA,UAAU,OAAA;AAEnB;;GAEG;AACH,kDAAgD;AAAvC,uGAAA,SAAS,OAAA;AAClB,oEAAiE;AAAxD,wHAAA,iBAAiB,OAAA;AAC1B,kDAAgD;AAAvC,uGAAA,SAAS,OAAA;AAElB;;GAEG;AACH,sFAAmF;AAA1E,oIAAA,uBAAuB,OAAA;AAChC,oFAAiF;AAAxE,kIAAA,sBAAsB,OAAA;AAE/B;;GAEG;AACH,8EAAkE;AAAzD,qHAAA,WAAW,OAAA;AACpB,kEAAsE;AAA7D,0GAAA,MAAM,OAAA;AAAE,iHAAA,aAAa,OAAA;AAC9B,4EAAgE;AAAvD,mHAAA,UAAU,OAAA;AACnB,kFAAyG;AAAhG,yHAAA,aAAa,OAAA;AAAE,8HAAA,kBAAkB,OAAA;AAC1C,8DAKqC;AAJnC,+GAAA,aAAa,OAAA;AACb,gHAAA,cAAc,OAAA;AACd,wHAAA,sBAAsB,OAAA;AAIxB;;GAEG;AACH,qDAAwD;AAA/C,gHAAA,gBAAgB,OAAA;AAEzB;;GAEG;AACH,qFAAiF;AAAxE,uIAAA,wBAAwB,OAAA;AAEjC;;GAEG;AACH,0CAAwB;AAExB;;GAEG;AACH,2EAAwE;AAA/D,4HAAA,mBAAmB,OAAA;AAE5B;;GAEG;AACH,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AAEpB;;GAEG;AACH,wCAAsB;AAEtB;;GAEG;AACH,+EAI6C;AAH3C,uIAAA,4BAA4B,OAAA;AAC5B,oIAAA,yBAAyB,OAAA;AACzB,oIAAA,yBAAyB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;AAEH,+EAA+E;AAC/E,iCAAiC;AACjC,+EAA+E;AAC/E,+EAA+E;AAC/E,kFAAkF;AAClF,qCAAqC;AACrC,EAAE;AACF,wDAAwD;AACxD,qDAAqD;AACrD,sDAAoC;AAEpC,+EAA+E;AAC/E,0BAA0B;AAC1B,+EAA+E;AAE/E;;GAEG;AACH,6CAA8D;AAArD,yGAAA,UAAU,OAAA;AAEnB;;GAEG;AACH,kDAAgD;AAAvC,uGAAA,SAAS,OAAA;AAClB,oEAAiE;AAAxD,wHAAA,iBAAiB,OAAA;AAC1B,kDAAgD;AAAvC,uGAAA,SAAS,OAAA;AAElB;;GAEG;AACH,sFAAmF;AAA1E,oIAAA,uBAAuB,OAAA;AAChC,oFAAiF;AAAxE,kIAAA,sBAAsB,OAAA;AAE/B;;GAEG;AACH,8EAAkE;AAAzD,qHAAA,WAAW,OAAA;AACpB,kEAAsE;AAA7D,0GAAA,MAAM,OAAA;AAAE,iHAAA,aAAa,OAAA;AAC9B,4EAAgE;AAAvD,mHAAA,UAAU,OAAA;AACnB,kFAAyG;AAAhG,yHAAA,aAAa,OAAA;AAAE,8HAAA,kBAAkB,OAAA;AAC1C,wEAAmF;AAA1E,oHAAA,aAAa,OAAA;AAAE,uHAAA,gBAAgB,OAAA;AACxC,8DAKqC;AAJnC,+GAAA,aAAa,OAAA;AACb,gHAAA,cAAc,OAAA;AACd,wHAAA,sBAAsB,OAAA;AAIxB;;GAEG;AACH,qDAAwD;AAA/C,gHAAA,gBAAgB,OAAA;AAEzB;;GAEG;AACH,qFAAiF;AAAxE,uIAAA,wBAAwB,OAAA;AAEjC;;GAEG;AACH,0CAAwB;AAExB;;GAEG;AACH,2EAAwE;AAA/D,4HAAA,mBAAmB,OAAA;AAE5B;;GAEG;AACH,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AAEpB;;GAEG;AACH,wCAAsB;AAEtB;;GAEG;AACH,+EAI6C;AAH3C,uIAAA,4BAA4B,OAAA;AAC5B,oIAAA,yBAAyB,OAAA;AACzB,oIAAA,yBAAyB,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cookie-token.interceptor.d.ts","sourceRoot":"","sources":["../../src/interceptors/cookie-token.interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"cookie-token.interceptor.d.ts","sourceRoot":"","sources":["../../src/interceptors/cookie-token.interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAKlC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AAEnF;;;;;;;;;;;;;;;GAeG;AACH,qBACa,sBAAuB,YAAW,eAAe;IAE1D,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS;gBADT,iBAAiB,EAAE,wBAAwB,EAC3C,SAAS,EAAE,SAAS;IAGvC,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC;CAoI7E"}
|
|
@@ -14,6 +14,7 @@ const common_1 = require("@nestjs/common");
|
|
|
14
14
|
const core_1 = require("@nestjs/core");
|
|
15
15
|
const operators_1 = require("rxjs/operators");
|
|
16
16
|
const token_delivery_decorator_1 = require("../decorators/token-delivery.decorator");
|
|
17
|
+
const recaptcha_decorator_1 = require("../decorators/recaptcha.decorator");
|
|
17
18
|
const token_delivery_http_service_1 = require("../services/token-delivery-http.service");
|
|
18
19
|
/**
|
|
19
20
|
* Cookie Token Interceptor
|
|
@@ -46,6 +47,21 @@ let CookieTokenInterceptor = class CookieTokenInterceptor {
|
|
|
46
47
|
const http = context.switchToHttp();
|
|
47
48
|
const req = http.getRequest();
|
|
48
49
|
const res = http.getResponse();
|
|
50
|
+
// ============================================================================
|
|
51
|
+
// Read reCAPTCHA decorator metadata and set on request attributes
|
|
52
|
+
// ============================================================================
|
|
53
|
+
const skipRecaptcha = this.reflector.get(recaptcha_decorator_1.SKIP_RECAPTCHA_KEY, context.getHandler());
|
|
54
|
+
const requireRecaptcha = this.reflector.get(recaptcha_decorator_1.REQUIRE_RECAPTCHA_KEY, context.getHandler());
|
|
55
|
+
// Set attributes for AuthService validation logic
|
|
56
|
+
if (!req._nauthAttributes) {
|
|
57
|
+
req._nauthAttributes = {};
|
|
58
|
+
}
|
|
59
|
+
if (skipRecaptcha === true) {
|
|
60
|
+
req._nauthAttributes.nauthSkipRecaptcha = true;
|
|
61
|
+
}
|
|
62
|
+
if (requireRecaptcha === true) {
|
|
63
|
+
req._nauthAttributes.nauthRequireRecaptcha = true;
|
|
64
|
+
}
|
|
49
65
|
// Determine effective delivery for this request
|
|
50
66
|
const routeMode = this.reflector.get(token_delivery_decorator_1.TOKEN_DELIVERY_KEY, context.getHandler());
|
|
51
67
|
const effective = this.tokenDeliveryHttp.resolveEffectiveDelivery(req, routeMode);
|
|
@@ -59,6 +75,7 @@ let CookieTokenInterceptor = class CookieTokenInterceptor {
|
|
|
59
75
|
// We store it on the request object using a non-enumerable-ish private-ish key.
|
|
60
76
|
// Frameworks tolerate extra properties on the request object (Express/Fastify).
|
|
61
77
|
req.__nauthRouteDelivery = routeMode;
|
|
78
|
+
req._nauthAttributes.nauthTokenDeliveryOverride = routeMode;
|
|
62
79
|
return next.handle().pipe((0, operators_1.map)((data) => {
|
|
63
80
|
// ============================================================================
|
|
64
81
|
// SocialRedirectHandler cookie recipe support (cookies mode)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cookie-token.interceptor.js","sourceRoot":"","sources":["../../src/interceptors/cookie-token.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4F;AAC5F,uCAAyC;AAEzC,8CAAqC;AAErC,qFAA2F;AAC3F,yFAAmF;AAEnF;;;;;;;;;;;;;;;GAeG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAEd;IACA;IAFnB,YACmB,iBAA2C,EAC3C,SAAoB;QADpB,sBAAiB,GAAjB,iBAAiB,CAA0B;QAC3C,cAAS,GAAT,SAAS,CAAW;IACpC,CAAC;IAEJ,SAAS,CAAC,OAAyB,EAAE,IAAiB;QACpD,+BAA+B;QAC/B,IAAI,OAAO,CAAC,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;QAGpC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAkB,CAAC;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAmB,CAAC;QAEhD,gDAAgD;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAgB,6CAAkB,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QAC9F,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,wBAAwB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAElF,+EAA+E;QAC/E,8DAA8D;QAC9D,+EAA+E;QAC/E,+EAA+E;QAC/E,mFAAmF;QACnF,6EAA6E;QAC7E,EAAE;QACF,gFAAgF;QAChF,gFAAgF;QAC/E,GAA+B,CAAC,oBAAoB,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"cookie-token.interceptor.js","sourceRoot":"","sources":["../../src/interceptors/cookie-token.interceptor.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nauth-toolkit/nestjs",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.92",
|
|
4
4
|
"description": "NestJS adapter for nauth-toolkit - Platform-specific integrations",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"typeorm": "^0.3.0"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@nauth-toolkit/core": "0.1.
|
|
42
|
+
"@nauth-toolkit/core": "0.1.92"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@nestjs/common": "^11.1.8",
|