vendor/ibexa/admin-ui/src/bundle/IbexaAdminUiBundle.php line 20

Open in your IDE?
  1. <?php
  2. /**
  3.  * @copyright Copyright (C) Ibexa AS. All rights reserved.
  4.  * @license For full copyright and license information view LICENSE file distributed with this source code.
  5.  */
  6. namespace Ibexa\Bundle\AdminUi;
  7. use Ibexa\Bundle\AdminUi\DependencyInjection\Compiler\ComponentPass;
  8. use Ibexa\Bundle\AdminUi\DependencyInjection\Compiler\FieldTypeFormMapperDispatcherPass;
  9. use Ibexa\Bundle\AdminUi\DependencyInjection\Compiler\LimitationFormMapperPass;
  10. use Ibexa\Bundle\AdminUi\DependencyInjection\Compiler\LimitationValueMapperPass;
  11. use Ibexa\Bundle\AdminUi\DependencyInjection\Compiler\TabPass;
  12. use Ibexa\Bundle\AdminUi\DependencyInjection\Compiler\UiConfigProviderPass;
  13. use Ibexa\Bundle\AdminUi\DependencyInjection\Configuration\Parser;
  14. use Symfony\Component\DependencyInjection\ContainerBuilder;
  15. use Symfony\Component\HttpKernel\Bundle\Bundle;
  16. class IbexaAdminUiBundle extends Bundle
  17. {
  18.     public const ADMIN_GROUP_NAME 'admin_group';
  19.     /**
  20.      * {@inheritdoc}
  21.      *
  22.      * @throws \Symfony\Component\DependencyInjection\Exception\LogicException
  23.      */
  24.     public function build(ContainerBuilder $container)
  25.     {
  26.         /** @var \Ibexa\Bundle\Core\DependencyInjection\IbexaCoreExtension $core */
  27.         $core $container->getExtension('ibexa');
  28.         $configParsers $this->getConfigParsers();
  29.         array_walk($configParsers, [$core'addConfigParser']);
  30.         $core->addDefaultSettings(__DIR__ '/Resources/config', ['ezplatform_default_settings.yaml']);
  31.         $this->addCompilerPasses($container);
  32.     }
  33.     /**
  34.      * @param \Symfony\Component\DependencyInjection\ContainerBuilder $container
  35.      */
  36.     private function addCompilerPasses(ContainerBuilder $container)
  37.     {
  38.         $container->addCompilerPass(new TabPass());
  39.         $container->addCompilerPass(new UiConfigProviderPass());
  40.         $container->addCompilerPass(new ComponentPass());
  41.         $container->addCompilerPass(new LimitationFormMapperPass());
  42.         $container->addCompilerPass(new LimitationValueMapperPass());
  43.         $container->addCompilerPass(new FieldTypeFormMapperDispatcherPass());
  44.     }
  45.     /**
  46.      * @return \Ibexa\Bundle\Core\DependencyInjection\Configuration\ParserInterface[]
  47.      */
  48.     private function getConfigParsers(): array
  49.     {
  50.         return [
  51.             new Parser\LocationIds(),
  52.             new Parser\Module\Subitems(),
  53.             new Parser\Module\UniversalDiscoveryWidget(),
  54.             new Parser\Module\ContentTree(),
  55.             new Parser\Pagination(),
  56.             new Parser\Security(),
  57.             new Parser\UserGroupIdentifier(),
  58.             new Parser\SubtreeOperations(),
  59.             new Parser\Notifications(),
  60.             new Parser\ContentTranslateView(),
  61.             new Parser\AdminUiForms(),
  62.             new Parser\ContentType(),
  63.             new Parser\ContentTypeGroup(),
  64.             new Parser\SubtreePath(),
  65.             new Parser\LimitationValueTemplates(),
  66.             new Parser\Assets(),
  67.             new Parser\AdminUiParser(),
  68.             new Parser\UserProfile(),
  69.         ];
  70.     }
  71. }
  72. class_alias(IbexaAdminUiBundle::class, 'EzSystems\EzPlatformAdminUiBundle\EzPlatformAdminUiBundle');