services:
    qbabit.menu.render_item:
        class: QbaBit\MenuBundle\Services\QbaBitHandleMenuService
        arguments: ["@service_container"]
        public: true
        autoconfigure: false

    qbabit.menu.permissions_checker:
        class: QbaBit\MenuBundle\Services\QbaBitCheckPermissionMenuItemService
        arguments: ["@security.authorization_checker"]
        public: true
        autoconfigure: false

    qbabit.menu.twig.permissions_checker:
        class: QbaBit\MenuBundle\Twig\Extension\QbaBitCheckPermissionExtension
        arguments: ["@qbabit.menu.permissions_checker"]
        public: true
        autoconfigure: false
        tags:
            - { name: twig.extension }

    qbabit.menu.register_option:
        class: QbaBit\MenuBundle\Services\QbaBitMenuHelperService
        arguments: ["@doctrine.orm.default_entity_manager"]
        public: true
        autoconfigure: false

    qbabit.menu.option_resolver:
        class: QbaBit\MenuBundle\EventSubcriber\QbMenuResolverOptionSubscriber
        arguments: ["@doctrine.orm.default_entity_manager"]
        tags:
            - { name: "kernel.event_subscriber" }

    qbabit.menu.user_item.render:
        class: QbaBit\MenuBundle\Services\QbaBitUserMenuService
        arguments: ["@service_container"]
        public: true
        autoconfigure: false
    qbabit.menu.user_item.form:
         class: QbaBit\MenuBundle\Form\QbMenuItemType
         tags:
            - name: "form.type"
         arguments: ["@service_container"]