TranslationExtension::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 1
c 1
b 0
f 0
nc 1
nop 1
dl 0
loc 3
rs 10
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Locastic\SymfonyTranslationBundle\Twig;
6
7
use Locastic\SymfonyTranslationBundle\Model\TranslationValueInterface;
8
use Locastic\SymfonyTranslationBundle\Transformer\TranslationValueToFormFieldTransformerInterface;
9
use Twig\Extension\AbstractExtension;
10
use Twig\TwigFilter;
11
12
final class TranslationExtension extends AbstractExtension
13
{
14
    private TranslationValueToFormFieldTransformerInterface $translationValueToFormFieldTransformer;
15
16
    public function __construct(TranslationValueToFormFieldTransformerInterface $translationValueToFormFieldTransformer)
17
    {
18
        $this->translationValueToFormFieldTransformer = $translationValueToFormFieldTransformer;
19
    }
20
21
    public function getFilters(): iterable
22
    {
23
        return [
24
            new TwigFilter('locastic_symfony_translation_value_field_name', [$this, 'getTranslationValueFieldName'])
25
        ];
26
    }
27
28
    public function getTranslationValueFieldName(TranslationValueInterface $translationValue): string
29
    {
30
        return $this->translationValueToFormFieldTransformer->transform($translationValue);
31
    }
32
}
33