From 9b04361d83bc2cc848bcd65bf7d48f16388b9fbb Mon Sep 17 00:00:00 2001
From: Eryk Mika <eryk.mika@wpdesk.eu>
Date: Mon, 14 Apr 2025 11:12:31 +0200
Subject: [PATCH] refactor: phpstan nullable

---
 src/Field.php                             | 2 +-
 src/Field/Traits/HtmlAttributes.php       | 2 +-
 src/Resolver/DefaultFormFieldResolver.php | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/Field.php b/src/Field.php
index b932f27..14b0259 100644
--- a/src/Field.php
+++ b/src/Field.php
@@ -55,7 +55,7 @@ interface Field {
 	 */
 	public function get_attributes( array $except = [] ): array;
 
-	public function get_attribute( string $name, string $default = null ): string;
+	public function get_attribute( string $name, ?string $default = null ): string;
 
 	public function is_attribute_set( string $name ): bool;
 
diff --git a/src/Field/Traits/HtmlAttributes.php b/src/Field/Traits/HtmlAttributes.php
index aac835d..95a7a42 100644
--- a/src/Field/Traits/HtmlAttributes.php
+++ b/src/Field/Traits/HtmlAttributes.php
@@ -57,7 +57,7 @@ trait HtmlAttributes {
 		return ! empty( $this->attributes[ $name ] );
 	}
 
-	final public function get_attribute( string $name, string $default = null ): string {
+	final public function get_attribute( string $name, ?string $default = null ): string {
 		if ( is_array( $this->attributes[ $name ] ) ) {
 			// Be aware of coercing - if implode returns string(0) '', then return $default value.
 			return implode( ' ', $this->attributes[ $name ] ) ?: $default ?? '';
diff --git a/src/Resolver/DefaultFormFieldResolver.php b/src/Resolver/DefaultFormFieldResolver.php
index 4e3077a..23f5a52 100644
--- a/src/Resolver/DefaultFormFieldResolver.php
+++ b/src/Resolver/DefaultFormFieldResolver.php
@@ -20,7 +20,7 @@ class DefaultFormFieldResolver implements Resolver {
 		$this->dir_resolver = new DirResolver( __DIR__ . '/../../templates' );
 	}
 
-	public function resolve( $name, Renderer $renderer = null ): string {
+	public function resolve( $name, ?Renderer $renderer = null ): string {
 		return $this->dir_resolver->resolve( $name, $renderer );
 	}
 }
-- 
GitLab