AuthUsernameRegistrationCommand constructor

AuthUsernameRegistrationCommand({
  1. required AuthUser user,
  2. required AuthPasswordCredential credential,
})

Creates a validated atomic username-registration command.

Implementation

AuthUsernameRegistrationCommand({
  required this.user,
  required this.credential,
}) {
  if (credential.userId != user.id ||
      credential.identifier.trim() != credential.identifier ||
      credential.identifier.isEmpty ||
      credential.identifier.contains('@') ||
      user.attributes['username'] != credential.identifier) {
    throw ArgumentError(
      'Username registration requires one canonical owned credential.',
    );
  }
}