Mercurial > hg > isophonics-drupal-site
annotate vendor/composer/installers/src/Composer/Installers/MajimaInstaller.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 7a779792577d |
children |
rev | line source |
---|---|
Chris@12 | 1 <?php |
Chris@12 | 2 namespace Composer\Installers; |
Chris@12 | 3 |
Chris@12 | 4 /** |
Chris@12 | 5 * Plugin/theme installer for majima |
Chris@12 | 6 * @author David Neustadt |
Chris@12 | 7 */ |
Chris@12 | 8 class MajimaInstaller extends BaseInstaller |
Chris@12 | 9 { |
Chris@12 | 10 protected $locations = array( |
Chris@12 | 11 'plugin' => 'plugins/{$name}/', |
Chris@12 | 12 ); |
Chris@12 | 13 |
Chris@12 | 14 /** |
Chris@12 | 15 * Transforms the names |
Chris@12 | 16 * @param array $vars |
Chris@12 | 17 * @return array |
Chris@12 | 18 */ |
Chris@12 | 19 public function inflectPackageVars($vars) |
Chris@12 | 20 { |
Chris@12 | 21 return $this->correctPluginName($vars); |
Chris@12 | 22 } |
Chris@12 | 23 |
Chris@12 | 24 /** |
Chris@12 | 25 * Change hyphenated names to camelcase |
Chris@12 | 26 * @param array $vars |
Chris@12 | 27 * @return array |
Chris@12 | 28 */ |
Chris@12 | 29 private function correctPluginName($vars) |
Chris@12 | 30 { |
Chris@12 | 31 $camelCasedName = preg_replace_callback('/(-[a-z])/', function ($matches) { |
Chris@12 | 32 return strtoupper($matches[0][1]); |
Chris@12 | 33 }, $vars['name']); |
Chris@12 | 34 $vars['name'] = ucfirst($camelCasedName); |
Chris@12 | 35 return $vars; |
Chris@12 | 36 } |
Chris@12 | 37 } |