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 }