49 lines
1.3 KiB
PHP
49 lines
1.3 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App;
|
|
|
|
final class AppPaths
|
|
{
|
|
public static function customAppsRoot(string $projectRoot): string
|
|
{
|
|
return rtrim($projectRoot, '/') . '/custom/apps';
|
|
}
|
|
|
|
public static function customAppPath(string $projectRoot, string $appName): string
|
|
{
|
|
return self::customAppsRoot($projectRoot) . '/' . trim($appName, '/');
|
|
}
|
|
|
|
public static function systemAppsRoot(string $projectRoot): string
|
|
{
|
|
return rtrim($projectRoot, '/') . '/system/apps';
|
|
}
|
|
|
|
public static function systemAppPath(string $projectRoot, string $appName): string
|
|
{
|
|
return self::systemAppsRoot($projectRoot) . '/' . trim($appName, '/');
|
|
}
|
|
|
|
public static function systemShellRoot(string $projectRoot): string
|
|
{
|
|
return rtrim($projectRoot, '/') . '/system/shell';
|
|
}
|
|
|
|
public static function systemShellPath(string $projectRoot, string $shellName): string
|
|
{
|
|
return self::systemShellRoot($projectRoot) . '/' . trim($shellName, '/');
|
|
}
|
|
|
|
public static function systemAddonsRoot(string $projectRoot): string
|
|
{
|
|
return rtrim($projectRoot, '/') . '/system/addons';
|
|
}
|
|
|
|
public static function systemAddonPath(string $projectRoot, string $addonName): string
|
|
{
|
|
return self::systemAddonsRoot($projectRoot) . '/' . trim($addonName, '/');
|
|
}
|
|
}
|