uawdijnntqw1x1x1
IP : 216.73.216.219
Hostname : webm015.cluster127.gra.hosting.ovh.net
Kernel : Linux webm015.cluster127.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
OS : Linux
PATH:
/
home
/
pteabiscqq
/
www
/
libraries
/
.
/
quix
/
src
/
Config
/
ConfigBag.php
/
/
<?php namespace ThemeXpert\Config; use ThemeXpert\Config\Contracts\ValidatorInterface; use ThemeXpert\Config\Contracts\TransformerInterface; use ThemeXpert\Config\Exceptions\DirectoryNotFoundException; class ConfigBag { /** * Store configurations. * * @var array */ protected $configs = []; /** * Instance of transformer. * * @var TransformerInterface */ protected $transformer; /** * Instance of validator. * * @var ValidatorInterface */ protected $validator; /** * Final transformer. * * @var FinalTransformer */ protected $finalTransformer; /** * Create a new instance of config bag. * * @param ValidatorInterface $validator * @param TransformerInterface $transformer * @param FinalTransformer $finalTransformer */ public function __construct(ValidatorInterface $validator, TransformerInterface $transformer, FinalTransformer $finalTransformer) { $this->validator = $validator; $this->transformer = $transformer; $this->finalTransformer = $finalTransformer; } /** * Fill up the configuration array. * * @param $path * @param $url * @param $groups * * @return $this * @throws DirectoryNotFoundException */ public function fill($path, $url, $groups) { if (!is_dir($path)) { throw new DirectoryNotFoundException("directory `{$path}` was not found in filesystem"); } $configs = $this->load($path, $url); $this->validate($configs); $configs = $this->transform($configs, $path); $configs = $this->setGroups($configs, $groups); $this->configs = array_merge($this->configs, $configs); return $this; } /** * Get configuration. * * @return array */ public function getConfigs() { $configs = $this->finalTransformer->transform($this->configs); return $configs; } /** * Load elements. * * @param $path * @param $url * * @return array */ protected function load($path, $url) { $loader = new Loader($path, $url); return $loader->load(); } /** * Validating the configuration file. * * @param $configs * * @return mixed */ protected function validate($configs) { $configs = array_reduce($configs, function ($carry, $config) { $this->validator->validate($config, $config['file']); return $carry; }, []); return $configs; } /** * Transform the configuration file. * * @param $configs * @param $path * * @return array */ protected function transform($configs, $path) { $configs = array_map(function ($config) use($path) { return $this->transformer->transform($config, $path); }, $configs); return $configs; } /** * Set groups. * * @param $configs * @param $groups * * @return array */ protected function setGroups($configs, $groups) { $configs = array_map(function ($config) use ($groups) { $config['groups'] = array_merge(isset($config['groups']) ? $config['groups'] : [], (array)$groups); return $config; }, $configs); return $configs; } }
/home/pteabiscqq/www/libraries/./quix/src/Config/ConfigBag.php