@nauth-toolkit/mfa-email 0.1.45 → 0.1.48
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.
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Repository } from 'typeorm';
|
|
2
|
-
import { BaseMFADevice, BaseUser, IUser, NAuthConfig, NAuthLogger, EmailVerificationService, MFAMethod } from '@nauth-toolkit/core';
|
|
3
|
-
import { BaseMFAProviderService } from '@nauth-toolkit/core/internal';
|
|
2
|
+
import { BaseMFADevice, BaseUser, IUser, NAuthConfig, NAuthLogger, EmailVerificationService, MFAMethod, ClientInfoService } from '@nauth-toolkit/core';
|
|
3
|
+
import { BaseMFAProviderService, ChallengeService, AuthAuditService } from '@nauth-toolkit/core/internal';
|
|
4
4
|
/**
|
|
5
5
|
* Email MFA Provider Service
|
|
6
6
|
*
|
|
@@ -25,9 +25,7 @@ import { BaseMFAProviderService } from '@nauth-toolkit/core/internal';
|
|
|
25
25
|
export declare class EmailMFAProviderService extends BaseMFAProviderService {
|
|
26
26
|
private readonly emailVerificationService?;
|
|
27
27
|
readonly methodName = MFAMethod.EMAIL;
|
|
28
|
-
constructor(mfaDeviceRepository: Repository<BaseMFADevice>, userRepository: Repository<BaseUser>, config: NAuthConfig, logger: NAuthLogger, passwordService: unknown, emailVerificationService?: EmailVerificationService | undefined, challengeService?:
|
|
29
|
-
auditService?: unknown, // AuthAuditService (optional)
|
|
30
|
-
clientInfoService?: unknown);
|
|
28
|
+
constructor(mfaDeviceRepository: Repository<BaseMFADevice>, userRepository: Repository<BaseUser>, config: NAuthConfig, logger: NAuthLogger, passwordService: unknown, emailVerificationService?: EmailVerificationService | undefined, challengeService?: ChallengeService, auditService?: AuthAuditService, clientInfoService?: ClientInfoService);
|
|
31
29
|
/**
|
|
32
30
|
* Setup Email MFA for user
|
|
33
31
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-mfa-provider.service.d.ts","sourceRoot":"","sources":["../../src/email-mfa-provider.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EACL,aAAa,EACb,QAAQ,EACR,KAAK,EACL,WAAW,EACX,WAAW,EAGX,wBAAwB,EACxB,SAAS,
|
|
1
|
+
{"version":3,"file":"email-mfa-provider.service.d.ts","sourceRoot":"","sources":["../../src/email-mfa-provider.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EACL,aAAa,EACb,QAAQ,EACR,KAAK,EACL,WAAW,EACX,WAAW,EAGX,wBAAwB,EACxB,SAAS,EAGT,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAG1G;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,uBAAwB,SAAQ,sBAAsB;IAS/D,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAR5C,QAAQ,CAAC,UAAU,mBAAmB;gBAGpC,mBAAmB,EAAE,UAAU,CAAC,aAAa,CAAC,EAC9C,cAAc,EAAE,UAAU,CAAC,QAAQ,CAAC,EACpC,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,WAAW,EACnB,eAAe,EAAE,OAAO,EACP,wBAAwB,CAAC,EAAE,wBAAwB,YAAA,EACpE,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,YAAY,CAAC,EAAE,gBAAgB,EAC/B,iBAAiB,CAAC,EAAE,iBAAiB;IAcvC;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,KAAK,CACT,IAAI,EAAE,KAAK,EACX,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAkE/E;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmF/F;;;;;;;;;;;;;;;OAeG;IACG,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAoE7E;;;;;;;;;;;;;;OAcG;IACG,aAAa,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;CA4ClD"}
|
|
@@ -29,9 +29,7 @@ const internal_1 = require("@nauth-toolkit/core/internal");
|
|
|
29
29
|
class EmailMFAProviderService extends internal_1.BaseMFAProviderService {
|
|
30
30
|
emailVerificationService;
|
|
31
31
|
methodName = core_1.MFAMethod.EMAIL;
|
|
32
|
-
constructor(mfaDeviceRepository, userRepository, config, logger, passwordService, emailVerificationService, challengeService,
|
|
33
|
-
auditService, // AuthAuditService (optional)
|
|
34
|
-
clientInfoService) {
|
|
32
|
+
constructor(mfaDeviceRepository, userRepository, config, logger, passwordService, emailVerificationService, challengeService, auditService, clientInfoService) {
|
|
35
33
|
super(mfaDeviceRepository, userRepository, config, logger, passwordService, challengeService, auditService, clientInfoService);
|
|
36
34
|
this.emailVerificationService = emailVerificationService;
|
|
37
35
|
}
|
|
@@ -256,7 +254,7 @@ class EmailMFAProviderService extends internal_1.BaseMFAProviderService {
|
|
|
256
254
|
}
|
|
257
255
|
// For unexpected errors, log and return false (generic failure)
|
|
258
256
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
259
|
-
const errorCode = error
|
|
257
|
+
const errorCode = (error && typeof error === 'object' && 'code' in error ? String(error.code) : undefined) || 'UNKNOWN';
|
|
260
258
|
this.logger?.warn?.(`Email code verification failed for user: ${user.sub}, code: ${emailCode}, error: ${errorCode} - ${errorMessage}`);
|
|
261
259
|
return false;
|
|
262
260
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-mfa-provider.service.js","sourceRoot":"","sources":["../../src/email-mfa-provider.service.ts"],"names":[],"mappings":";;;AACA,qBAAqB;AACrB,
|
|
1
|
+
{"version":3,"file":"email-mfa-provider.service.js","sourceRoot":"","sources":["../../src/email-mfa-provider.service.ts"],"names":[],"mappings":"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"}
|