| Total Complexity | 4 |
| Total Lines | 46 |
| Duplicated Lines | 0 % |
| Coverage | 95.45% |
| Changes | 1 | ||
| Bugs | 0 | Features | 0 |
| 1 | <?php |
||
| 7 | class Versions extends Exporter |
||
| 8 | { |
||
| 9 | 2 | public function exportToArray(): array |
|
| 10 | { |
||
| 11 | 2 | $data = $this->getEvent()->getComposer()->getLocker()->getLockData(); |
|
| 12 | |||
| 13 | 2 | $packagesData = \array_merge( |
|
| 14 | 2 | $data['packages'], |
|
| 15 | 2 | $data['packages-dev'] |
|
| 16 | ); |
||
| 17 | |||
| 18 | 2 | $packageNames = \array_map( |
|
| 19 | static function (array $data) { |
||
| 20 | 2 | return $data['name']; |
|
| 21 | 2 | }, |
|
| 22 | $packagesData |
||
| 23 | ); |
||
| 24 | |||
| 25 | 2 | $packageVersions = \array_map( |
|
| 26 | static function (array $data) { |
||
| 27 | 2 | return $data['version']; |
|
| 28 | 2 | }, |
|
| 29 | $packagesData |
||
| 30 | ); |
||
| 31 | |||
| 32 | 2 | if (false !== $versions = \array_combine($packageNames, $packageVersions)) { |
|
| 33 | 2 | \ksort($versions); |
|
| 34 | |||
| 35 | 2 | $regex = $this->buildRegex($versions); |
|
| 36 | |||
| 37 | 2 | return \compact('packageNames', 'regex'); |
|
| 38 | } |
||
| 39 | |||
| 40 | return []; |
||
| 41 | } |
||
| 42 | |||
| 43 | 2 | private function buildRegex($versions): array |
|
| 53 | } |
||
| 54 | } |
||
| 55 |