input StepZen_Argument

are used to map constants, GraphQL fields or GraphQL arguments to the GraphQL target argument or input field name or the target @rest name.

For @materializer field must be a field in the enclosing object and argument must be a valid expression against the arguments of the annotated field with @materializer.

For @sequence field must be a field returned by a prior step and argument must be a valid expression against the arguments of the annotated field with @sequence.

One may read this as a GraphQL argument or input field name is fulfilled by const, field or argument.

For @rest, arguments provides a mechanism to alias argument to name.

Fields

argument: String

the argument or input field mapped to the argument or input field specified by name.

Values can be pulled from an input object using a dotted path to the input object field.

For example customer.address.city pulls the city field if the argument customer is an input object with an input object field address.

List elements can be pulled by using syntax identifier[index] either from the argument or input object field as long as the argument or input field type is a list type. The first element in the list has index 0 and negative indices pull from the end of the list, so phone[-1] is the last value in the list. If the element does not exist then the value evaluates to null.

const: JSON

The constant value is mapped to the argument or input field specified by name.

field: String

the field name mapped to the argument or input field specified by name.

name: String!

is the name of the argument or an expression for an input field of an argument.

When used in @materializer and @sequence name either points to a complete argument a, an element of a list argument a[1], or an input field of the argument using a dotted expression a.b.c. If any input field is a list type then individual elements can be set using indexes a.b[1].c or a.b.c[0].