AuthConfig constructor

AuthConfig({
  1. required String table,
  2. required String emailColumn,
  3. required String passwordColumn,
  4. String? nameColumn,
  5. String? providerColumn,
  6. String? providerIdColumn,
  7. String? googleClientId,
  8. String? googleClientSecret,
  9. String? githubClientId,
  10. String? githubClientSecret,
  11. String? facebookClientId,
  12. String? facebookClientSecret,
  13. String? appleClientId,
  14. String? appleTeamId,
  15. String? appleKeyId,
  16. String? applePrivateKey,
  17. required String redirectBase,
  18. String? jwtSecret,
  19. int jwtExpiryHours = 24,
  20. bool requireEmailVerification = false,
  21. int passwordMinLength = 6,
})

Implementation

AuthConfig({
  // Database configuration
  required this.table,
  required this.emailColumn,
  required this.passwordColumn,
  this.nameColumn,
  this.providerColumn,
  this.providerIdColumn,

  // Google OAuth
  this.googleClientId,
  this.googleClientSecret,

  // GitHub OAuth
  this.githubClientId,
  this.githubClientSecret,

  // Facebook OAuth
  this.facebookClientId,
  this.facebookClientSecret,

  // Apple Sign In
  this.appleClientId,
  this.appleTeamId,
  this.appleKeyId,
  this.applePrivateKey,

  // Application settings
  required this.redirectBase,
  this.jwtSecret,

  // Security settings
  this.jwtExpiryHours = 24,
  this.requireEmailVerification = false,
  this.passwordMinLength = 6,
});