WooCommerce Code Reference

InputObjectType extends Type
in package
implements InputType, NullableType, NamedType Uses NamedTypeImplementation

Registry of built-in Automattic\WooCommerce\Vendor\GraphQL types and base class for all other types.

Tags
phpstan-import-type

UnnamedInputObjectFieldConfig from InputObjectField

phpstan-type

EagerFieldConfig InputObjectField|(Type&InputType)|UnnamedInputObjectFieldConfig

phpstan-type

LazyFieldConfig callable(): EagerFieldConfig

phpstan-type

FieldConfig EagerFieldConfig|LazyFieldConfig

phpstan-type

ParseValueFn callable(array<string, mixed>): mixed

phpstan-type

InputObjectConfig array{ name?: string|null, description?: string|null, isOneOf?: bool|null, fields: iterable|callable(): iterable, parseValue?: ParseValueFn|null, astNode?: InputObjectTypeDefinitionNode|null, extensionASTNodes?: array|null }

Interfaces, Classes and Traits

InputType
export type InputType = | ScalarType | EnumType | InputObjectType | ListOfType<InputType> | NonNull< | ScalarType | EnumType | InputObjectType | ListOfType<InputType>, >;.
NullableType
NamedType
export type NamedType = | ScalarType | ObjectType | InterfaceType | UnionType | EnumType | InputObjectType;.

Table of Contents

BOOLEAN  = 'Boolean'
BUILT_IN_SCALAR_NAMES  = [self::INT, self::FLOAT, self::STRING, self::BOOLEAN, self::ID]
BUILT_IN_TYPE_NAMES  = [...self::BUILT_IN_SCALAR_NAMES, ...AutomatticWooCommerceVendorGraphQLTypeIntrospection::TYPE_NAMES]
Names of all built-in types: built-in scalars and introspection types.
FLOAT  = 'Float'
ID  = 'ID'
INT  = 'Int'
STANDARD_TYPE_NAMES  = self::BUILT_IN_SCALAR_NAMES
STRING  = 'String'
$astNode  : InputObjectTypeDefinitionNode|null
$config  : array<string|int, mixed>
$description  : string|null
$extensionASTNodes  : array<string|int, mixed>
$isOneOf  : bool
$name  : string
$builtInScalars  : array<string|int, mixed>|null
$builtInTypes  : array<string|int, mixed>|null
$fields  : array<string|int, mixed>
Lazily initialized.
$parseValue  : ParseValueFn|null
__construct()  : mixed
__toString()  : string
assertValid()  : void
Validates type config and throws if one of the type options is invalid.
astNode()  : (\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\Node&\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\TypeDefinitionNode)|null
boolean()  : ScalarType
Returns the built-in Boolean scalar type.
builtInScalars()  : array<string, ScalarType>
Returns all built-in scalar types.
builtInTypes()  : array<string, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType>
Returns all built-in types: built-in scalars and introspection types.
description()  : string|null
extensionASTNodes()  : array<string|int, InputObjectTypeExtensionNode>
findField()  : InputObjectField|null
float()  : ScalarType
Returns the built-in Float scalar type.
getField()  : InputObjectField
getFields()  : array<string, InputObjectField>
getNamedType()  : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType)|null
Returns the underlying named type of the given type.
getNullableType()  : Type|NullableType
Unwraps a potentially non-null type to return the underlying nullable type.
getStandardTypes()  : array<string, ScalarType>
Returns all built-in scalar types.
hasField()  : bool
id()  : ScalarType
Returns the built-in ID scalar type.
int()  : ScalarType
Returns the built-in Int scalar type.
isAbstractType()  : bool
Determines if the given type is an abstract type.
isBuiltInScalar()  : bool
Determines if the given type is a built-in scalar (Int, Float, String, Boolean, ID).
isBuiltInScalarName()  : bool
Checks if the given name is one of the built-in scalar type names (ID, String, Int, Float, Boolean).
isBuiltInType()  : bool
isCompositeType()  : bool
Determines if the given type is a composite type.
isInputType()  : bool
Determines if the given type is an input type.
isLeafType()  : bool
Determines if the given type is a leaf type.
isOneOf()  : bool
Returns true if this is a oneOf input object type.
isOutputType()  : bool
Determines if the given type is an output type.
jsonSerialize()  : string
listOf()  : ListOfType<string|int, T>
Wraps the given type in a list type.
name()  : string
nonNull()  : NonNull
Wraps the given type in a non-null type.
overrideStandardTypes()  : void
Allows partially or completely overriding the standard types globally.
parseValue()  : mixed
Parses an externally provided value (query variable) to use as an input.
string()  : ScalarType
Returns the built-in String scalar type.
toString()  : string
inferName()  : string
initializeField()  : void
initializeFields()  : void
validateOneOfConstraints()  : void
Validates that oneOf input object constraints are met.

Constants

BUILT_IN_TYPE_NAMES

Names of all built-in types: built-in scalars and introspection types.

public array<int, string> BUILT_IN_TYPE_NAMES = [...self::BUILT_IN_SCALAR_NAMES, ...AutomatticWooCommerceVendorGraphQLTypeIntrospection::TYPE_NAMES]
Tags
see
Type::BUILT_IN_SCALAR_NAMES

for just the built-in scalar names.

Properties

Methods

astNode()

public astNode() : (\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\Node&\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\TypeDefinitionNode)|null
Return values
(\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\Node&\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\TypeDefinitionNode)|null

builtInTypes()

Returns all built-in types: built-in scalars and introspection types.

public static builtInTypes() : array<string, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType>
Return values
array<string, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType>

getNamedType()

Returns the underlying named type of the given type.

public static getNamedType(Type|null $type) : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType)|null
Parameters
$type : Type|null
Tags
phpstan-return

($type is null ? null : Type&NamedType)

Return values
(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType)|null

isBuiltInScalar()

Determines if the given type is a built-in scalar (Int, Float, String, Boolean, ID).

public static isBuiltInScalar(mixed $type) : bool

Does not unwrap NonNull/List wrappers — checks the type instance directly. ScalarType is a NamedType, so {@see} is unnecessary.

Parameters
$type : mixed
Tags
phpstan-assert-if-true

ScalarType $type

Return values
bool

isBuiltInScalarName()

Checks if the given name is one of the built-in scalar type names (ID, String, Int, Float, Boolean).

public static isBuiltInScalarName(string $name) : bool
Parameters
$name : string
Return values
bool

nonNull()

Wraps the given type in a non-null type.

public static nonNull(NonNull|(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NullableType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|callable $type) : NonNull
Parameters
$type : NonNull|(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NullableType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|callable
Return values
NonNull

parseValue()

Parses an externally provided value (query variable) to use as an input.

public parseValue(array<string, mixed> $value) : mixed

Should throw an exception with a client-friendly message on invalid values, @see ClientAware.

Parameters
$value : array<string, mixed>
Return values
mixed