@@ 291-303 (lines=13) @@ | ||
288 | */ |
|
289 | protected function buildTypeReferenceMap() { |
|
290 | $types = $this->getTypeMap(); |
|
291 | $references = array_reduce(array_keys($types), function ($references, $name) use ($types) { |
|
292 | $current = $types[$name]; |
|
293 | $reference = $current['reference']; |
|
294 | ||
295 | if (!empty($reference) && (empty($references[$reference]) || $references[$reference]['weight'] < $current['weight'])) { |
|
296 | $references[$reference] = [ |
|
297 | 'name' => $name, |
|
298 | 'weight' => !empty($current['weight']) ? $current['weight'] : 0, |
|
299 | ]; |
|
300 | } |
|
301 | ||
302 | return $references; |
|
303 | }, []); |
|
304 | ||
305 | return array_map(function ($reference) { |
|
306 | return $reference['name']; |
|
@@ 413-426 (lines=14) @@ | ||
410 | */ |
|
411 | protected function buildMutationMap() { |
|
412 | $mutations = $this->mutationManager->getDefinitions(); |
|
413 | $mutations = array_reduce(array_keys($mutations), function ($carry, $id) use ($mutations) { |
|
414 | $current = $mutations[$id]; |
|
415 | $name = $current['name']; |
|
416 | ||
417 | if (empty($carry[$name]) || $carry[$name]['weight'] < $current['weight']) { |
|
418 | $carry[$name] = [ |
|
419 | 'id' => $id, |
|
420 | 'class' => $current['class'], |
|
421 | 'weight' => !empty($current['weight']) ? $current['weight'] : 0, |
|
422 | ]; |
|
423 | } |
|
424 | ||
425 | return $carry; |
|
426 | }, []); |
|
427 | ||
428 | return array_map(function ($definition) { |
|
429 | $id = $definition['id']; |