PluginProbe
Imagify Image Optimization: Optimize Images | Compress & Convert to WebP/AVIF / trunk
Imagify Image Optimization: Optimize Images | Compress & Convert to WebP/AVIF vtrunk
2.3.4 2.3.3 2.3.2 2.3.1 2.3.0 2.2.9 2.2.8 trunk 1.10 1.3.3 1.3.4 1.3.5 1.3.5.1 1.3.5.2 1.3.6 1.3.6.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.5 All 103 releases
imagify / vendor / composer / installers / src / Composer / Installers / MauticInstaller.php

MauticInstaller.php in Imagify Image Optimization: Optimize Images | Compress & Convert to WebP/AVIF trunk, at vendor/composer/installers/src/Composer/Installers/MauticInstaller.php

44 lines 1.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Composer\Installers;
4
5 use Composer\Package\PackageInterface;
6
7 class MauticInstaller extends BaseInstaller
8 {
9 /** @var array<string, string> */
10 protected $locations = array(
11 'plugin' => 'plugins/{$name}/',
12 'theme' => 'themes/{$name}/',
13 'core' => 'app/',
14 );
15
16 private function getDirectoryName(): string
17 {
18 $extra = $this->package->getExtra();
19 if (!empty($extra['install-directory-name'])) {
20 return $extra['install-directory-name'];
21 }
22
23 return $this->toCamelCase($this->package->getPrettyName());
24 }
25
26 private function toCamelCase(string $packageName): string
27 {
28 return str_replace(' ', '', ucwords(str_replace('-', ' ', basename($packageName))));
29 }
30
31 /**
32 * Format package name of mautic-plugins to CamelCase
33 */
34 public function inflectPackageVars(array $vars): array
35 {
36 if ($vars['type'] == 'mautic-plugin' || $vars['type'] == 'mautic-theme') {
37 $directoryName = $this->getDirectoryName();
38 $vars['name'] = $directoryName;
39 }
40
41 return $vars;
42 }
43 }
44