parameters:
    twig.loader.string.class: eZ\Publish\Core\MVC\Symfony\Templating\Twig\LoaderString
    twig.extension.intl.class: Twig_Extensions_Extension_Intl

    ezpublish.twig.extension.content.class: eZ\Publish\Core\MVC\Symfony\Templating\Twig\Extension\ContentExtension

    ezpublish.view_manager.class: eZ\Bundle\EzPublishCoreBundle\View\Manager
    ezpublish.content_view.matcher_factory.class: eZ\Bundle\EzPublishCoreBundle\Matcher\ContentMatcherFactory
    ezpublish.location_view.matcher_factory.class: eZ\Bundle\EzPublishCoreBundle\Matcher\LocationMatcherFactory
    ezpublish.block_view.matcher_factory.class: eZ\Bundle\EzPublishCoreBundle\Matcher\BlockMatcherFactory
    ezpublish.content_view_provider.configured.class: eZ\Bundle\EzPublishCoreBundle\View\Provider\ContentConfigured
    ezpublish.location_view_provider.configured.class: eZ\Bundle\EzPublishCoreBundle\View\Provider\LocationConfigured
    ezpublish.block_view_provider.configured.class: eZ\Bundle\EzPublishCoreBundle\View\Provider\BlockConfigured
    ezpublish.content_view.viewbase_layout: "EzPublishCoreBundle::viewbase_layout.html.twig"
    ezpublish.content_view.content_block_name: "content"

    ezpublish.templating.global_helper.core.class: eZ\Publish\Core\MVC\Symfony\Templating\GlobalHelper
    ezpublish.twig.extension.core.class: eZ\Publish\Core\MVC\Symfony\Templating\Twig\Extension\CoreExtension
    ezpublish.twig.extension.filesize.class: eZ\Publish\Core\MVC\Symfony\Templating\Twig\Extension\FileSizeExtension
    ezpublish.twig.extension.filesize.suffixes: ['B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB']
    ezpublish.templating.extension.routing.class: eZ\Publish\Core\MVC\Symfony\Templating\Twig\Extension\RoutingExtension

    assetic.asset_factory.class: eZ\Bundle\EzPublishCoreBundle\Assetic\AssetFactory

services:
    twig.loader.string:
        class: %twig.loader.string.class%
        tags:
            - {name: twig.loader}

    twig.extension.intl:
        class: %twig.extension.intl.class%
        tags:
            - {name: twig.extension}

    ezpublish.twig.extension.content:
        class: %ezpublish.twig.extension.content.class%
        arguments:
            - @ezpublish.api.repository
            - @ezpublish.config.resolver
            - @ezpublish.fieldtype.parameterproviderregistry
            - @ezpublish.fieldtype.ezxmltext.converter.html5
            - @ezpublish.fieldType.ezrichtext.converter.output.xhtml5
            - @ezpublish.fieldType.ezrichtext.converter.edit.xhtml5
            - @ezpublish.fieldtype.ezimage.variation_service
            - @ezpublish.translation_helper
            - @ezpublish.field_helper
            - @?logger
        tags:
            - {name: twig.extension}

    ezpublish.view_manager:
        class: %ezpublish.view_manager.class%
        arguments:
          - @templating
          - @event_dispatcher
          - @ezpublish.api.repository
          - @ezpublish.config.resolver
          - %ezpublish.content_view.viewbase_layout%
          - @?logger

    ezpublish.content_view_provider.configured:
        class: %ezpublish.content_view_provider.configured.class%
        arguments: [@ezpublish.content_view.matcher_factory]
        tags:
            - {name: ezpublish.content_view_provider, priority: 10}

    ezpublish.content_view.matcher_factory:
        class: %ezpublish.content_view.matcher_factory.class%
        arguments: [@ezpublish.config.resolver, @ezpublish.api.repository]
        calls:
            - [setContainer, [@service_container]]

    ezpublish.location_view_provider.configured:
        class: %ezpublish.location_view_provider.configured.class%
        arguments: [@ezpublish.location_view.matcher_factory]
        tags:
            - {name: ezpublish.location_view_provider, priority: 10}

    ezpublish.location_view.matcher_factory:
        class: %ezpublish.location_view.matcher_factory.class%
        arguments: [@ezpublish.config.resolver, @ezpublish.api.repository]
        calls:
            - [setContainer, [@service_container]]

    ezpublish.block_view_provider.configured:
        class: %ezpublish.block_view_provider.configured.class%
        arguments: [@ezpublish.block_view.matcher_factory]
        tags:
            - {name: ezpublish.block_view_provider, priority: 10}

    ezpublish.block_view.matcher_factory:
        class: %ezpublish.block_view.matcher_factory.class%
        arguments: [@ezpublish.config.resolver, @ezpublish.api.repository]
        calls:
            - [setContainer, [@service_container]]

    ezpublish.templating.global_helper.core:
        class: %ezpublish.templating.global_helper.core.class%
        arguments: [@ezpublish.config.resolver, @ezpublish.api.service.location, @router, @ezpublish.translation_helper]
        calls:
            - [setRequest, [@?request=]]

    ezpublish.templating.global_helper:
        alias: ezpublish.templating.global_helper.core

    ezpublish.twig.extension.core:
        class: %ezpublish.twig.extension.core.class%
        arguments: [@ezpublish.templating.global_helper]
        tags:
            - {name: twig.extension}

    ezpublish.twig.extension.filesize:
        class: %ezpublish.twig.extension.filesize.class%
        arguments: [@translator, %ezpublish.twig.extension.filesize.suffixes%, @ezpublish.config.resolver, @ezpublish.locale.converter ]
        tags:
            - {name: twig.extension}

    ezpublish.templating.extension.routing:
      class: %ezpublish.templating.extension.routing.class%
      arguments: [@ezpublish.route_reference.generator]
      tags:
        - {name: twig.extension}

