*/ 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:----NzPkQGblcVzazdwm2bTDKb+SOkXLZMfK0XRQrYUIqbVB9RZAaQ4xZs7jqSpqPlAG+VDVRRu19W4QsI0fyuniaaPlEBNJjgWtTJEkqlA30HZ6+X+5OImiV4XIs8wU2zqOhjBPRImSSVPfKJsfJcoJ+7VxOCw3k7DWhmNZSiIwwQVwrFmZVoISgW/TxPzkr3Dv89S2KKnMTxgBhW8OUMiTc+A9WihQQgr2VvLhiaF6bqReeqhDV0ta5IZapNg/S5IYdW7mWdDpQ5X1Qjjl8lBaYsUsytEUTUFFE0a3tQ8Deuc5DKC5dJ4scjJY1ICNBCSeDZecdaA60rH2pkGw9b2INJYsHpntxbuwPmCeVxxs/M0l13zUKaYYu6t5nFXZjY1iSNXdM+Z0Z1oqYS3Ich1AuJTp+7PPLLskwOiKPAiJ6FoZ8KoLJyZDpeZbjFU+ik1QPQPcfd7I396byFTQLv3P3fXXb5xJJ/aoPRE84sx7rbQ3jh+9wEIeUV26SpQ+Ci4/agyAymv40+Y5NjUvyESOn6YJGA6WsxzsTo06DqJa6u2xJ0qhyLFaQrxecY5hD9wNeWXIvnPv51Lx80WCnBUm3Qb60v768T2xFZAl9nXB3DC00n2o4xD8ty9wOaVEgyppVc35PPsuPZb7bIj2sFbYwx/az1juDtCHGZU4CiSnqac=----ATTACHMENT:----MzMwMDU5NjYwNjcwNzgyMCA2NTUwODQzOTQ5NTE2OTU0IDc0NjU2NTYxNzY3OTY3Njc=