Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
wp-content
/
test
/
wp-content
/
plugins
/
kirki
/
kirki-composer
/
composer
/
installers
/
src
/
Composer
/
Installers
:
TastyIgniterInstaller.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace Composer\Installers; class TastyIgniterInstaller extends BaseInstaller { /** @var array<string, string> */ protected $locations = [ 'module' => 'app/{$name}/', 'extension' => 'extensions/{$vendor}/{$name}/', 'theme' => 'themes/{$name}/', ]; /** * Format package name. * * Cut off leading 'ti-ext-' or 'ti-theme-' if present. * Strip vendor name of characters that is not alphanumeric or an underscore * */ public function inflectPackageVars(array $vars): array { $extra = $this->package->getExtra(); if ($vars['type'] === 'tastyigniter-module') { return $this->inflectModuleVars($vars); } if ($vars['type'] === 'tastyigniter-extension') { return $this->inflectExtensionVars($vars, $extra); } if ($vars['type'] === 'tastyigniter-theme') { return $this->inflectThemeVars($vars, $extra); } return $vars; } /** * @param array<string, string> $vars * @return array<string, string> */ protected function inflectModuleVars(array $vars): array { $vars['name'] = $this->pregReplace('/^ti-module-/', '', $vars['name']); return $vars; } /** * @param array<string, string> $vars * @param array<string, mixed> $extra * @return array<string, string> */ protected function inflectExtensionVars(array $vars, array $extra): array { if (!empty($extra['tastyigniter-extension']['code'])) { $parts = explode('.', $extra['tastyigniter-extension']['code']); $vars['vendor'] = (string)$parts[0]; $vars['name'] = (string)($parts[1] ?? ''); } $vars['vendor'] = $this->pregReplace('/[^a-z0-9_]/i', '', $vars['vendor']); $vars['name'] = $this->pregReplace('/^ti-ext-/', '', $vars['name']); return $vars; } /** * @param array<string, string> $vars * @param array<string, mixed> $extra * @return array<string, string> */ protected function inflectThemeVars(array $vars, array $extra): array { if (!empty($extra['tastyigniter-theme']['code'])) { $vars['name'] = $extra['tastyigniter-theme']['code']; } $vars['name'] = $this->pregReplace('/^ti-theme-/', '', $vars['name']); return $vars; } }