src/EventSubscriber/Security/AuthenticationSuccessListener.php line 18
<?php
namespace App\EventSubscriber\Security;
use App\Security\AuthUserSerializer;
use Lexik\Bundle\JWTAuthenticationBundle\Event\AuthenticationSuccessEvent;
use Symfony\Component\Security\Core\User\UserInterface;
final readonly class AuthenticationSuccessListener
{
public function __construct(
private AuthUserSerializer $authUserSerializer,
) {}
/**
* @param AuthenticationSuccessEvent $event
*/
public function onAuthenticationSuccessResponse(AuthenticationSuccessEvent $event): void
{
$data = $event->getData();
$user = $event->getUser();
if (!$user instanceof UserInterface) {
return;
}
$data['user'] = $this->authUserSerializer->serialize($user);
$event->setData($data);
}
}