Upgrade to Laravel 9 (#4413)

Co-authored-by: DaneEveritt <dane@daneeveritt.com>
This commit is contained in:
Matthew Penner 2022-10-14 10:59:20 -06:00 committed by GitHub
parent 95e15d2c8a
commit cbcf62086f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
573 changed files with 4387 additions and 9411 deletions

View file

@ -4,7 +4,9 @@ namespace Pterodactyl\Transformers\Api\Application;
use Pterodactyl\Models\Node;
use Pterodactyl\Models\Server;
use League\Fractal\Resource\Item;
use Pterodactyl\Models\Allocation;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
class AllocationTransformer extends BaseTransformer
@ -24,10 +26,8 @@ class AllocationTransformer extends BaseTransformer
/**
* Return a generic transformed allocation array.
*
* @return array
*/
public function transform(Allocation $allocation)
public function transform(Allocation $allocation): array
{
return [
'id' => $allocation->id,
@ -42,11 +42,9 @@ class AllocationTransformer extends BaseTransformer
/**
* Load the node relationship onto a given transformation.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeNode(Allocation $allocation)
public function includeNode(Allocation $allocation): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_NODES)) {
return $this->null();
@ -62,11 +60,9 @@ class AllocationTransformer extends BaseTransformer
/**
* Load the server relationship onto a given transformation.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeServer(Allocation $allocation)
public function includeServer(Allocation $allocation): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_SERVERS) || !$allocation->server) {
return $this->null();

View file

@ -3,6 +3,7 @@
namespace Pterodactyl\Transformers\Api\Application;
use Carbon\CarbonImmutable;
use Carbon\CarbonInterface;
use Illuminate\Http\Request;
use Webmozart\Assert\Assert;
use Pterodactyl\Models\ApiKey;
@ -38,8 +39,6 @@ abstract class BaseTransformer extends TransformerAbstract
/**
* Sets the request on the instance.
*
* @return static
*/
public function setRequest(Request $request): self
{
@ -50,10 +49,8 @@ abstract class BaseTransformer extends TransformerAbstract
/**
* Returns a new transformer instance with the request set on the instance.
*
* @return \Pterodactyl\Transformers\Api\Application\BaseTransformer
*/
public static function fromRequest(Request $request)
public static function fromRequest(Request $request): BaseTransformer
{
return app(static::class)->setRequest($request);
}
@ -81,7 +78,7 @@ abstract class BaseTransformer extends TransformerAbstract
return $this->request->user()->root_admin;
}
return AdminAcl::check($token, $resource, AdminAcl::READ);
return AdminAcl::check($token, $resource);
}
/**
@ -96,7 +93,6 @@ abstract class BaseTransformer extends TransformerAbstract
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*
* @noinspection PhpUndefinedClassInspection
* @noinspection PhpDocSignatureInspection
*/
protected function makeTransformer(string $abstract)
@ -111,8 +107,8 @@ abstract class BaseTransformer extends TransformerAbstract
*/
protected function formatTimestamp(string $timestamp): string
{
return CarbonImmutable::createFromFormat(CarbonImmutable::DEFAULT_TO_STRING_FORMAT, $timestamp)
return CarbonImmutable::createFromFormat(CarbonInterface::DEFAULT_TO_STRING_FORMAT, $timestamp)
->setTimezone(self::RESPONSE_TIMEZONE)
->toIso8601String();
->toAtomString();
}
}

View file

@ -4,6 +4,8 @@ namespace Pterodactyl\Transformers\Api\Application;
use Pterodactyl\Models\Database;
use Pterodactyl\Models\DatabaseHost;
use League\Fractal\Resource\Collection;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
class DatabaseHostTransformer extends BaseTransformer
@ -22,10 +24,8 @@ class DatabaseHostTransformer extends BaseTransformer
/**
* Transform database host into a representation for the application API.
*
* @return array
*/
public function transform(DatabaseHost $model)
public function transform(DatabaseHost $model): array
{
return [
'id' => $model->id,
@ -34,19 +34,17 @@ class DatabaseHostTransformer extends BaseTransformer
'port' => $model->port,
'username' => $model->username,
'node' => $model->node_id,
'created_at' => $model->created_at->toIso8601String(),
'updated_at' => $model->updated_at->toIso8601String(),
'created_at' => $model->created_at->toAtomString(),
'updated_at' => $model->updated_at->toAtomString(),
];
}
/**
* Include the databases associated with this host.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeDatabases(DatabaseHost $model)
public function includeDatabases(DatabaseHost $model): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_SERVER_DATABASES)) {
return $this->null();

View file

@ -6,7 +6,10 @@ use Illuminate\Support\Arr;
use Pterodactyl\Models\Egg;
use Pterodactyl\Models\Nest;
use Pterodactyl\Models\Server;
use League\Fractal\Resource\Item;
use Pterodactyl\Models\EggVariable;
use League\Fractal\Resource\Collection;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
class EggTransformer extends BaseTransformer
@ -34,9 +37,9 @@ class EggTransformer extends BaseTransformer
* Transform an Egg model into a representation that can be consumed by
* the application api.
*
* @return array
* @throws \JsonException
*/
public function transform(Egg $model)
public function transform(Egg $model): array
{
$files = json_decode($model->config_files, true, 512, JSON_THROW_ON_ERROR);
if (empty($files)) {
@ -79,11 +82,9 @@ class EggTransformer extends BaseTransformer
/**
* Include the Nest relationship for the given Egg in the transformation.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeNest(Egg $model)
public function includeNest(Egg $model): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_NESTS)) {
return $this->null();
@ -97,11 +98,9 @@ class EggTransformer extends BaseTransformer
/**
* Include the Servers relationship for the given Egg in the transformation.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeServers(Egg $model)
public function includeServers(Egg $model): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_SERVERS)) {
return $this->null();
@ -115,10 +114,8 @@ class EggTransformer extends BaseTransformer
/**
* Include more detailed information about the configuration if this Egg is
* extending another.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*/
public function includeConfig(Egg $model)
public function includeConfig(Egg $model): Item|NullResource
{
if (is_null($model->config_from)) {
return $this->null();
@ -139,10 +136,8 @@ class EggTransformer extends BaseTransformer
/**
* Include more detailed information about the script configuration if the
* Egg is extending another.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*/
public function includeScript(Egg $model)
public function includeScript(Egg $model): Item|NullResource
{
if (is_null($model->copy_script_from)) {
return $this->null();
@ -163,11 +158,9 @@ class EggTransformer extends BaseTransformer
/**
* Include the variables that are defined for this Egg.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeVariables(Egg $model)
public function includeVariables(Egg $model): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_EGGS)) {
return $this->null();

View file

@ -3,6 +3,8 @@
namespace Pterodactyl\Transformers\Api\Application;
use Pterodactyl\Models\Location;
use League\Fractal\Resource\Collection;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
class LocationTransformer extends BaseTransformer
@ -37,11 +39,9 @@ class LocationTransformer extends BaseTransformer
/**
* Return the nodes associated with this location.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeServers(Location $location)
public function includeServers(Location $location): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_SERVERS)) {
return $this->null();
@ -55,11 +55,9 @@ class LocationTransformer extends BaseTransformer
/**
* Return the nodes associated with this location.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeNodes(Location $location)
public function includeNodes(Location $location): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_NODES)) {
return $this->null();

View file

@ -5,6 +5,8 @@ namespace Pterodactyl\Transformers\Api\Application;
use Pterodactyl\Models\Egg;
use Pterodactyl\Models\Nest;
use Pterodactyl\Models\Server;
use League\Fractal\Resource\Collection;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
class NestTransformer extends BaseTransformer
@ -27,10 +29,8 @@ class NestTransformer extends BaseTransformer
/**
* Transform a Nest model into a representation that can be consumed by the
* application API.
*
* @return array
*/
public function transform(Nest $model)
public function transform(Nest $model): array
{
$response = $model->toArray();
@ -43,11 +43,9 @@ class NestTransformer extends BaseTransformer
/**
* Include the Eggs relationship on the given Nest model transformation.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeEggs(Nest $model)
public function includeEggs(Nest $model): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_EGGS)) {
return $this->null();
@ -61,11 +59,9 @@ class NestTransformer extends BaseTransformer
/**
* Include the servers relationship on the given Nest model.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeServers(Nest $model)
public function includeServers(Nest $model): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_SERVERS)) {
return $this->null();

View file

@ -3,6 +3,9 @@
namespace Pterodactyl\Transformers\Api\Application;
use Pterodactyl\Models\Node;
use League\Fractal\Resource\Item;
use League\Fractal\Resource\Collection;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
class NodeTransformer extends BaseTransformer
@ -50,11 +53,9 @@ class NodeTransformer extends BaseTransformer
/**
* Return the nodes associated with this location.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeAllocations(Node $node)
public function includeAllocations(Node $node): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_ALLOCATIONS)) {
return $this->null();
@ -72,11 +73,9 @@ class NodeTransformer extends BaseTransformer
/**
* Return the nodes associated with this location.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeLocation(Node $node)
public function includeLocation(Node $node): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_LOCATIONS)) {
return $this->null();
@ -94,11 +93,9 @@ class NodeTransformer extends BaseTransformer
/**
* Return the nodes associated with this location.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeServers(Node $node)
public function includeServers(Node $node): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_SERVERS)) {
return $this->null();

View file

@ -3,7 +3,9 @@
namespace Pterodactyl\Transformers\Api\Application;
use Pterodactyl\Models\Database;
use League\Fractal\Resource\Item;
use Pterodactyl\Models\DatabaseHost;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
use Illuminate\Contracts\Encryption\Encrypter;
@ -11,10 +13,7 @@ class ServerDatabaseTransformer extends BaseTransformer
{
protected array $availableIncludes = ['password', 'host'];
/**
* @var Encrypter
*/
private $encrypter;
private Encrypter $encrypter;
/**
* Perform dependency injection.
@ -45,17 +44,15 @@ class ServerDatabaseTransformer extends BaseTransformer
'username' => $model->username,
'remote' => $model->remote,
'max_connections' => $model->max_connections,
'created_at' => $model->created_at->toIso8601String(),
'updated_at' => $model->updated_at->toIso8601String(),
'created_at' => $model->created_at->toAtomString(),
'updated_at' => $model->updated_at->toAtomString(),
];
}
/**
* Include the database password in the request.
*
* @return \League\Fractal\Resource\Item
*/
public function includePassword(Database $model)
public function includePassword(Database $model): Item
{
return $this->item($model, function (Database $model) {
return [
@ -67,11 +64,9 @@ class ServerDatabaseTransformer extends BaseTransformer
/**
* Return the database host relationship for this server database.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeHost(Database $model)
public function includeHost(Database $model): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_DATABASE_HOSTS)) {
return $this->null();

View file

@ -3,15 +3,15 @@
namespace Pterodactyl\Transformers\Api\Application;
use Pterodactyl\Models\Server;
use League\Fractal\Resource\Item;
use League\Fractal\Resource\Collection;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
use Pterodactyl\Services\Servers\EnvironmentService;
class ServerTransformer extends BaseTransformer
{
/**
* @var \Pterodactyl\Services\Servers\EnvironmentService
*/
private $environmentService;
private EnvironmentService $environmentService;
/**
* List of resources that can be included.
@ -94,11 +94,9 @@ class ServerTransformer extends BaseTransformer
/**
* Return a generic array of allocations for this server.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeAllocations(Server $server)
public function includeAllocations(Server $server): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_ALLOCATIONS)) {
return $this->null();
@ -112,11 +110,9 @@ class ServerTransformer extends BaseTransformer
/**
* Return a generic array of data about subusers for this server.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeSubusers(Server $server)
public function includeSubusers(Server $server): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_USERS)) {
return $this->null();
@ -130,11 +126,9 @@ class ServerTransformer extends BaseTransformer
/**
* Return a generic array of data about subusers for this server.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeUser(Server $server)
public function includeUser(Server $server): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_USERS)) {
return $this->null();
@ -148,11 +142,9 @@ class ServerTransformer extends BaseTransformer
/**
* Return a generic array with nest information for this server.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeNest(Server $server)
public function includeNest(Server $server): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_NESTS)) {
return $this->null();
@ -166,11 +158,9 @@ class ServerTransformer extends BaseTransformer
/**
* Return a generic array with egg information for this server.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeEgg(Server $server)
public function includeEgg(Server $server): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_EGGS)) {
return $this->null();
@ -184,11 +174,9 @@ class ServerTransformer extends BaseTransformer
/**
* Return a generic array of data about subusers for this server.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeVariables(Server $server)
public function includeVariables(Server $server): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_SERVERS)) {
return $this->null();
@ -202,11 +190,9 @@ class ServerTransformer extends BaseTransformer
/**
* Return a generic array with location information for this server.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeLocation(Server $server)
public function includeLocation(Server $server): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_LOCATIONS)) {
return $this->null();
@ -220,11 +206,9 @@ class ServerTransformer extends BaseTransformer
/**
* Return a generic array with node information for this server.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeNode(Server $server)
public function includeNode(Server $server): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_NODES)) {
return $this->null();
@ -238,11 +222,9 @@ class ServerTransformer extends BaseTransformer
/**
* Return a generic array with database information for this server.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeDatabases(Server $server)
public function includeDatabases(Server $server): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_SERVER_DATABASES)) {
return $this->null();

View file

@ -2,7 +2,9 @@
namespace Pterodactyl\Transformers\Api\Application;
use League\Fractal\Resource\Item;
use Pterodactyl\Models\EggVariable;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
class ServerVariableTransformer extends BaseTransformer
@ -22,10 +24,8 @@ class ServerVariableTransformer extends BaseTransformer
/**
* Return a generic transformed server variable array.
*
* @return array
*/
public function transform(EggVariable $variable)
public function transform(EggVariable $variable): array
{
return $variable->toArray();
}
@ -33,11 +33,9 @@ class ServerVariableTransformer extends BaseTransformer
/**
* Return the parent service variable data.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeParent(EggVariable $variable)
public function includeParent(EggVariable $variable): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_EGGS)) {
return $this->null();

View file

@ -3,6 +3,8 @@
namespace Pterodactyl\Transformers\Api\Application;
use Pterodactyl\Models\Subuser;
use League\Fractal\Resource\Item;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
class SubuserTransformer extends BaseTransformer
@ -38,11 +40,9 @@ class SubuserTransformer extends BaseTransformer
/**
* Return a generic item of user for this subuser.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeUser(Subuser $subuser)
public function includeUser(Subuser $subuser): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_USERS)) {
return $this->null();
@ -56,11 +56,9 @@ class SubuserTransformer extends BaseTransformer
/**
* Return a generic item of server for this subuser.
*
* @return \League\Fractal\Resource\Item|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeServer(Subuser $subuser)
public function includeServer(Subuser $subuser): Item|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_SERVERS)) {
return $this->null();

View file

@ -3,6 +3,8 @@
namespace Pterodactyl\Transformers\Api\Application;
use Pterodactyl\Models\User;
use League\Fractal\Resource\Collection;
use League\Fractal\Resource\NullResource;
use Pterodactyl\Services\Acl\Api\AdminAcl;
class UserTransformer extends BaseTransformer
@ -44,11 +46,9 @@ class UserTransformer extends BaseTransformer
/**
* Return the servers associated with this user.
*
* @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\NullResource
*
* @throws \Pterodactyl\Exceptions\Transformer\InvalidTransformerLevelException
*/
public function includeServers(User $user)
public function includeServers(User $user): Collection|NullResource
{
if (!$this->authorize(AdminAcl::RESOURCE_SERVERS)) {
return $this->null();