EmailIdpPasswordResetUtil constructor

EmailIdpPasswordResetUtil({
  1. required EmailIdpPasswordResetUtilsConfig config,
  2. required Argon2HashUtil passwordHashUtils,
  3. Argon2HashUtil? verificationCodeHash,
  4. Argon2HashUtil? completionTokenHash,
})

Creates a new EmailIdpPasswordResetUtil instance.

Implementation

EmailIdpPasswordResetUtil({
  required final EmailIdpPasswordResetUtilsConfig config,
  required final Argon2HashUtil passwordHashUtils,
  final Argon2HashUtil? verificationCodeHash,
  final Argon2HashUtil? completionTokenHash,
}) : _config = config,
     _passwordHashUtil = passwordHashUtils,
     _rateLimitUtil = DatabaseRateLimiter(
       RateLimiterConfig(
         domain: 'email',
         source: 'password_reset',
         maxAttempts: config.maxPasswordResetAttempts.maxAttempts,
         timeframe: config.maxPasswordResetAttempts.timeframe,
       ),
     ) {
  _challengeUtil = SecretChallengeUtil(
    hashUtil: verificationCodeHash ?? passwordHashUtils,
    completionTokenHash: completionTokenHash,
    verificationConfig: _getVerificationConfig(),
    completionConfig: _getCompletionConfig(),
  );
}