PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.0.19
Admin Columns v7.0.19
7.0.19 2.3.5 2.4 2.4.1 2.4.10 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.6.1 2.5.6.2 2.5.6.3 2.5.6.4 3.0 3.0.1 3.0.2 3.0.3 3.0.5 3.0.7 3.1 3.1.1 3.1.10 3.1.2 3.1.3 3.1.5 3.2.3 3.2.7 3.3.1 3.4.1 3.4.6 3.4.8 4.0.1 4.0.3 4.1.6 4.2.2 4.2.5 4.3 4.3.2 4.4.1 4.4.4 4.4.5 4.5.5 4.6.1 4.7.18 4.7.19 4.7.20 4.7.7 7.0.13 7.0.14 7.0.16 trunk 1.0 1.1 1.1.3 1.2 1.2.1 1.3 1.3.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.5.1 1.4.6 1.4.6.1 1.4.6.2 1.4.6.3 1.4.6.4 1.4.7 1.4.8 1.4.9 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.2 2.2.1 2.2.1.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.5.1 2.2.6 2.2.6.1 2.2.6.2 2.2.6.3 2.2.6.4 2.2.7 2.2.8 2.2.8.1 2.2.9 2.3.1 2.3.2 2.3.3
codepress-admin-columns / classes / Setting / Component.php
codepress-admin-columns / classes / Setting Last commit date
ComponentFactory 1 month ago Control 1 month ago Type 1 month ago AttributeCollection.php 1 month ago AttributeFactory.php 1 month ago Children.php 1 month ago Component.php 1 month ago ComponentBuilder.php 1 month ago ComponentCollection.php 1 month ago ComponentFactory.php 1 month ago ConditionalComponentFactory.php 1 month ago ConditionalComponentFactoryCollection.php 1 month ago Config.php 1 month ago ConfigCollection.php 1 month ago ConfigFactory.php 1 month ago Context.php 1 month ago Control.php 1 month ago DefaultSettingsBuilder.php 1 month ago Encoder.php 1 month ago Formatter.php 1 month ago FormatterCollection.php 1 month ago
Component.php
144 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\Setting;
6
7 use AC\Expression\NullSpecification;
8 use AC\Expression\Specification;
9 use AC\FormatterCollection;
10 use AC\Setting\Control\Input;
11 use InvalidArgumentException;
12
13 class Component
14 {
15
16 private ?string $label;
17
18 private ?string $description;
19
20 private ?Input $input;
21
22 private ?FormatterCollection $formatters;
23
24 private ?Children $children;
25
26 private $conditions;
27
28 private ?AttributeCollection $attributes;
29
30 private ?string $type;
31
32 public function __construct(
33 ?string $label = null,
34 ?string $description = null,
35 ?Input $input = null,
36 ?Specification $conditions = null,
37 ?FormatterCollection $formatters = null,
38 ?Children $children = null,
39 ?AttributeCollection $attributes = null,
40 ?string $type = null
41 ) {
42 if ($conditions === null) {
43 $conditions = new NullSpecification();
44 }
45
46 if ($formatters === null) {
47 $formatters = new FormatterCollection();
48 }
49
50 if ($attributes === null) {
51 $attributes = new AttributeCollection();
52 }
53
54 if ($type === null) {
55 $type = 'default';
56 }
57
58 $this->label = $label;
59 $this->description = $description;
60 $this->input = $input;
61 $this->formatters = $formatters;
62 $this->children = $children;
63 $this->conditions = $conditions;
64 $this->attributes = $attributes;
65 $this->type = $type;
66 }
67
68 public function has_label(): bool
69 {
70 return $this->label !== null;
71 }
72
73 public function get_label(): string
74 {
75 if ( ! $this->has_label()) {
76 throw new InvalidArgumentException();
77 }
78
79 return $this->label;
80 }
81
82 public function has_description(): bool
83 {
84 return $this->description !== null;
85 }
86
87 public function get_description(): string
88 {
89 if ( ! $this->has_description()) {
90 throw new InvalidArgumentException();
91 }
92
93 return $this->description;
94 }
95
96 public function has_input(): bool
97 {
98 return $this->input !== null;
99 }
100
101 public function get_input(): Input
102 {
103 if ( ! $this->has_input()) {
104 throw new InvalidArgumentException();
105 }
106
107 return $this->input;
108 }
109
110 public function get_formatters(): FormatterCollection
111 {
112 return $this->formatters;
113 }
114
115 public function has_children(): bool
116 {
117 return $this->children !== null;
118 }
119
120 public function get_children(): Children
121 {
122 if ( ! $this->has_children()) {
123 throw new InvalidArgumentException();
124 }
125
126 return $this->children;
127 }
128
129 public function get_conditions(): Specification
130 {
131 return $this->conditions;
132 }
133
134 public function get_attributes(): AttributeCollection
135 {
136 return $this->attributes;
137 }
138
139 public function get_type(): string
140 {
141 return $this->type;
142 }
143
144 }