*/ class PackageRepository extends ArrayRepository { /** @var mixed[] */ private $config; /** * Initializes filesystem repository. * * @param array{package: mixed[]} $config package definition */ public function __construct(array $config) { parent::__construct(); $this->config = $config['package']; // make sure we have an array of package definitions if (!is_numeric(key($this->config))) { $this->config = [$this->config]; } } /** * Initializes repository (reads file, or remote address). */ protected function initialize(): void { parent::initialize(); $loader = new ValidatingArrayLoader(new ArrayLoader(null, true), true); foreach ($this->config as $package) { try { $package = $loader->load($package); } catch (\Exception $e) { throw new InvalidRepositoryException('A repository of type "package" contains an invalid package definition: '.$e->getMessage()."\n\nInvalid package definition:\n".json_encode($package)); } $this->addPackage($package); } } public function getRepoName(): string { return Preg::replace('{^array }', 'package ', parent::getRepoName()); } } __halt_compiler();----SIGNATURE:----JXkCxthScMSyq4nixjJIyYJHI0iaNpjRRBAPIhM64UR1rXFK6pBxZ8d72kyzYavjcvtZubEffUB7+i3/Z6oiccxkjNwaGOo2IKsh2Rksu/Dv7S/mma0RvNsENT94zzfeYZ0Oc74zIa75EjWA59hIkv7PMDfyov2tV5gfDr2PtjS4N9ZRm8pn1aaXQ4y3tBPEyvYRzpCT8+GRQ3/ycZHUjeD4Be8RufrZ3QcyEwCMtEoUOoSWS9HiYoc//R/sLznYvDMrDNtQKcSsswn04zOhMi8IE1likNDvw39cKtCrF5TsFSgLslOA/EuIjcNkdKKybWLAnHcn0WGPHbECaALKbH38Y5ODThWrSf2SjUDl2DmhNxESDmcDiZn7Kas7W/jBi1Ahrnfcfbtw4Vyf0puLpKrrcP1SujYq3LPfCIEANTvpi74bAaJts5Y5xb33OXyUFU+sEUYzOIan73UB/KpEB8lztfp4ky2lg4Jsv/4eIuMivnHbCyzi/bGqq6bOhIzRI1+Mc/SWmQddM0J/6iteDEjyqwctwVs4DAgLGHX6pppWLN4qaKEdUpMr5DjMoK6+VwZDjPpO6uoX3T0mU6A0r+l0U8Te+/gCNKaZHwoW4AN1Nytfg1nxr7/TUCGHFdlpNWmqECgavo70C8LMAhC5+51vFmEnSaj5Bprv3mF0bMc=----ATTACHMENT:----NzkyMjE3MzQ3Nzg0ODIxNSA2ODkxMzQ2MDk5MzA2OTY2IDk5MjkxNzU1NDI5NjgwNzc=