Sylius/src/Sylius/Bundle/GridBundle/Templating/Helper/GridHelper.php
2017-11-07 16:00:12 +01:00

91 lines
2.1 KiB
PHP

<?php
/*
* This file is part of the Sylius package.
*
* (c) Paweł Jędrzejewski
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
declare(strict_types=1);
namespace Sylius\Bundle\GridBundle\Templating\Helper;
use Sylius\Component\Grid\Definition\Action;
use Sylius\Component\Grid\Definition\Field;
use Sylius\Component\Grid\Definition\Filter;
use Sylius\Component\Grid\Renderer\GridRendererInterface;
use Sylius\Component\Grid\View\GridView;
use Symfony\Component\Templating\Helper\Helper;
class GridHelper extends Helper
{
/**
* @var GridRendererInterface
*/
private $gridRenderer;
/**
* @param GridRendererInterface $gridRenderer
*/
public function __construct(GridRendererInterface $gridRenderer)
{
$this->gridRenderer = $gridRenderer;
}
/**
* @param GridView $gridView
* @param string|null $template
*
* @return mixed
*/
public function renderGrid(GridView $gridView, ?string $template = null)
{
return $this->gridRenderer->render($gridView, $template);
}
/**
* @param GridView $gridView
* @param Field $field
* @param mixed $data
*
* @return mixed
*/
public function renderField(GridView $gridView, Field $field, $data)
{
return $this->gridRenderer->renderField($gridView, $field, $data);
}
/**
* @param GridView $gridView
* @param Action $action
* @param mixed|null $data
*
* @return mixed
*/
public function renderAction(GridView $gridView, Action $action, $data = null)
{
return $this->gridRenderer->renderAction($gridView, $action, $data);
}
/**
* @param GridView $gridView
* @param Filter $filter
*
* @return mixed
*/
public function renderFilter(GridView $gridView, Filter $filter)
{
return $this->gridRenderer->renderFilter($gridView, $filter);
}
/**
* @return string
*/
public function getName(): string
{
return 'sylius_grid';
}
}