/**
* Retrieve a user by the given credentials.
*
* @param array $credentials
* @return Illuminate\Auth\UserInterface|null
*/
public function retrieveByCredentials(array $credentials)
{
$query = $this->connection->collection($this->collection);
foreach ($credentials as $key => $value) {
if (!str_contains($key, 'password')) {
$query->where($key, $value);
}
}
$user = $query->first();
if (!is_null($user)) {
$user['id'] = (string) $user['_id'];
return new GenericUser((array) $user);
}
}