#####################################
#       Admin Form managers         #
#####################################

services:

    #####################################
    #           Action                  #
    #####################################

    App\Form\Manager\Action\AddLinkManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $requestStack: '@request_stack'

    App\Form\Manager\Action\CampaignManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Action\FormManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $requestStack: '@request_stack'

    App\Form\Manager\Action\NewscastManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Action\StepFormManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $requestStack: '@request_stack'

    App\Form\Manager\Action\TableManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    #####################################
    #               Api                 #
    #####################################

    App\Form\Manager\Api\GoogleManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    #####################################
    #           Content                 #
    #####################################

    App\Form\Manager\Content\PageManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $requestStack: '@request_stack'

    App\Form\Manager\Content\PageDuplicateManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $layoutDuplicateManager: '@App\Form\Manager\Layout\LayoutDuplicateManager'
            $urlManager: '@App\Form\Manager\Seo\UrlManager'
            $layoutManager: '@App\Form\Manager\Layout\LayoutManager'

    #####################################
    #           Core                    #
    #####################################

    App\Form\Manager\Core\ConfigurationManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Core\EntityConfigurationManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Core\GlobalManager:
        public: true
        lazy: true
        arguments:
            $requestStack: '@request_stack'
            $entityManager: '@doctrine.orm.entity_manager'
            $translator: '@translator'
            $indexHelper: '@App\Helper\Admin\IndexHelper'
            $serviceSubscriber: '@App\Service\Core\SubscriberService'
            $kernel: '@kernel'

    App\Form\Manager\Core\SearchManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $requestStack: '@request_stack'
            $authorizationChecker: '@security.authorization_checker'
            $tokenStorage: '@security.token_storage'

    App\Form\Manager\Core\SupportManager:
        public: true
        lazy: true
        arguments:
            $mailer: '@App\Service\Core\MailerService'
            $translator: '@translator'

    App\Form\Manager\Core\SessionManager:
        public: true
        lazy: true

    App\Form\Manager\Core\TreeManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Core\WebsiteManager:
        public: true
        lazy: true
        arguments:
            $fixtures: '@App\Service\DataFixtures\WebsiteFixture'
            $entityManager: '@doctrine.orm.entity_manager'

    #####################################
    #               Gdpr                #
    #####################################

    App\Form\Manager\Gdpr\CookieManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    #####################################
    #          Information              #
    #####################################

    App\Form\Manager\Information\InformationManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Information\SocialNetworkManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    #####################################
    #           Layout                  #
    #####################################

    App\Form\Manager\Layout\ActionManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Layout\BlockManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Layout\LayoutConfigurationManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Layout\LayoutDuplicateManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $zoneDuplicateManager: '@App\Form\Manager\Layout\ZoneDuplicateManager'

    App\Form\Manager\Layout\ZoneDuplicateManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $colDuplicateManager: '@App\Form\Manager\Layout\ColDuplicateManager'
            $layoutManager: '@App\Form\Manager\Layout\LayoutManager'

    App\Form\Manager\Layout\ColDuplicateManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $blockDuplicateManager: '@App\Form\Manager\Layout\BlockDuplicateManager'

    App\Form\Manager\Layout\BlockDuplicateManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Layout\ZoneManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Layout\ZoneConfigurationManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Layout\LayoutManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    #####################################
    #           Media                   #
    #####################################

    App\Form\Manager\Media\MediaLibraryManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $kernel: '@kernel'
            $translator: '@translator'

    App\Form\Manager\Media\MediaManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $uploader: '@App\Service\Core\Uploader'
            $requestStack: '@request_stack'
            $interfaceHelper: '@App\Helper\Core\InterfaceHelper'
            $translator: '@translator'

    App\Form\Manager\Media\ModalLibraryManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Media\SearchManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $authorizationChecker: '@security.authorization_checker'

    #####################################
    #             Seo                   #
    #####################################

    App\Form\Manager\Seo\ImportRedirectionManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $fileReader: '@App\Service\Core\XlsxFileReader'
            $kernel: '@kernel'

    App\Form\Manager\Seo\UrlManager:
        public: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    #####################################
    #           Security                #
    #####################################

    App\Form\Manager\Security\Admin\CompanyManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $kernel: '@kernel'

    App\Form\Manager\Security\Admin\UserManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $passwordEncoder: '@security.password_encoder'
            $kernel: '@kernel'

    App\Form\Manager\Security\Admin\RoleManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Security\Front\UserManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $passwordEncoder: '@security.password_encoder'
            $kernel: '@kernel'
            $requestStack: '@request_stack'

    #####################################
    #         Translation               #
    #####################################

    App\Form\Manager\Translation\i18nManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Form\Manager\Translation\UnitManager:
        public: true
        lazy: true
        arguments:
            $extractor: '@App\Service\Translation\Extractor'
            $kernel: '@kernel'

    #####################################
    #         EC INTERNATIONAL          #
    #####################################

    App\Module\InternationalBundle\Form\Manager\CustomerManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $kernel: '@kernel'

    App\Module\InternationalBundle\Form\Manager\EmailManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Module\InternationalBundle\Form\Manager\QuotationManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $kernel: '@kernel'
            $requestStack: '@request_stack'
            $quotationService: '@App\Module\InternationalBundle\Service\QuotationService'

    App\Module\InternationalBundle\Form\Manager\StatusManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'

    App\Module\InternationalBundle\Form\Manager\UploaderManager:
        public: true
        lazy: true
        arguments:
            $entityManager: '@doctrine.orm.entity_manager'
            $kernel: '@kernel'