canAddItem method

  1. @override
FutureOr<bool> canAddItem(
  1. String item
)
override

Implementation

@override
FutureOr<bool> canAddItem(String item) async {
  if (subjectsByKey.containsKey(item)) {
    return true;
  }
  if (!SelectUsersController.emailRegex.hasMatch(item)) {
    return false;
  }

  final resolved = await resolveSubject?.call(item);
  if (resolved != null) {
    if (isAllowedSubject?.call(resolved) == false) {
      return false;
    }
    subjectsByKey[item] = resolved;
    return true;
  }

  return allowNewUserEmail;
}