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 / PxcmsInstaller.php

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

63 lines 2.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 class PxcmsInstaller extends BaseInstaller
6 {
7 /** @var array<string, string> */
8 protected $locations = array(
9 'module' => 'app/Modules/{$name}/',
10 'theme' => 'themes/{$name}/',
11 );
12
13 /**
14 * Format package name.
15 */
16 public function inflectPackageVars(array $vars): array
17 {
18 if ($vars['type'] === 'pxcms-module') {
19 return $this->inflectModuleVars($vars);
20 }
21
22 if ($vars['type'] === 'pxcms-theme') {
23 return $this->inflectThemeVars($vars);
24 }
25
26 return $vars;
27 }
28
29 /**
30 * For package type pxcms-module, cut off a trailing '-plugin' if present.
31 *
32 * @param array<string, string> $vars
33 * @return array<string, string>
34 */
35 protected function inflectModuleVars(array $vars): array
36 {
37 $vars['name'] = str_replace('pxcms-', '', $vars['name']); // strip out pxcms- just incase (legacy)
38 $vars['name'] = str_replace('module-', '', $vars['name']); // strip out module-
39 $vars['name'] = $this->pregReplace('/-module$/', '', $vars['name']); // strip out -module
40 $vars['name'] = str_replace('-', '_', $vars['name']); // make -'s be _'s
41 $vars['name'] = ucwords($vars['name']); // make module name camelcased
42
43 return $vars;
44 }
45
46 /**
47 * For package type pxcms-module, cut off a trailing '-plugin' if present.
48 *
49 * @param array<string, string> $vars
50 * @return array<string, string>
51 */
52 protected function inflectThemeVars(array $vars): array
53 {
54 $vars['name'] = str_replace('pxcms-', '', $vars['name']); // strip out pxcms- just incase (legacy)
55 $vars['name'] = str_replace('theme-', '', $vars['name']); // strip out theme-
56 $vars['name'] = $this->pregReplace('/-theme$/', '', $vars['name']); // strip out -theme
57 $vars['name'] = str_replace('-', '_', $vars['name']); // make -'s be _'s
58 $vars['name'] = ucwords($vars['name']); // make module name camelcased
59
60 return $vars;
61 }
62 }
63