Passed
Pull Request — master (#275)
by Sergei
02:49
created

PureField::checkbox()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 3
dl 0
loc 3
ccs 0
cts 2
cp 0
crap 2
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Yiisoft\Form;
6
7
use Yiisoft\Form\Field\Base\InputData\PureInputData;
8
use Yiisoft\Form\Field\Button;
9
use Yiisoft\Form\Field\ButtonGroup;
10
use Yiisoft\Form\Field\Checkbox;
11
use Yiisoft\Form\Field\CheckboxList;
12
use Yiisoft\Form\Field\Date;
13
use Yiisoft\Form\Field\DateTime;
14
use Yiisoft\Form\Field\DateTimeLocal;
15
use Yiisoft\Form\Field\Email;
16
use Yiisoft\Form\Field\ErrorSummary;
17
use Yiisoft\Form\Field\Fieldset;
18
use Yiisoft\Form\Field\File;
19
use Yiisoft\Form\Field\Hidden;
20
use Yiisoft\Form\Field\Image;
21
use Yiisoft\Form\Field\Number;
22
use Yiisoft\Form\Field\Part\Error;
23
use Yiisoft\Form\Field\Part\Hint;
24
use Yiisoft\Form\Field\Part\Label;
25
use Yiisoft\Form\Field\Password;
26
use Yiisoft\Form\Field\RadioList;
27
use Yiisoft\Form\Field\Range;
28
use Yiisoft\Form\Field\ResetButton;
29
use Yiisoft\Form\Field\Select;
30
use Yiisoft\Form\Field\SubmitButton;
31
use Yiisoft\Form\Field\Telephone;
32
use Yiisoft\Form\Field\Text;
33
use Yiisoft\Form\Field\Textarea;
34
use Yiisoft\Form\Field\Url;
35
36
class PureField
37
{
38
    final public static function button(?string $content = null, array $config = []): Button
39
    {
40
        $field = Button::widget($config);
41
42
        if ($content !== null) {
43
            $field = $field->content($content);
0 ignored issues
show
Bug introduced by
The method content() does not exist on Yiisoft\Widget\Widget. It seems like you code against a sub-type of Yiisoft\Widget\Widget such as Yiisoft\Form\Field\Part\Label or Yiisoft\Form\Field\Part\Hint or Yiisoft\Form\Field\Fieldset or Yiisoft\Form\Field\Base\ButtonField. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

43
            /** @scrutinizer ignore-call */ 
44
            $field = $field->content($content);
Loading history...
44
        }
45
46
        return $field;
47
    }
48
49
    final public static function buttonGroup(array $config = []): ButtonGroup
50
    {
51
        return ButtonGroup::widget(config: $config);
0 ignored issues
show
Bug Best Practice introduced by
The expression return Yiisoft\Form\Fiel...nGroup::widget($config) returns the type Yiisoft\Widget\Widget which includes types incompatible with the type-hinted return Yiisoft\Form\Field\ButtonGroup.
Loading history...
52
    }
53
54
    final public static function checkbox(?string $name = null, mixed $value = null, array $config = []): Checkbox
55
    {
56
        return Checkbox::widget(config: $config)->inputData(new PureInputData($name, $value));
0 ignored issues
show
Bug introduced by
The method inputData() does not exist on Yiisoft\Widget\Widget. It seems like you code against a sub-type of Yiisoft\Widget\Widget such as Yiisoft\Form\Field\Part\Label or Yiisoft\Form\Field\Part\Error or Yiisoft\Form\Field\Part\Hint or Yiisoft\Form\Field\RadioList or Yiisoft\Form\Field\Base\InputField or Yiisoft\Form\Field\CheckboxList. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

56
        return Checkbox::widget(config: $config)->/** @scrutinizer ignore-call */ inputData(new PureInputData($name, $value));
Loading history...
57
    }
58
59
    final public static function checkboxList(
60
        ?string $name = null,
61
        mixed $value = null,
62
        array $config = []
63
    ): CheckboxList {
64
        return CheckboxList::widget(config: $config)->inputData(new PureInputData($name, $value));
65
    }
66
67
    final public static function date(?string $name = null, mixed $value = null, array $config = []): Date
68
    {
69
        return Date::widget(config: $config)->inputData(new PureInputData($name, $value));
70
    }
71
72
    final public static function dateTime(?string $name = null, mixed $value = null, array $config = []): DateTime
73
    {
74
        return DateTime::widget(config: $config)->inputData(new PureInputData($name, $value));
75
    }
76
77
    final public static function dateTimeLocal(
78
        ?string $name = null,
79
        mixed $value = null,
80
        array $config = []
81
    ): DateTimeLocal {
82
        return DateTimeLocal::widget(config: $config)->inputData(new PureInputData($name, $value));
83
    }
84
85
    final public static function email(?string $name = null, mixed $value = null, array $config = []): Email
86
    {
87
        return Email::widget(config: $config)->inputData(new PureInputData($name, $value));
88
    }
89
90
    final public static function errorSummary(array $config = []): ErrorSummary
91
    {
92
        return ErrorSummary::widget(config: $config);
0 ignored issues
show
Bug Best Practice introduced by
The expression return Yiisoft\Form\Fiel...ummary::widget($config) returns the type Yiisoft\Widget\Widget which includes types incompatible with the type-hinted return Yiisoft\Form\Field\ErrorSummary.
Loading history...
93
    }
94
95
    final public static function fieldset(array $config = []): Fieldset
96
    {
97
        return Fieldset::widget(config: $config);
0 ignored issues
show
Bug Best Practice introduced by
The expression return Yiisoft\Form\Fiel...eldset::widget($config) returns the type Yiisoft\Widget\Widget which includes types incompatible with the type-hinted return Yiisoft\Form\Field\Fieldset.
Loading history...
98
    }
99
100
    final public static function file(?string $name = null, mixed $value = null, array $config = []): File
101
    {
102
        return File::widget(config: $config)->inputData(new PureInputData($name, $value));
103
    }
104
105
    final public static function hidden(?string $name = null, mixed $value = null, array $config = []): Hidden
106
    {
107
        return Hidden::widget(config: $config)->inputData(new PureInputData($name, $value));
108
    }
109
110
    final public static function image(array $config = []): Image
111
    {
112
        return Image::widget(config: $config);
0 ignored issues
show
Bug Best Practice introduced by
The expression return Yiisoft\Form\Field\Image::widget($config) returns the type Yiisoft\Widget\Widget which includes types incompatible with the type-hinted return Yiisoft\Form\Field\Image.
Loading history...
113
    }
114
115
    final public static function number(?string $name = null, mixed $value = null, array $config = []): Number
116
    {
117
        return Number::widget(config: $config)->inputData(new PureInputData($name, $value));
118
    }
119
120
    final public static function password(
121
        ?string $name = null,
122
        mixed $value = null,
123
        array $config = []
124
    ): Password {
125
        return Password::widget(config: $config)->inputData(new PureInputData($name, $value));
126
    }
127
128
    final public static function radioList(
129
        ?string $name = null,
130
        mixed $value = null,
131
        array $config = []
132
    ): RadioList {
133
        return RadioList::widget(config: $config)->inputData(new PureInputData($name, $value));
134
    }
135
136
    final public static function range(?string $name = null, mixed $value = null, array $config = []): Range
137
    {
138
        return Range::widget(config: $config)->inputData(new PureInputData($name, $value));
139
    }
140
141
    final public static function resetButton(?string $content = null, array $config = []): ResetButton
142
    {
143
        $field = ResetButton::widget(config: $config);
144
145
        if ($content !== null) {
146
            $field = $field->content($content);
147
        }
148
149
        return $field;
150
    }
151
152
    final public static function select(?string $name = null, mixed $value = null, array $config = []): Select
153
    {
154
        return Select::widget(config: $config)->inputData(new PureInputData($name, $value));
155
    }
156
157
    final public static function submitButton(?string $content = null, array $config = []): SubmitButton
158
    {
159
        $field = SubmitButton::widget(config: $config);
160
161
        if ($content !== null) {
162
            $field = $field->content($content);
163
        }
164
165
        return $field;
166
    }
167
168
    final public static function telephone(
169
        ?string $name = null,
170
        mixed $value = null,
171
        array $config = []
172
    ): Telephone {
173
        return Telephone::widget(config: $config)->inputData(new PureInputData($name, $value));
174
    }
175
176
    final public static function text(?string $name = null, mixed $value = null, array $config = []): Text
177
    {
178
        return Text::widget(config: $config)->inputData(new PureInputData($name, $value));
179
    }
180
181
    final public static function textarea(?string $name = null, mixed $value = null, array $config = []): Textarea
182
    {
183
        return Textarea::widget(config: $config)->inputData(new PureInputData($name, $value));
184
    }
185
186
    final public static function url(?string $name = null, mixed $value = null, array $config = []): Url
187
    {
188
        return Url::widget(config: $config)->inputData(new PureInputData($name, $value));
189
    }
190
191
    final public static function label(?string $name = null, mixed $value = null, array $config = []): Label
192
    {
193
        return Label::widget(config: $config)->inputData(new PureInputData($name, $value));
194
    }
195
196
    final public static function hint(?string $name = null, mixed $value = null, array $config = []): Hint
197
    {
198
        return Hint::widget(config: $config)->inputData(new PureInputData($name, $value));
199
    }
200
201
    final public static function error(?string $name = null, mixed $value = null, array $config = []): Error
202
    {
203
        return Error::widget(config: $config)->inputData(new PureInputData($name, $value));
204
    }
205
}
206