Completed
Push — master ( 021184...96d434 )
by Daniel
10:20 queued 06:31
created

ChoiceField::getFormType()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 0
1
<?php
2
3
namespace Psi\Component\ContentType\Standard\Field;
4
5
use Psi\Component\ContentType\FieldInterface;
6
use Psi\Component\ContentType\OptionsResolver\FieldOptionsResolver;
7
use Psi\Component\ContentType\Standard\Storage\StringType;
8
use Psi\Component\ContentType\Standard\View\ScalarType;
9
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
10
11
class ChoiceField implements FieldInterface
12
{
13
    public function getViewType(): string
14
    {
15
        return ScalarType::class;
16
    }
17
18
    public function getFormType(): string
19
    {
20
        return ChoiceType::class;
21
    }
22
23
    public function getStorageType(): string
24
    {
25
        return StringType::class;
26
    }
27
28
    public function configureOptions(FieldOptionsResolver $options)
29
    {
30
        $options->setDefaults([
31
            'choices' => [],
32
            'expanded' => false,
33
            'group_by' => null,
34
            'multiple' => false,
35
            'placeholder' => null,
36
            'preferred_choices' => [],
37
        ]);
38
39
        $options->setFormMapper(function ($options) {
40
            return $options;
41
        });
42
    }
43
}
44