Ruru incorrectly templates array values as singular

### Summary

In Ruru, if a mutation takes an input with an array field, the mutation input will be templated as a singular value instead.

Here's an example, to illustrate:

<img width="649" alt="image" src="https://github.com/graphile/crystal/assets/5354254/200e7f38-eaf3-45f6-a922-00e3c10facb0">

In the above schema, the `propertyDefinitions` field of the `CreateAspectTypeInputRecordInput` type (phew, that's a mouthful) is an array type:

<img width="472" alt="image" src="https://github.com/graphile/crystal/assets/5354254/45e6efb8-a73d-4bd6-9ce0-788bc3484b06">

But when using the Explorer panel to build a mutation, the actual mutation that Ruru templates out provides a single object value for `propertyDefinitions`, rather than an array of objects. This is true even for primitive values; fields that should be arrays of strings are templated as strings instead.

### Steps to reproduce

- Create a schema with a mutation whose input type has at least one array field
- Open Ruru and start a mutation in the Explorer panel
- Select your mutation type

### Expected results

The code panel should contain a mutation with an array for the array field of the input

### Actual results

The code panel contains a mutation with singular value for the array field of the input

### Additional context

N/A

### Possible Solution

N/A
