Source of file WinterInstaller.php
Size: 1,863 Bytes - Last Modified: 2021-12-24T06:19:18+00:00
/var/www/docs.ssmods.com/process/src/vendor/composer/installers/src/Composer/Installers/WinterInstaller.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 | <?php namespace Composer\Installers; class WinterInstaller extends BaseInstaller { /** @var array<string, string> */ protected $locations = array( 'module' => 'modules/{$name}/', 'plugin' => 'plugins/{$vendor}/{$name}/', 'theme' => 'themes/{$name}/' ); /** * Format package name. * * For package type winter-plugin, cut off a trailing '-plugin' if present. * * For package type winter-theme, cut off a trailing '-theme' if present. */ public function inflectPackageVars(array $vars): array { if ($vars['type'] === 'winter-module') { return $this->inflectModuleVars($vars); } if ($vars['type'] === 'winter-plugin') { return $this->inflectPluginVars($vars); } if ($vars['type'] === 'winter-theme') { return $this->inflectThemeVars($vars); } return $vars; } /** * @param array<string, string> $vars * @return array<string, string> */ protected function inflectModuleVars(array $vars): array { $vars['name'] = $this->pregReplace('/^wn-|-module$/', '', $vars['name']); return $vars; } /** * @param array<string, string> $vars * @return array<string, string> */ protected function inflectPluginVars(array $vars): array { $vars['name'] = $this->pregReplace('/^wn-|-plugin$/', '', $vars['name']); $vars['vendor'] = $this->pregReplace('/[^a-z0-9_]/i', '', $vars['vendor']); return $vars; } /** * @param array<string, string> $vars * @return array<string, string> */ protected function inflectThemeVars(array $vars): array { $vars['name'] = $this->pregReplace('/^wn-|-theme$/', '', $vars['name']); return $vars; } } |