GraphQL: use input types for mutations
Our GraphQL API currently has two competing patterns for mutation arguments.
One pattern, used by almost all the mutations, is to specify a set of arguments for the mutation, and leave it like that.
Another, used by the Epics::TreeReorder
mutation, is to define an "input type", so the mutation takes a single argument which contains all the params needed for that mutation.
Maybe we want to standardize on one or the other approach for consistency reasons, or at least put together rules about when we might use one form over the other?
Input types are reusable, which I think is perhaps the main advantage to considering them.
Broken out of !18440 (comment 231368146)