MergeBox.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace Fgm\ComposerCheck;
  3. class MergeBox {
  4. protected $packages;
  5. public function __construct(RequirementsLoader $requirementsLoader, LockLoader $lockLoader) {
  6. }
  7. public function merge() {
  8. $packages = ['dev' => [], 'run' => []];
  9. foreach ($jsonPackages as $package => $requirement) {
  10. if ($all || !empty($requirement)) {
  11. $package = strtolower($package);
  12. $packages['run'][$package]['requirement'] = $requirement;
  13. }
  14. }
  15. foreach ($jsonDevPackages as $package => $requirement) {
  16. if ($all || !empty($requirement)) {
  17. $package = strtolower($package);
  18. $packages['dev'][$package]['requirement'] = $requirement;
  19. }
  20. }
  21. foreach ($lockPackages as $packageInfo) {
  22. $package = strtolower($packageInfo['name']);
  23. if ($all || !empty($packages['run'][$package])) {
  24. $version = $packageInfo['version'];
  25. $packages['run'][$package]['version'] = $version;
  26. }
  27. }
  28. foreach ($lockDevPackages as $packageInfo) {
  29. $package = strtolower($packageInfo['name']);
  30. if ($all || !empty($packages['dev'][$package])) {
  31. $version = $packageInfo['version'];
  32. $packages['dev'][$package]['version'] = $version;
  33. }
  34. }
  35. ksort($packages['dev']);
  36. ksort($packages['run']);
  37. }
  38. /**
  39. * @return array
  40. */
  41. public function getRows() {
  42. }
  43. }