diff --git a/src/Field.php b/src/Field.php index 22cf8d79819e64becc16d1540dea38e3af281697..42ea1292182a1ee39441d72fcf806f10b38a5d28 100644 --- a/src/Field.php +++ b/src/Field.php @@ -73,9 +73,9 @@ interface Field { /** @return array<string,int> */ public function get_data(): array; - public function add_data( string $data_name, string $data_value ): self; + public function add_data( string $data_name, string $data_value ): Field; - public function unset_data( string $data_name ): self; + public function unset_data( string $data_name ): Field; /** @return mixed */ public function get_possible_values(); diff --git a/src/Field/BasicField.php b/src/Field/BasicField.php index ee7f144cf2cf4518cedc9522a2e71bb44d2f0577..842241e8fe77a30e1e2855b147f879c62ae2ae0e 100644 --- a/src/Field/BasicField.php +++ b/src/Field/BasicField.php @@ -3,7 +3,6 @@ namespace WPDesk\Forms\Field; use WPDesk\Forms\Field; -use WPDesk\Forms\Form\FormWithFields; use WPDesk\Forms\Sanitizer; use WPDesk\Forms\Sanitizer\NoSanitize; use WPDesk\Forms\Serializer; @@ -38,7 +37,7 @@ abstract class BasicField implements Field { return $this->meta['label']; } - public function set_label( string $value ): self { + public function set_label( string $value ): Field { $this->meta['label'] = $value; return $this; @@ -68,13 +67,13 @@ abstract class BasicField implements Field { return isset( $this->meta['description'] ); } - public function set_description( string $value ): self { + public function set_description( string $value ): Field { $this->meta['description'] = $value; return $this; } - public function set_description_tip( string $value ): self { + public function set_description_tip( string $value ): Field { $this->meta['description_tip'] = $value; return $this; @@ -84,7 +83,7 @@ abstract class BasicField implements Field { return $this->attributes['type']; } - public function set_placeholder( string $value ): self { + public function set_placeholder( string $value ): Field { $this->meta['placeholder'] = $value; return $this; @@ -98,7 +97,7 @@ abstract class BasicField implements Field { return $this->meta['placeholder']; } - public function set_name( string $name ): self { + public function set_name( string $name ): Field { $this->attributes['name'] = $name; return $this; @@ -140,7 +139,7 @@ abstract class BasicField implements Field { return $this->attributes['multiple'] ?? false; } - public function set_disabled(): self { + public function set_disabled(): Field { $this->attributes['disabled'] = true; return $this; @@ -150,7 +149,7 @@ abstract class BasicField implements Field { return $this->attributes['disabled'] ?? false; } - public function set_readonly(): self { + public function set_readonly(): Field { $this->attributes['readonly'] = true; return $this; @@ -160,25 +159,25 @@ abstract class BasicField implements Field { return $this->attributes['readonly'] ?? false; } - public function set_required(): self { + public function set_required(): Field { $this->meta['required'] = true; return $this; } - public function add_class( string $class_name ): self { + public function add_class( string $class_name ): Field { $this->meta['class'][ $class_name ] = $class_name; return $this; } - public function unset_class( string $class_name ): self { + public function unset_class( string $class_name ): Field { unset( $this->meta['class'][ $class_name ] ); return $this; } - public function add_data( string $data_name, string $data_value ): self { + public function add_data( string $data_name, string $data_value ): Field { if ( ! isset( $this->meta['data'] ) ) { $this->meta['data'] = []; } @@ -187,7 +186,7 @@ abstract class BasicField implements Field { return $this; } - public function unset_data( string $data_name ): self { + public function unset_data( string $data_name ): Field { unset( $this->meta['data'][ $data_name ] ); return $this; @@ -205,7 +204,7 @@ abstract class BasicField implements Field { return $this->default_value; } - public function set_default_value( string $value ): self { + public function set_default_value( string $value ): Field { $this->default_value = $value; return $this; @@ -236,7 +235,7 @@ abstract class BasicField implements Field { return new NoSerialize(); } - public function set_serializer( Serializer $serializer ): self { + public function set_serializer( Serializer $serializer ): Field { $this->meta['serializer'] = $serializer; return $this; @@ -251,7 +250,7 @@ abstract class BasicField implements Field { * * @see FormWithFields::get_fields() */ - public function set_priority( int $priority ): self { + public function set_priority( int $priority ): Field { $this->meta['priority'] = $priority; return $this; diff --git a/src/Field/CheckboxField.php b/src/Field/CheckboxField.php index e8cc29fde23d0f66a4e21f391c7ed2552c75652e..507cda08a68bf3e82c32e4c8ceda19f5cd32a344 100644 --- a/src/Field/CheckboxField.php +++ b/src/Field/CheckboxField.php @@ -2,6 +2,8 @@ namespace WPDesk\Forms\Field; +use WPDesk\Forms\Field; + class CheckboxField extends BasicField { const VALUE_TRUE = 'yes'; const VALUE_FALSE = 'no'; @@ -19,7 +21,7 @@ class CheckboxField extends BasicField { return $this->meta['sublabel']; } - public function set_sublabel( string $value ): self { + public function set_sublabel( string $value ): Field { $this->meta['sublabel'] = $value; return $this; diff --git a/src/Field/Header.php b/src/Field/Header.php index fa86700d47cc77952409685507eb31609ec291a6..cebe249b04a16dbbaa2b84a43e07d1020aab8749 100644 --- a/src/Field/Header.php +++ b/src/Field/Header.php @@ -2,6 +2,8 @@ namespace WPDesk\Forms\Field; +use WPDesk\Forms\Field; + class Header extends NoValueField { public function __construct() { parent::__construct(); @@ -16,7 +18,7 @@ class Header extends NoValueField { return true; } - public function set_header_size( int $value ): self { + public function set_header_size( int $value ): Field { $this->meta['header_size'] = $value; return $this; diff --git a/src/Field/SelectField.php b/src/Field/SelectField.php index bead3bb95ac07917388e0dfff4a598b09614d9ad..ee0264c0211d09e6a5ce1f0825458342068e99dc 100644 --- a/src/Field/SelectField.php +++ b/src/Field/SelectField.php @@ -2,6 +2,8 @@ namespace WPDesk\Forms\Field; +use WPDesk\Forms\Field; + class SelectField extends BasicField { public function get_template_name(): string { @@ -9,13 +11,13 @@ class SelectField extends BasicField { } /** @param string[] $options */ - public function set_options( array $options ): self { + public function set_options( array $options ): Field { $this->meta['possible_values'] = $options; return $this; } - public function set_multiple(): self { + public function set_multiple(): Field { $this->attributes['multiple'] = true; return $this; diff --git a/src/Field/Traits/HtmlAttributes.php b/src/Field/Traits/HtmlAttributes.php index b4ee08490f980fcbe4a08c76f17c0474a5aabf2f..afc1e088eb057b70aee75507107783106b35dcae 100644 --- a/src/Field/Traits/HtmlAttributes.php +++ b/src/Field/Traits/HtmlAttributes.php @@ -2,6 +2,8 @@ namespace WPDesk\Forms\Field\Traits; +use WPDesk\Forms\Field; + /** * Implementation of HTML attributes like id, name, action etc. * @@ -29,13 +31,19 @@ trait HtmlAttributes { ); } - public function set_attribute( string $name, string $value ): self { + /** + * @return \WPDesk\Forms\Field|\WPDesk\Forms\Form + */ + public function set_attribute( string $name, string $value ) { $this->attributes[ $name ] = $value; return $this; } - public function unset_attribute( string $name ): self { + /** + * @return \WPDesk\Forms\Field|\WPDesk\Forms\Form + */ + public function unset_attribute( string $name ) { unset( $this->attributes[ $name ] ); return $this;