@@ 22-35 (lines=14) @@ | ||
19 | return new InterfaceType([ |
|
20 | 'name' => $definition['name'], |
|
21 | 'description' => $definition['description'], |
|
22 | 'fields' => function () use ($builder, $definition) { |
|
23 | $fields = $builder->getFields($definition['name']); |
|
24 | ||
25 | if (!empty($definition['interfaces'])) { |
|
26 | $inherited = array_map(function ($name) use ($builder) { |
|
27 | return $builder->getFields($name); |
|
28 | }, $definition['interfaces']); |
|
29 | ||
30 | $inherited = call_user_func_array('array_merge', $inherited); |
|
31 | return array_merge($inherited, $fields); |
|
32 | } |
|
33 | ||
34 | return $fields; |
|
35 | }, |
|
36 | 'resolveType' => function ($value, $context, $info) use ($builder, $definition) { |
|
37 | return $builder->resolveType($definition['name'], $value, $context, $info); |
|
38 | }, |
@@ 25-38 (lines=14) @@ | ||
22 | return new ObjectType([ |
|
23 | 'name' => $definition['name'], |
|
24 | 'description' => $definition['description'], |
|
25 | 'fields' => function () use ($builder, $definition) { |
|
26 | $fields = $builder->getFields($definition['name']); |
|
27 | ||
28 | if (!empty($definition['interfaces'])) { |
|
29 | $inherited = array_map(function ($name) use ($builder) { |
|
30 | return $builder->getFields($name); |
|
31 | }, $definition['interfaces']); |
|
32 | ||
33 | $inherited = call_user_func_array('array_merge', $inherited); |
|
34 | return array_merge($inherited, $fields); |
|
35 | } |
|
36 | ||
37 | return $fields; |
|
38 | }, |
|
39 | 'interfaces' => function () use ($builder, $definition) { |
|
40 | return array_filter(array_map(function ($name) use ($builder) { |
|
41 | return $builder->getType($name); |