*/ 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:----JN+wCUfvNugyvlmhJ302mFSUE8+jwb77fbr1gq6I3zE/c5d8AbqDMcaqZGHPxeGpfcg2QA0dy8QSIMlN9SgggEXT69pPgRzHazLnrItKioTvYhue83M8dI3d5JeE8ztr4aM0pWpXRvZ6L/zkv0spPk7eozJhZz97Jd9wHJCVMIrfuvkOf1VRVqhcIbnyhKdHlR9q333YiOn/LZh7ydKLHbCEnCExgW/7dQmRz5BN8dDdYtbQRMk/jFLSimVtezpl1FkXvqfcpOQW0w7hDfXOMP3udcrSNZBAXt5jCkKiWVUe461qBJugi/GyMZM9IcL9NvCGM8pOcUNysNbEUxFVdhrMqzj4SR5JrXxoDMlnvhpRh2JzR+oN9eRLT12wz/OZsQYT9IKkGEmcoPe8YV72GUeiWkSKZlLk6tShsZ0BUpm2fb0HJZr4eUlAFLlIBt9MZvQArYO+EL7+vRMWKh8ECxoaPcfXA7sTCWM7r74B/ifY8VuTfxI2p+0mwwpcRjhpl/r8srGCfhbKtfnxJ/nF0pJRbqbQB1prOeldeRNdof/GOIK5pB5WomiKJlHcyoQbdrmbHWMU70sbySO6EkjIQBYc+KxWw3Kee9cPFlmoF/tcRZdvjqN9bPr/C/DzpRwKODlBrQFpMBa+JIUAgT99iOVELGceP2coiToNasLuEEs=----ATTACHMENT:----NDY2MjY5NTU1NTkzODU0NCA0OTUwMjM3NDIxMDQ5NTI2IDgyODI3NzI5MzE3MDU4MzY=