<?phpnamespace Gesdinet\JWTRefreshTokenBundle;use Gesdinet\JWTRefreshTokenBundle\DependencyInjection\Compiler\AddExtractorsToChainCompilerPass;use Gesdinet\JWTRefreshTokenBundle\DependencyInjection\Compiler\CustomUserProviderCompilerPass;use Gesdinet\JWTRefreshTokenBundle\DependencyInjection\Compiler\ObjectManagerCompilerPass;use Gesdinet\JWTRefreshTokenBundle\DependencyInjection\Compiler\UserCheckerCompilerPass;use Gesdinet\JWTRefreshTokenBundle\DependencyInjection\Security\Factory\RefreshTokenAuthenticatorFactory;use Symfony\Bundle\SecurityBundle\DependencyInjection\SecurityExtension;use Symfony\Component\DependencyInjection\ContainerBuilder;use Symfony\Component\HttpKernel\Bundle\Bundle;class GesdinetJWTRefreshTokenBundle extends Bundle{ public function build(ContainerBuilder $container): void { parent::build($container); $container->addCompilerPass(new AddExtractorsToChainCompilerPass()); $container->addCompilerPass(new CustomUserProviderCompilerPass(true)); $container->addCompilerPass(new ObjectManagerCompilerPass()); $container->addCompilerPass(new UserCheckerCompilerPass(true)); /** @var SecurityExtension $extension */ $extension = $container->getExtension('security'); $extension->addAuthenticatorFactory(new RefreshTokenAuthenticatorFactory()); }}