@nauth-toolkit/core 0.1.36 → 0.1.39
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/dto/auth-response.dto.d.ts +60 -54
- package/dist/dto/auth-response.dto.d.ts.map +1 -1
- package/dist/dto/auth-response.dto.js +23 -11
- package/dist/dto/auth-response.dto.js.map +1 -1
- package/dist/dto/index.d.ts +1 -0
- package/dist/dto/index.d.ts.map +1 -1
- package/dist/dto/index.js +1 -0
- package/dist/dto/index.js.map +1 -1
- package/dist/dto/update-verified-status-request.dto.d.ts +70 -0
- package/dist/dto/update-verified-status-request.dto.d.ts.map +1 -0
- package/dist/dto/update-verified-status-request.dto.js +107 -0
- package/dist/dto/update-verified-status-request.dto.js.map +1 -0
- package/dist/interfaces/config.interface.d.ts +23 -6
- package/dist/interfaces/config.interface.d.ts.map +1 -1
- package/dist/interfaces/hooks.interface.d.ts +152 -117
- package/dist/interfaces/hooks.interface.d.ts.map +1 -1
- package/dist/services/adaptive-mfa-decision.service.d.ts.map +1 -1
- package/dist/services/adaptive-mfa-decision.service.js +2 -2
- package/dist/services/adaptive-mfa-decision.service.js.map +1 -1
- package/dist/services/auth-challenge-helper.service.d.ts.map +1 -1
- package/dist/services/auth-challenge-helper.service.js +2 -11
- package/dist/services/auth-challenge-helper.service.js.map +1 -1
- package/dist/services/auth.service.d.ts +37 -0
- package/dist/services/auth.service.d.ts.map +1 -1
- package/dist/services/auth.service.js +237 -17
- package/dist/services/auth.service.js.map +1 -1
- package/dist/services/email-verification.service.d.ts +3 -1
- package/dist/services/email-verification.service.d.ts.map +1 -1
- package/dist/services/email-verification.service.js +77 -1
- package/dist/services/email-verification.service.js.map +1 -1
- package/dist/services/hook-registry.service.d.ts +34 -63
- package/dist/services/hook-registry.service.d.ts.map +1 -1
- package/dist/services/hook-registry.service.js +53 -66
- package/dist/services/hook-registry.service.js.map +1 -1
- package/dist/services/phone-verification.service.d.ts +3 -1
- package/dist/services/phone-verification.service.d.ts.map +1 -1
- package/dist/services/phone-verification.service.js +80 -1
- package/dist/services/phone-verification.service.js.map +1 -1
- package/dist/services/social-auth-base.service.d.ts +2 -1
- package/dist/services/social-auth-base.service.d.ts.map +1 -1
- package/dist/services/social-auth-base.service.js +6 -3
- package/dist/services/social-auth-base.service.js.map +1 -1
- package/dist/utils/setup/init-services.d.ts.map +1 -1
- package/dist/utils/setup/init-services.js +2 -2
- package/dist/utils/setup/init-services.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,6 +6,7 @@ import { NAuthConfig } from '../interfaces/config.interface';
|
|
|
6
6
|
import { ClientInfoService } from './client-info.service';
|
|
7
7
|
import { InternalAuthAuditService as AuthAuditService } from './auth-audit.service';
|
|
8
8
|
import { NAuthLogger } from '../utils/nauth-logger';
|
|
9
|
+
import { HookRegistryService } from './hook-registry.service';
|
|
9
10
|
import { SendVerificationEmailDTO, SendVerificationEmailResponseDTO, VerifyEmailWithCodeDTO, VerifyEmailWithTokenDTO, ResendVerificationEmailDTO, ResendVerificationEmailResponseDTO, VerifyEmailResponseDTO } from '../dto/verify-email.dto';
|
|
10
11
|
/**
|
|
11
12
|
* Email Verification Service
|
|
@@ -26,8 +27,9 @@ export declare class EmailVerificationService {
|
|
|
26
27
|
private readonly config;
|
|
27
28
|
private readonly clientInfoService;
|
|
28
29
|
private readonly logger;
|
|
30
|
+
private readonly hookRegistry;
|
|
29
31
|
private readonly auditService?;
|
|
30
|
-
constructor(verificationTokenRepo: Repository<BaseVerificationToken>, userRepo: Repository<BaseUser>, emailProvider: EmailProvider, storageAdapter: StorageAdapter, config: NAuthConfig, clientInfoService: ClientInfoService, logger: NAuthLogger, auditService?: AuthAuditService | undefined);
|
|
32
|
+
constructor(verificationTokenRepo: Repository<BaseVerificationToken>, userRepo: Repository<BaseUser>, emailProvider: EmailProvider, storageAdapter: StorageAdapter, config: NAuthConfig, clientInfoService: ClientInfoService, logger: NAuthLogger, hookRegistry: HookRegistryService, auditService?: AuthAuditService | undefined);
|
|
31
33
|
/**
|
|
32
34
|
* Send verification email to user
|
|
33
35
|
* Generates a new verification code and sends it via email
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-verification.service.d.ts","sourceRoot":"","sources":["../../src/services/email-verification.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAU,MAAM,SAAS,CAAC;AAE7C,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,IAAI,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIpF,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EACL,wBAAwB,EACxB,gCAAgC,EAChC,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,kCAAkC,EAClC,sBAAsB,EACvB,MAAM,yBAAyB,CAAC;AAIjC;;;;;;;;;;GAUG;AACH,qBAAa,wBAAwB;IAEjC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"email-verification.service.d.ts","sourceRoot":"","sources":["../../src/services/email-verification.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAU,MAAM,SAAS,CAAC;AAE7C,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,IAAI,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIpF,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EACL,wBAAwB,EACxB,gCAAgC,EAChC,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,kCAAkC,EAClC,sBAAsB,EACvB,MAAM,yBAAyB,CAAC;AAIjC;;;;;;;;;;GAUG;AACH,qBAAa,wBAAwB;IAEjC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;gBARb,qBAAqB,EAAE,UAAU,CAAC,qBAAqB,CAAC,EACxD,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,EAC9B,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,WAAW,EACnB,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,WAAW,EACnB,YAAY,EAAE,mBAAmB,EACjC,YAAY,CAAC,EAAE,gBAAgB,YAAA;IAGlD;;;;;;OAMG;IACG,qBAAqB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,gCAAgC,CAAC;IAuJrG;;;;;;OAMG;IACG,mBAAmB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAuOvF;;;;;;OAMG;IACG,oBAAoB,CAAC,GAAG,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA8GzF;;;;;;OAMG;IACG,uBAAuB,CAAC,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC,kCAAkC,CAAC;YAc7F,4BAA4B;YA2C5B,8BAA8B;IAa5C;;;OAGG;IACH,OAAO,CAAC,YAAY;IAIpB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAIrB;;;;OAIG;IACH,OAAO,CAAC,SAAS;CAGlB"}
|
|
@@ -60,8 +60,9 @@ class EmailVerificationService {
|
|
|
60
60
|
config;
|
|
61
61
|
clientInfoService;
|
|
62
62
|
logger;
|
|
63
|
+
hookRegistry;
|
|
63
64
|
auditService;
|
|
64
|
-
constructor(verificationTokenRepo, userRepo, emailProvider, storageAdapter, config, clientInfoService, logger, auditService) {
|
|
65
|
+
constructor(verificationTokenRepo, userRepo, emailProvider, storageAdapter, config, clientInfoService, logger, hookRegistry, auditService) {
|
|
65
66
|
this.verificationTokenRepo = verificationTokenRepo;
|
|
66
67
|
this.userRepo = userRepo;
|
|
67
68
|
this.emailProvider = emailProvider;
|
|
@@ -69,6 +70,7 @@ class EmailVerificationService {
|
|
|
69
70
|
this.config = config;
|
|
70
71
|
this.clientInfoService = clientInfoService;
|
|
71
72
|
this.logger = logger;
|
|
73
|
+
this.hookRegistry = hookRegistry;
|
|
72
74
|
this.auditService = auditService;
|
|
73
75
|
}
|
|
74
76
|
/**
|
|
@@ -359,6 +361,43 @@ class EmailVerificationService {
|
|
|
359
361
|
userId: user.id,
|
|
360
362
|
});
|
|
361
363
|
}
|
|
364
|
+
// ============================================================================
|
|
365
|
+
// Hook: Execute user profile updated hooks
|
|
366
|
+
// ============================================================================
|
|
367
|
+
try {
|
|
368
|
+
// Refetch user to get complete updated state
|
|
369
|
+
const updatedUser = (await this.userRepo.findOne({ where: { id: user.id } }));
|
|
370
|
+
if (updatedUser) {
|
|
371
|
+
// Get client info from ClientInfoService
|
|
372
|
+
const clientInfo = this.clientInfoService.get();
|
|
373
|
+
// Execute hooks (non-blocking)
|
|
374
|
+
await this.hookRegistry.executeUserProfileUpdated({
|
|
375
|
+
user: updatedUser,
|
|
376
|
+
changedFields: [
|
|
377
|
+
{
|
|
378
|
+
fieldName: 'isEmailVerified',
|
|
379
|
+
oldValue: false,
|
|
380
|
+
newValue: true,
|
|
381
|
+
},
|
|
382
|
+
],
|
|
383
|
+
updateSource: 'email_verification',
|
|
384
|
+
clientInfo: {
|
|
385
|
+
ipAddress: clientInfo.ipAddress,
|
|
386
|
+
userAgent: clientInfo.userAgent,
|
|
387
|
+
ipCountry: clientInfo.ipCountry,
|
|
388
|
+
ipCity: clientInfo.ipCity,
|
|
389
|
+
},
|
|
390
|
+
});
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
catch (hookError) {
|
|
394
|
+
// Non-blocking: Log but continue
|
|
395
|
+
const errorMessage = hookError instanceof Error ? hookError.message : 'Unknown error';
|
|
396
|
+
this.logger?.error?.(`Failed to execute userProfileUpdated hooks: ${errorMessage}`, {
|
|
397
|
+
error: hookError,
|
|
398
|
+
userId: user.id,
|
|
399
|
+
});
|
|
400
|
+
}
|
|
362
401
|
// TODO: maybe refactor to return user save user query in parent function
|
|
363
402
|
return {
|
|
364
403
|
message: 'Email verified successfully. Please log in to continue.',
|
|
@@ -430,6 +469,43 @@ class EmailVerificationService {
|
|
|
430
469
|
userId: user?.id,
|
|
431
470
|
});
|
|
432
471
|
}
|
|
472
|
+
// ============================================================================
|
|
473
|
+
// Hook: Execute user profile updated hooks
|
|
474
|
+
// ============================================================================
|
|
475
|
+
try {
|
|
476
|
+
// Refetch user to get complete updated state
|
|
477
|
+
const updatedUser = (await this.userRepo.findOne({ where: { id: user.id } }));
|
|
478
|
+
if (updatedUser) {
|
|
479
|
+
// Get client info from ClientInfoService
|
|
480
|
+
const clientInfo = this.clientInfoService.get();
|
|
481
|
+
// Execute hooks (non-blocking)
|
|
482
|
+
await this.hookRegistry.executeUserProfileUpdated({
|
|
483
|
+
user: updatedUser,
|
|
484
|
+
changedFields: [
|
|
485
|
+
{
|
|
486
|
+
fieldName: 'isEmailVerified',
|
|
487
|
+
oldValue: false,
|
|
488
|
+
newValue: true,
|
|
489
|
+
},
|
|
490
|
+
],
|
|
491
|
+
updateSource: 'email_verification',
|
|
492
|
+
clientInfo: {
|
|
493
|
+
ipAddress: clientInfo.ipAddress,
|
|
494
|
+
userAgent: clientInfo.userAgent,
|
|
495
|
+
ipCountry: clientInfo.ipCountry,
|
|
496
|
+
ipCity: clientInfo.ipCity,
|
|
497
|
+
},
|
|
498
|
+
});
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
catch (hookError) {
|
|
502
|
+
// Non-blocking: Log but continue
|
|
503
|
+
const errorMessage = hookError instanceof Error ? hookError.message : 'Unknown error';
|
|
504
|
+
this.logger?.error?.(`Failed to execute userProfileUpdated hooks: ${errorMessage}`, {
|
|
505
|
+
error: hookError,
|
|
506
|
+
userId: user?.id,
|
|
507
|
+
});
|
|
508
|
+
}
|
|
433
509
|
}
|
|
434
510
|
return {
|
|
435
511
|
message: 'Email verified successfully. Please log in to continue.',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-verification.service.js","sourceRoot":"","sources":["../../src/services/email-verification.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"email-verification.service.js","sourceRoot":"","sources":["../../src/services/email-verification.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,57 +10,19 @@
|
|
|
10
10
|
*
|
|
11
11
|
* @packageDocumentation
|
|
12
12
|
*/
|
|
13
|
-
import { IPreSignupHookProvider,
|
|
13
|
+
import { IPreSignupHookProvider, IPostSignupHookProvider, SignupMetadata, PreSignupHookData, IUserProfileUpdatedHookProvider, UserProfileUpdatedMetadata } from '../interfaces/hooks.interface';
|
|
14
|
+
import { IUser } from '../interfaces/entities.interface';
|
|
14
15
|
import { LoggerProvider } from '../interfaces/logger.interface';
|
|
15
16
|
/**
|
|
16
17
|
* Hook Registry Service
|
|
17
18
|
*
|
|
18
19
|
* Manages registration and execution of lifecycle hooks for authentication flows.
|
|
19
|
-
*
|
|
20
|
-
* @example NestJS usage
|
|
21
|
-
* ```typescript
|
|
22
|
-
* @Module({
|
|
23
|
-
* imports: [AuthModule.forRoot(authConfig)],
|
|
24
|
-
* providers: [InviteOnlyHook, WelcomeEmailHook],
|
|
25
|
-
* })
|
|
26
|
-
* export class AppModule {
|
|
27
|
-
* constructor(
|
|
28
|
-
* private readonly hookRegistry: HookRegistryService,
|
|
29
|
-
* private readonly inviteHook: InviteOnlyHook,
|
|
30
|
-
* private readonly welcomeHook: WelcomeEmailHook,
|
|
31
|
-
* ) {
|
|
32
|
-
* this.hookRegistry.registerPreSignup(this.inviteHook);
|
|
33
|
-
* this.hookRegistry.registerAfterSignup(this.welcomeHook);
|
|
34
|
-
* }
|
|
35
|
-
* }
|
|
36
|
-
* ```
|
|
37
|
-
*
|
|
38
|
-
* @example Express usage
|
|
39
|
-
* ```typescript
|
|
40
|
-
* const nauth = await NAuth.create({ config, dataSource, adapter });
|
|
41
|
-
*
|
|
42
|
-
* const inviteHook = new InviteOnlyHook(invitationService);
|
|
43
|
-
* nauth.hookRegistry.registerPreSignup(inviteHook);
|
|
44
|
-
*
|
|
45
|
-
* const welcomeHook = new WelcomeEmailHook(emailService);
|
|
46
|
-
* nauth.hookRegistry.registerAfterSignup(welcomeHook);
|
|
47
|
-
* ```
|
|
48
|
-
*
|
|
49
|
-
* @example Fastify usage
|
|
50
|
-
* ```typescript
|
|
51
|
-
* const nauth = await NAuth.create({ config, dataSource, adapter });
|
|
52
|
-
*
|
|
53
|
-
* const inviteHook = new InviteOnlyHook(invitationService);
|
|
54
|
-
* nauth.hookRegistry.registerPreSignup(inviteHook);
|
|
55
|
-
*
|
|
56
|
-
* const welcomeHook = new WelcomeEmailHook(emailService);
|
|
57
|
-
* nauth.hookRegistry.registerAfterSignup(welcomeHook);
|
|
58
|
-
* ```
|
|
59
20
|
*/
|
|
60
21
|
export declare class HookRegistryService {
|
|
61
22
|
private readonly logger?;
|
|
62
23
|
private readonly preSignupHooks;
|
|
63
|
-
private readonly
|
|
24
|
+
private readonly postSignupHooks;
|
|
25
|
+
private readonly userProfileUpdatedHooks;
|
|
64
26
|
constructor(logger?: LoggerProvider | undefined);
|
|
65
27
|
/**
|
|
66
28
|
* Register a pre-signup hook provider
|
|
@@ -69,29 +31,26 @@ export declare class HookRegistryService {
|
|
|
69
31
|
* First hook to throw PRESIGNUP_FAILED will block signup.
|
|
70
32
|
*
|
|
71
33
|
* @param provider - Pre-signup hook provider instance
|
|
72
|
-
*
|
|
73
|
-
* @example
|
|
74
|
-
* ```typescript
|
|
75
|
-
* const inviteHook = new InviteOnlyHook(invitationService);
|
|
76
|
-
* hookRegistry.registerPreSignup(inviteHook);
|
|
77
|
-
* ```
|
|
78
34
|
*/
|
|
79
35
|
registerPreSignup(provider: IPreSignupHookProvider): void;
|
|
80
36
|
/**
|
|
81
|
-
* Register
|
|
37
|
+
* Register a post-signup hook provider
|
|
82
38
|
*
|
|
83
39
|
* Hooks are executed in registration order.
|
|
84
40
|
* Hook errors are logged but do not block signup (non-blocking).
|
|
85
41
|
*
|
|
86
|
-
* @param provider -
|
|
42
|
+
* @param provider - Post-signup hook provider instance
|
|
43
|
+
*/
|
|
44
|
+
registerPostSignup(provider: IPostSignupHookProvider): void;
|
|
45
|
+
/**
|
|
46
|
+
* Register a user profile updated hook provider
|
|
47
|
+
*
|
|
48
|
+
* Hooks are executed in registration order.
|
|
49
|
+
* Hook errors are logged but do not block profile updates (non-blocking).
|
|
87
50
|
*
|
|
88
|
-
* @
|
|
89
|
-
* ```typescript
|
|
90
|
-
* const welcomeHook = new WelcomeEmailHook(emailService);
|
|
91
|
-
* hookRegistry.registerAfterSignup(welcomeHook);
|
|
92
|
-
* ```
|
|
51
|
+
* @param provider - User profile updated hook provider instance
|
|
93
52
|
*/
|
|
94
|
-
|
|
53
|
+
registerUserProfileUpdated(provider: IUserProfileUpdatedHookProvider): void;
|
|
95
54
|
/**
|
|
96
55
|
* Execute all registered pre-signup hooks
|
|
97
56
|
*
|
|
@@ -99,27 +58,39 @@ export declare class HookRegistryService {
|
|
|
99
58
|
* First hook to throw PRESIGNUP_FAILED will stop execution and block signup.
|
|
100
59
|
*
|
|
101
60
|
* @param data - SignupDTO for password signup, OAuthUserProfile for social signup
|
|
102
|
-
* @param signupType - Type of signup
|
|
103
|
-
* @param provider - Social provider name (only for social signups)
|
|
61
|
+
* @param signupType - Type of signup ('password' or 'social')
|
|
62
|
+
* @param provider - Social provider name (only for social signups, e.g., 'google', 'apple', 'facebook')
|
|
104
63
|
* @param adminSignup - true for admin signups, false for regular signups
|
|
105
64
|
* @throws {NAuthException} with PRESIGNUP_FAILED if any hook blocks signup
|
|
106
65
|
*
|
|
107
66
|
* @internal
|
|
108
67
|
* @remarks This method is called internally by AuthService and BaseSocialAuthProviderService
|
|
109
68
|
*/
|
|
110
|
-
executePreSignup(data:
|
|
69
|
+
executePreSignup(data: PreSignupHookData, signupType: 'password' | 'social', provider?: string, adminSignup?: boolean): Promise<void>;
|
|
111
70
|
/**
|
|
112
|
-
* Execute all registered
|
|
71
|
+
* Execute all registered post-signup hooks
|
|
113
72
|
*
|
|
114
73
|
* Hooks are executed sequentially in registration order.
|
|
115
74
|
* Hook errors are logged but do not stop execution (non-blocking).
|
|
116
75
|
*
|
|
117
|
-
* @param user - Created user entity (
|
|
118
|
-
* @param metadata - Signup metadata
|
|
76
|
+
* @param user - Created user entity (IUser interface)
|
|
77
|
+
* @param metadata - Signup metadata providing context about the signup event
|
|
119
78
|
*
|
|
120
79
|
* @internal
|
|
121
80
|
* @remarks This method is called internally by AuthService and BaseSocialAuthProviderService
|
|
122
81
|
*/
|
|
123
|
-
|
|
82
|
+
executePostSignup(user: IUser, metadata?: SignupMetadata): Promise<void>;
|
|
83
|
+
/**
|
|
84
|
+
* Execute all registered user profile updated hooks
|
|
85
|
+
*
|
|
86
|
+
* Hooks are executed sequentially in registration order.
|
|
87
|
+
* Hook errors are logged but do not stop execution (non-blocking).
|
|
88
|
+
*
|
|
89
|
+
* @param metadata - Profile update context with user, changed fields, and update source
|
|
90
|
+
*
|
|
91
|
+
* @internal
|
|
92
|
+
* @remarks This method is called internally by AuthService, EmailVerificationService, and PhoneVerificationService
|
|
93
|
+
*/
|
|
94
|
+
executeUserProfileUpdated(metadata: UserProfileUpdatedMetadata): Promise<void>;
|
|
124
95
|
}
|
|
125
96
|
//# sourceMappingURL=hook-registry.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook-registry.service.d.ts","sourceRoot":"","sources":["../../src/services/hook-registry.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"hook-registry.service.d.ts","sourceRoot":"","sources":["../../src/services/hook-registry.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,cAAc,EACd,iBAAiB,EACjB,+BAA+B,EAC/B,0BAA0B,EAC3B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAIhE;;;;GAIG;AACH,qBAAa,mBAAmB;IAKlB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IAJpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgC;IAC/D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiC;IACjE,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAyC;gBAEpD,MAAM,CAAC,EAAE,cAAc,YAAA;IAMpD;;;;;;;OAOG;IACH,iBAAiB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,IAAI;IAKzD;;;;;;;OAOG;IACH,kBAAkB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI;IAK3D;;;;;;;OAOG;IACH,0BAA0B,CAAC,QAAQ,EAAE,+BAA+B,GAAG,IAAI;IAS3E;;;;;;;;;;;;;;OAcG;IACG,gBAAgB,CACpB,IAAI,EAAE,iBAAiB,EACvB,UAAU,EAAE,UAAU,GAAG,QAAQ,EACjC,QAAQ,CAAC,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,IAAI,CAAC;IA4BhB;;;;;;;;;;;OAWG;IACG,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB9E;;;;;;;;;;OAUG;IACG,yBAAyB,CAAC,QAAQ,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC;CAkBrF"}
|
|
@@ -19,51 +19,12 @@ const error_codes_enum_1 = require("../enums/error-codes.enum");
|
|
|
19
19
|
* Hook Registry Service
|
|
20
20
|
*
|
|
21
21
|
* Manages registration and execution of lifecycle hooks for authentication flows.
|
|
22
|
-
*
|
|
23
|
-
* @example NestJS usage
|
|
24
|
-
* ```typescript
|
|
25
|
-
* @Module({
|
|
26
|
-
* imports: [AuthModule.forRoot(authConfig)],
|
|
27
|
-
* providers: [InviteOnlyHook, WelcomeEmailHook],
|
|
28
|
-
* })
|
|
29
|
-
* export class AppModule {
|
|
30
|
-
* constructor(
|
|
31
|
-
* private readonly hookRegistry: HookRegistryService,
|
|
32
|
-
* private readonly inviteHook: InviteOnlyHook,
|
|
33
|
-
* private readonly welcomeHook: WelcomeEmailHook,
|
|
34
|
-
* ) {
|
|
35
|
-
* this.hookRegistry.registerPreSignup(this.inviteHook);
|
|
36
|
-
* this.hookRegistry.registerAfterSignup(this.welcomeHook);
|
|
37
|
-
* }
|
|
38
|
-
* }
|
|
39
|
-
* ```
|
|
40
|
-
*
|
|
41
|
-
* @example Express usage
|
|
42
|
-
* ```typescript
|
|
43
|
-
* const nauth = await NAuth.create({ config, dataSource, adapter });
|
|
44
|
-
*
|
|
45
|
-
* const inviteHook = new InviteOnlyHook(invitationService);
|
|
46
|
-
* nauth.hookRegistry.registerPreSignup(inviteHook);
|
|
47
|
-
*
|
|
48
|
-
* const welcomeHook = new WelcomeEmailHook(emailService);
|
|
49
|
-
* nauth.hookRegistry.registerAfterSignup(welcomeHook);
|
|
50
|
-
* ```
|
|
51
|
-
*
|
|
52
|
-
* @example Fastify usage
|
|
53
|
-
* ```typescript
|
|
54
|
-
* const nauth = await NAuth.create({ config, dataSource, adapter });
|
|
55
|
-
*
|
|
56
|
-
* const inviteHook = new InviteOnlyHook(invitationService);
|
|
57
|
-
* nauth.hookRegistry.registerPreSignup(inviteHook);
|
|
58
|
-
*
|
|
59
|
-
* const welcomeHook = new WelcomeEmailHook(emailService);
|
|
60
|
-
* nauth.hookRegistry.registerAfterSignup(welcomeHook);
|
|
61
|
-
* ```
|
|
62
22
|
*/
|
|
63
23
|
class HookRegistryService {
|
|
64
24
|
logger;
|
|
65
25
|
preSignupHooks = [];
|
|
66
|
-
|
|
26
|
+
postSignupHooks = [];
|
|
27
|
+
userProfileUpdatedHooks = [];
|
|
67
28
|
constructor(logger) {
|
|
68
29
|
this.logger = logger;
|
|
69
30
|
}
|
|
@@ -77,34 +38,34 @@ class HookRegistryService {
|
|
|
77
38
|
* First hook to throw PRESIGNUP_FAILED will block signup.
|
|
78
39
|
*
|
|
79
40
|
* @param provider - Pre-signup hook provider instance
|
|
80
|
-
*
|
|
81
|
-
* @example
|
|
82
|
-
* ```typescript
|
|
83
|
-
* const inviteHook = new InviteOnlyHook(invitationService);
|
|
84
|
-
* hookRegistry.registerPreSignup(inviteHook);
|
|
85
|
-
* ```
|
|
86
41
|
*/
|
|
87
42
|
registerPreSignup(provider) {
|
|
88
43
|
this.preSignupHooks.push(provider);
|
|
89
44
|
this.logger?.debug?.(`[HookRegistry] Registered preSignup hook: ${provider.constructor.name}`);
|
|
90
45
|
}
|
|
91
46
|
/**
|
|
92
|
-
* Register
|
|
47
|
+
* Register a post-signup hook provider
|
|
93
48
|
*
|
|
94
49
|
* Hooks are executed in registration order.
|
|
95
50
|
* Hook errors are logged but do not block signup (non-blocking).
|
|
96
51
|
*
|
|
97
|
-
* @param provider -
|
|
52
|
+
* @param provider - Post-signup hook provider instance
|
|
53
|
+
*/
|
|
54
|
+
registerPostSignup(provider) {
|
|
55
|
+
this.postSignupHooks.push(provider);
|
|
56
|
+
this.logger?.debug?.(`[HookRegistry] Registered postSignup hook: ${provider.constructor.name}`);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Register a user profile updated hook provider
|
|
60
|
+
*
|
|
61
|
+
* Hooks are executed in registration order.
|
|
62
|
+
* Hook errors are logged but do not block profile updates (non-blocking).
|
|
98
63
|
*
|
|
99
|
-
* @
|
|
100
|
-
* ```typescript
|
|
101
|
-
* const welcomeHook = new WelcomeEmailHook(emailService);
|
|
102
|
-
* hookRegistry.registerAfterSignup(welcomeHook);
|
|
103
|
-
* ```
|
|
64
|
+
* @param provider - User profile updated hook provider instance
|
|
104
65
|
*/
|
|
105
|
-
|
|
106
|
-
this.
|
|
107
|
-
this.logger?.debug?.(`[HookRegistry] Registered
|
|
66
|
+
registerUserProfileUpdated(provider) {
|
|
67
|
+
this.userProfileUpdatedHooks.push(provider);
|
|
68
|
+
this.logger?.debug?.(`[HookRegistry] Registered userProfileUpdated hook: ${provider.constructor.name}`);
|
|
108
69
|
}
|
|
109
70
|
// ============================================================================
|
|
110
71
|
// Execution Methods
|
|
@@ -116,8 +77,8 @@ class HookRegistryService {
|
|
|
116
77
|
* First hook to throw PRESIGNUP_FAILED will stop execution and block signup.
|
|
117
78
|
*
|
|
118
79
|
* @param data - SignupDTO for password signup, OAuthUserProfile for social signup
|
|
119
|
-
* @param signupType - Type of signup
|
|
120
|
-
* @param provider - Social provider name (only for social signups)
|
|
80
|
+
* @param signupType - Type of signup ('password' or 'social')
|
|
81
|
+
* @param provider - Social provider name (only for social signups, e.g., 'google', 'apple', 'facebook')
|
|
121
82
|
* @param adminSignup - true for admin signups, false for regular signups
|
|
122
83
|
* @throws {NAuthException} with PRESIGNUP_FAILED if any hook blocks signup
|
|
123
84
|
*
|
|
@@ -146,29 +107,55 @@ class HookRegistryService {
|
|
|
146
107
|
}
|
|
147
108
|
}
|
|
148
109
|
/**
|
|
149
|
-
* Execute all registered
|
|
110
|
+
* Execute all registered post-signup hooks
|
|
150
111
|
*
|
|
151
112
|
* Hooks are executed sequentially in registration order.
|
|
152
113
|
* Hook errors are logged but do not stop execution (non-blocking).
|
|
153
114
|
*
|
|
154
|
-
* @param user - Created user entity (
|
|
155
|
-
* @param metadata - Signup metadata
|
|
115
|
+
* @param user - Created user entity (IUser interface)
|
|
116
|
+
* @param metadata - Signup metadata providing context about the signup event
|
|
156
117
|
*
|
|
157
118
|
* @internal
|
|
158
119
|
* @remarks This method is called internally by AuthService and BaseSocialAuthProviderService
|
|
159
120
|
*/
|
|
160
|
-
async
|
|
161
|
-
if (this.
|
|
121
|
+
async executePostSignup(user, metadata) {
|
|
122
|
+
if (this.postSignupHooks.length === 0) {
|
|
162
123
|
return; // No hooks registered
|
|
163
124
|
}
|
|
164
|
-
for (const hook of this.
|
|
125
|
+
for (const hook of this.postSignupHooks) {
|
|
165
126
|
try {
|
|
166
127
|
await hook.execute(user, metadata);
|
|
167
128
|
}
|
|
168
129
|
catch (hookError) {
|
|
169
130
|
// Non-blocking: log error and continue
|
|
170
131
|
const errorMessage = hookError instanceof Error ? hookError.message : 'Unknown error';
|
|
171
|
-
this.logger?.error?.(`[HookRegistry]
|
|
132
|
+
this.logger?.error?.(`[HookRegistry] postSignup hook error: ${hook.constructor.name} - ${errorMessage}`, hookError instanceof Error ? { error: hookError } : undefined);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Execute all registered user profile updated hooks
|
|
138
|
+
*
|
|
139
|
+
* Hooks are executed sequentially in registration order.
|
|
140
|
+
* Hook errors are logged but do not stop execution (non-blocking).
|
|
141
|
+
*
|
|
142
|
+
* @param metadata - Profile update context with user, changed fields, and update source
|
|
143
|
+
*
|
|
144
|
+
* @internal
|
|
145
|
+
* @remarks This method is called internally by AuthService, EmailVerificationService, and PhoneVerificationService
|
|
146
|
+
*/
|
|
147
|
+
async executeUserProfileUpdated(metadata) {
|
|
148
|
+
if (this.userProfileUpdatedHooks.length === 0) {
|
|
149
|
+
return; // No hooks registered
|
|
150
|
+
}
|
|
151
|
+
for (const hook of this.userProfileUpdatedHooks) {
|
|
152
|
+
try {
|
|
153
|
+
await hook.execute(metadata);
|
|
154
|
+
}
|
|
155
|
+
catch (hookError) {
|
|
156
|
+
// Non-blocking: log error and continue
|
|
157
|
+
const errorMessage = hookError instanceof Error ? hookError.message : 'Unknown error';
|
|
158
|
+
this.logger?.error?.(`[HookRegistry] userProfileUpdated hook error: ${hook.constructor.name} - ${errorMessage}`, hookError instanceof Error ? { error: hookError } : undefined);
|
|
172
159
|
}
|
|
173
160
|
}
|
|
174
161
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook-registry.service.js","sourceRoot":"","sources":["../../src/services/hook-registry.service.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;
|
|
1
|
+
{"version":3,"file":"hook-registry.service.js","sourceRoot":"","sources":["../../src/services/hook-registry.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import { NAuthConfig } from '../interfaces/config.interface';
|
|
|
6
6
|
import { ClientInfoService } from './client-info.service';
|
|
7
7
|
import { InternalAuthAuditService as AuthAuditService } from './auth-audit.service';
|
|
8
8
|
import { NAuthLogger } from '../utils/nauth-logger';
|
|
9
|
+
import { HookRegistryService } from './hook-registry.service';
|
|
9
10
|
import { SendVerificationSMSDTO, SendVerificationSMSResponseDTO, VerifyPhoneWithCodeDTO, VerifyPhoneResponseDTO, ResendVerificationSMSDTO, ResendVerificationSMSResponseDTO } from '../dto/verify-phone.dto';
|
|
10
11
|
import { VerifyPhoneWithCodeBySubDTO } from '../dto/verify-phone-by-sub.dto';
|
|
11
12
|
/**
|
|
@@ -37,8 +38,9 @@ export declare class PhoneVerificationService {
|
|
|
37
38
|
private readonly config;
|
|
38
39
|
private readonly clientInfoService;
|
|
39
40
|
private readonly logger;
|
|
41
|
+
private readonly hookRegistry;
|
|
40
42
|
private readonly auditService?;
|
|
41
|
-
constructor(verificationTokenRepo: Repository<BaseVerificationToken>, userRepo: Repository<BaseUser>, smsProvider: SMSProvider, storageAdapter: StorageAdapter, config: NAuthConfig, clientInfoService: ClientInfoService, logger: NAuthLogger, auditService?: AuthAuditService | undefined);
|
|
43
|
+
constructor(verificationTokenRepo: Repository<BaseVerificationToken>, userRepo: Repository<BaseUser>, smsProvider: SMSProvider, storageAdapter: StorageAdapter, config: NAuthConfig, clientInfoService: ClientInfoService, logger: NAuthLogger, hookRegistry: HookRegistryService, auditService?: AuthAuditService | undefined);
|
|
42
44
|
/**
|
|
43
45
|
* Send verification SMS to user identified by `sub`.
|
|
44
46
|
* Applies rate limits and resend delay, stores hashed token + OTP, and sends via SMS provider.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phone-verification.service.d.ts","sourceRoot":"","sources":["../../src/services/phone-verification.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAU,MAAM,SAAS,CAAC;AAE7C,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,IAAI,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIpF,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC9B,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,gCAAgC,EACjC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAI7E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,wBAAwB;IAEjC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"phone-verification.service.d.ts","sourceRoot":"","sources":["../../src/services/phone-verification.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAU,MAAM,SAAS,CAAC;AAE7C,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,IAAI,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIpF,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC9B,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,gCAAgC,EACjC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAI7E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,wBAAwB;IAEjC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;gBARb,qBAAqB,EAAE,UAAU,CAAC,qBAAqB,CAAC,EACxD,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,EAC9B,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,WAAW,EACnB,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,WAAW,EACnB,YAAY,EAAE,mBAAmB,EACjC,YAAY,CAAC,EAAE,gBAAgB,YAAA;IAGlD;;;;;;;OAOG;IACG,mBAAmB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,8BAA8B,CAAC;IA+K/F;;;;;;;OAOG;IACG,mBAAmB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAqNvF;;;;;OAKG;IACG,wBAAwB,CAAC,GAAG,EAAE,2BAA2B,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAkRjG;;;;;;OAMG;IACG,qBAAqB,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,gCAAgC,CAAC;IAcrG;;;;;OAKG;YACW,0BAA0B;IAqCxC;;;;;OAKG;YACW,6BAA6B;IAe3C;;OAEG;IACH,OAAO,CAAC,YAAY;IAOpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,SAAS;IAIjB;;;OAGG;IACH,OAAO,CAAC,SAAS;CAIlB"}
|