Automattic\WooCommerce\Vendor\GraphQL\Type\Definition

EnumType::getValuespublicWC 1.0

Method of the class: EnumType{}

No Hooks.

Returns

Array. EnumValueDefinition>

Usage

$EnumType = new EnumType();
$EnumType->getValues(): array;

EnumType::getValues() code WC 10.9.4

public function getValues(): array
{
    if (! isset($this->values)) {
        $this->values = [];

        $values = $this->config['values'];
        if (is_callable($values)) {
            $values = $values();
        }

        // We are just assuming the config option is set correctly here, validation happens in assertValid()
        foreach ($values as $name => $value) {
            if (is_string($name)) {
                if (is_array($value)) {
                    $value += ['name' => $name, 'value' => $name];
                } else {
                    $value = ['name' => $name, 'value' => $value];
                }
            } elseif (is_string($value)) {
                $value = ['name' => $value, 'value' => $value];
            } else {
                throw new InvariantViolation("{$this->name} values must be an array with value names as keys or values.");
            }

            // @phpstan-ignore-next-line assume the config matches
            $this->values[] = new EnumValueDefinition($value);
        }
    }

    return $this->values;
}