|
@@ 184-196 (lines=13) @@
|
| 181 |
|
* The optimized list of data type to type name references. |
| 182 |
|
*/ |
| 183 |
|
protected function buildTypeReferenceMap(array $types) { |
| 184 |
|
$references = array_reduce(array_keys($types), function ($references, $name) use ($types) { |
| 185 |
|
$current = $types[$name]; |
| 186 |
|
$reference = $current['reference']; |
| 187 |
|
|
| 188 |
|
if (!empty($reference) && (empty($references[$reference]) || $references[$reference]['weight'] < $current['weight'])) { |
| 189 |
|
$references[$reference] = [ |
| 190 |
|
'name' => $name, |
| 191 |
|
'weight' => !empty($current['weight']) ? $current['weight'] : 0, |
| 192 |
|
]; |
| 193 |
|
} |
| 194 |
|
|
| 195 |
|
return $references; |
| 196 |
|
}, []); |
| 197 |
|
|
| 198 |
|
return array_map(function ($reference) { |
| 199 |
|
return $reference['name']; |
|
@@ 353-366 (lines=14) @@
|
| 350 |
|
*/ |
| 351 |
|
protected function buildMutationMap(MutationPluginManager $manager) { |
| 352 |
|
$definitions = $manager->getDefinitions(); |
| 353 |
|
$mutations = array_reduce(array_keys($definitions), function ($carry, $id) use ($definitions) { |
| 354 |
|
$current = $definitions[$id]; |
| 355 |
|
$name = $current['name']; |
| 356 |
|
|
| 357 |
|
if (empty($carry[$name]) || $carry[$name]['weight'] < $current['weight']) { |
| 358 |
|
$carry[$name] = [ |
| 359 |
|
'id' => $id, |
| 360 |
|
'class' => $current['class'], |
| 361 |
|
'weight' => !empty($current['weight']) ? $current['weight'] : 0, |
| 362 |
|
]; |
| 363 |
|
} |
| 364 |
|
|
| 365 |
|
return $carry; |
| 366 |
|
}, []); |
| 367 |
|
|
| 368 |
|
return array_map(function ($definition) use ($manager) { |
| 369 |
|
$id = $definition['id']; |