Error: `$cat` variable must be of an input type
   ╭─[0056_variables_are_input_types.graphql:1:16]
   │
 1 │ query takesCat($cat: Cat) {
   │                      ─┬─  
   │                       ╰─── this is an object type
   │ 
   │ Help: objects, unions, and interfaces cannot be used because variables can only be of input type
───╯
Error: variable `$cat` of type `Cat` cannot be used for argument `atOtherHomes` of type `Boolean`
   ╭─[0056_variables_are_input_types.graphql:3:20]
   │
 1 │ query takesCat($cat: Cat) {
   │                ────┬────  
   │                    ╰────── variable `$cat` of type `Cat` is declared here
   │ 
 3 │     isHouseTrained(atOtherHomes: $cat)
   │                    ─────────┬────────  
   │                             ╰────────── variable `$cat` used here
───╯
Error: `$dog` variable must be of an input type
   ╭─[0056_variables_are_input_types.graphql:7:20]
   │
 7 │ query takesDogBang($dog: Dog!) {
   │                          ──┬─  
   │                            ╰─── this is an object type
   │ 
   │ Help: objects, unions, and interfaces cannot be used because variables can only be of input type
───╯
Error: variable `$dog` of type `Dog!` cannot be used for argument `atOtherHomes` of type `Boolean`
   ╭─[0056_variables_are_input_types.graphql:9:20]
   │
 7 │ query takesDogBang($dog: Dog!) {
   │                    ─────┬────  
   │                         ╰────── variable `$dog` of type `Dog!` is declared here
   │ 
 9 │     isHouseTrained(atOtherHomes: $dog)
   │                    ─────────┬────────  
   │                             ╰────────── variable `$dog` used here
───╯
Error: `$pets` variable must be of an input type
    ╭─[0056_variables_are_input_types.graphql:13:22]
    │
 13 │ query takesListOfPet($pets: [Pet]) {
    │                             ──┬──  
    │                               ╰──── this is an interface type
    │ 
    │ Help: objects, unions, and interfaces cannot be used because variables can only be of input type
────╯
Error: variable `$pets` of type `[Pet]` cannot be used for argument `booleanListArg` of type `[Boolean!]`
    ╭─[0056_variables_are_input_types.graphql:14:15]
    │
 13 │ query takesListOfPet($pets: [Pet]) {
    │                      ──────┬─────  
    │                            ╰─────── variable `$pets` of type `[Pet]` is declared here
 14 │   booleanList(booleanListArg: $pets)
    │               ──────────┬──────────  
    │                         ╰──────────── variable `$pets` used here
────╯
Error: `$catOrDog` variable must be of an input type
    ╭─[0056_variables_are_input_types.graphql:17:21]
    │
 17 │ query takesCatOrDog($catOrDog: CatOrDog) {
    │                                ────┬───  
    │                                    ╰───── this is a union type
    │ 
    │ Help: objects, unions, and interfaces cannot be used because variables can only be of input type
────╯
Error: variable `$catOrDog` of type `CatOrDog` cannot be used for argument `atOtherHomes` of type `Boolean`
    ╭─[0056_variables_are_input_types.graphql:19:20]
    │
 17 │ query takesCatOrDog($catOrDog: CatOrDog) {
    │                     ─────────┬─────────  
    │                              ╰─────────── variable `$catOrDog` of type `CatOrDog` is declared here
    │ 
 19 │     isHouseTrained(atOtherHomes: $catOrDog)
    │                    ───────────┬───────────  
    │                               ╰───────────── variable `$catOrDog` used here
────╯
Error: cannot find type `Dragon` in this document
    ╭─[0056_variables_are_input_types.graphql:23:22]
    │
 23 │ query takesCatOrDog2($catOrDog: Dragon) {
    │                      ────────┬────────  
    │                              ╰────────── not found in this scope
────╯
Error: variable `$catOrDog` of type `Dragon` cannot be used for argument `atOtherHomes` of type `Boolean`
    ╭─[0056_variables_are_input_types.graphql:25:20]
    │
 23 │ query takesCatOrDog2($catOrDog: Dragon) {
    │                      ────────┬────────  
    │                              ╰────────── variable `$catOrDog` of type `Dragon` is declared here
    │ 
 25 │     isHouseTrained(atOtherHomes: $catOrDog)
    │                    ───────────┬───────────  
    │                               ╰───────────── variable `$catOrDog` used here
────╯

