Done !
| Server IP : 46.105.57.169 / Your IP : 216.73.216.67 Web Server : Apache System : Linux webm002.cluster120.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : verseaumee ( 152031) PHP Version : 8.5.7 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/verseaumee/maze/wp-content/plugins/woocommerce/src/Api/InputTypes/ |
Upload File : |
<?php
declare(strict_types=1);
namespace Automattic\WooCommerce\Api\InputTypes;
/**
* Trait for input types to track which fields were explicitly provided in the GraphQL request.
*
* This allows mutations to distinguish between a field being missing (don't change it)
* and explicitly set to null (clear it).
*/
trait TracksProvidedFields {
/**
* Fields that were explicitly provided in the input.
*
* Using an underscore prefix to keep it invisible to the ApiBuilder
* (which only scans public properties for GraphQL fields).
*
* @var array<string, true>
*/
protected array $provided_fields = array(); // phpcs:ignore WordPress.NamingConventions.ValidVariableName.PropertyNotSnakeCase -- internal tracking array
/**
* Mark a field as explicitly provided in the input.
*
* @param string $field The field name.
*/
public function mark_provided( string $field ): void {
$this->provided_fields[ $field ] = true;
}
/**
* Check whether a field was explicitly provided in the input.
*
* @param string $field The field name.
* @return bool
*/
public function was_provided( string $field ): bool {
return isset( $this->provided_fields[ $field ] );
}
}