From 083e3dc62ae86f86beb5a21d783e603140af85e8 Mon Sep 17 00:00:00 2001 From: Boy132 Date: Tue, 22 Jul 2025 15:45:29 +0200 Subject: [PATCH 1/4] Update contributing guide (#1548) --- contributing.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/contributing.md b/contributing.md index 5c9ee66c8..70cc654c7 100644 --- a/contributing.md +++ b/contributing.md @@ -23,11 +23,11 @@ To start contributing to Pelican Panel, you need to have a basic understanding o As IDE we recommend [Visual Studio](https://visualstudio.microsoft.com)/ [Visual Studio Code](https://code.visualstudio.com) (free) or [PhpStorm](https://www.jetbrains.com/phpstorm) (paid). To easily install PHP and the Webserver we recommend Laravel Herd. ([Windows](https://herd.laravel.com/windows) & [macOS](https://herd.laravel.com)) -The (paid) Pro version of Laravel Herd also offers easy MySQL and Redis hosting, but it is not needed. +The (paid) Pro version of Laravel Herd also offers easy MySQL and Redis hosting, but the free version is fine for most cases. ## Coding Standards -We use PHPStan/ [Larastan](https://github.com/larastan/larastan) and PHP-CS-Fixer/ [Pint](https://laravel.com/docs/11.x/pint) to enforce certain code styles and standards. +We use PHPStan/ [Larastan](https://github.com/larastan/larastan) and PHP-CS-Fixer/ [Pint](https://laravel.com/docs/12.x/pint) to enforce certain code styles and standards. You can run PHPStan via `\vendor\bin\phpstan analyse` and Pint via `\vendor\bin\pint`. ## Making Contributions @@ -37,7 +37,10 @@ When you are ready, you can submit a pull request to the Pelican repository. If Also, please make sure that your pull requests are as targeted and simple as possible and don't do a hundred things at a time. If you want to add/ change/ fix 5 different things you should make 5 different pull requests. -*Note: For now we only accept pull requests that handle existing issues!* +### Translations + +If you add any new translation strings make sure to only add them to english. +Other languages are translated via [Crowdin](https://crowdin.com/project/pelican-dev). ## Code Review Process @@ -51,4 +54,4 @@ Depending on the pull request size this process can take multiple days. * Help: [Discord](https://discord.gg/pelican-panel) * Bugs: [GitHub Issues](https://github.com/pelican-dev/panel/issues) * Features: [GitHub Discussions](https://github.com/pelican-dev/panel/discussions) -* Security vulnerabilities: See our [security policy](./security.md). +* Security vulnerabilities: See our [security policy](./security.md). From d0d3418e03d8eec6e435186d703991a0b88b20a9 Mon Sep 17 00:00:00 2001 From: Charles Date: Tue, 22 Jul 2025 12:31:23 -0400 Subject: [PATCH 2/4] Move header actions to iconbuttons (#1541) --- .../Pages/ListAllocations.php | 5 ++++- .../BackupResource/Pages/ListBackups.php | 4 +++- .../DatabaseResource/Pages/ListDatabases.php | 5 ++++- .../FileResource/Pages/ListFiles.php | 22 +++++++++++++------ .../ScheduleResource/Pages/EditSchedule.php | 19 +++++++++++++--- .../ScheduleResource/Pages/ListSchedules.php | 10 +++++++-- .../ScheduleResource/Pages/ViewSchedule.php | 6 ++++- .../UserResource/Pages/ListUsers.php | 5 ++++- 8 files changed, 59 insertions(+), 17 deletions(-) diff --git a/app/Filament/Server/Resources/AllocationResource/Pages/ListAllocations.php b/app/Filament/Server/Resources/AllocationResource/Pages/ListAllocations.php index 5d1e14155..266c6bb7b 100644 --- a/app/Filament/Server/Resources/AllocationResource/Pages/ListAllocations.php +++ b/app/Filament/Server/Resources/AllocationResource/Pages/ListAllocations.php @@ -13,6 +13,7 @@ use Filament\Actions\Action; use Filament\Actions\ActionGroup; use Filament\Facades\Filament; use Filament\Resources\Pages\ListRecords; +use Filament\Support\Enums\IconSize; class ListAllocations extends ListRecords { @@ -29,8 +30,10 @@ class ListAllocations extends ListRecords return [ Action::make('addAllocation') + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->icon(fn () => $server->allocations()->count() >= $server->allocation_limit ? 'tabler-network-off' : 'tabler-network') ->authorize(fn () => auth()->user()->can(Permission::ACTION_ALLOCATION_CREATE, $server)) - ->label(fn () => $server->allocations()->count() >= $server->allocation_limit ? 'Allocation limit reached' : 'Add Allocation') + ->tooltip(fn () => $server->allocations()->count() >= $server->allocation_limit ? 'Allocation limit reached' : 'Add Allocation') ->hidden(fn () => !config('panel.client_features.allocations.enabled')) ->disabled(fn () => $server->allocations()->count() >= $server->allocation_limit) ->color(fn () => $server->allocations()->count() >= $server->allocation_limit ? 'danger' : 'primary') diff --git a/app/Filament/Server/Resources/BackupResource/Pages/ListBackups.php b/app/Filament/Server/Resources/BackupResource/Pages/ListBackups.php index 59ff3b594..4d73e6b3d 100644 --- a/app/Filament/Server/Resources/BackupResource/Pages/ListBackups.php +++ b/app/Filament/Server/Resources/BackupResource/Pages/ListBackups.php @@ -15,6 +15,7 @@ use Filament\Actions\CreateAction; use Filament\Facades\Filament; use Filament\Notifications\Notification; use Filament\Resources\Pages\ListRecords; +use Filament\Support\Enums\IconSize; use Symfony\Component\HttpKernel\Exception\HttpException; class ListBackups extends ListRecords @@ -33,8 +34,9 @@ class ListBackups extends ListRecords return [ CreateAction::make() ->authorize(fn () => auth()->user()->can(Permission::ACTION_BACKUP_CREATE, $server)) - ->label(fn () => $server->backups()->count() >= $server->backup_limit ? 'Backup limit reached' : 'Create Backup') + ->icon('tabler-file-zip')->iconButton()->iconSize(IconSize::Large) ->disabled(fn () => $server->backups()->count() >= $server->backup_limit) + ->tooltip(fn () => $server->backups()->count() >= $server->backup_limit ? 'Backup Limit Reached' : 'Create Backup') // Disabled Buttons have no tooltips in v3 :/ ->color(fn () => $server->backups()->count() >= $server->backup_limit ? 'danger' : 'primary') ->createAnother(false) ->action(function (InitiateBackupService $initiateBackupService, $data) use ($server) { diff --git a/app/Filament/Server/Resources/DatabaseResource/Pages/ListDatabases.php b/app/Filament/Server/Resources/DatabaseResource/Pages/ListDatabases.php index 8e66174aa..167e745ef 100644 --- a/app/Filament/Server/Resources/DatabaseResource/Pages/ListDatabases.php +++ b/app/Filament/Server/Resources/DatabaseResource/Pages/ListDatabases.php @@ -16,6 +16,7 @@ use Filament\Forms\Components\Grid; use Filament\Forms\Components\Select; use Filament\Forms\Components\TextInput; use Filament\Resources\Pages\ListRecords; +use Filament\Support\Enums\IconSize; class ListDatabases extends ListRecords { @@ -32,7 +33,9 @@ class ListDatabases extends ListRecords return [ CreateAction::make('new') - ->label(fn () => $server->databases()->count() >= $server->database_limit ? 'Database limit reached' : 'Create Database') + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->icon(fn () => $server->databases()->count() >= $server->database_limit ? 'tabler-database-x' : 'tabler-database-plus') + ->tooltip(fn () => $server->databases()->count() >= $server->database_limit ? 'Database limit reached' : 'Create Database') ->disabled(fn () => $server->databases()->count() >= $server->database_limit) ->color(fn () => $server->databases()->count() >= $server->database_limit ? 'danger' : 'primary') ->createAnother(false) diff --git a/app/Filament/Server/Resources/FileResource/Pages/ListFiles.php b/app/Filament/Server/Resources/FileResource/Pages/ListFiles.php index 9fa1de342..d2473b235 100644 --- a/app/Filament/Server/Resources/FileResource/Pages/ListFiles.php +++ b/app/Filament/Server/Resources/FileResource/Pages/ListFiles.php @@ -31,6 +31,7 @@ use Filament\Notifications\Notification; use Filament\Panel; use Filament\Resources\Pages\ListRecords; use Filament\Resources\Pages\PageRegistration; +use Filament\Support\Enums\IconSize; use Filament\Tables\Actions\Action; use Filament\Tables\Actions\ActionGroup; use Filament\Tables\Actions\BulkAction; @@ -416,9 +417,9 @@ class ListFiles extends ListRecords return [ HeaderAction::make('new_file') ->authorize(fn () => auth()->user()->can(Permission::ACTION_FILE_CREATE, $server)) - ->label('New File') - ->color('gray') - ->keyBindings('') + ->tooltip('New File') + ->hiddenLabel()->icon('tabler-file-plus')->iconButton()->iconSize(IconSize::Large) + ->color('primary') ->modalSubmitActionLabel('Create') ->action(function ($data) { $path = join_paths($this->path, $data['name']); @@ -458,8 +459,9 @@ class ListFiles extends ListRecords ]), HeaderAction::make('new_folder') ->authorize(fn () => auth()->user()->can(Permission::ACTION_FILE_CREATE, $server)) - ->label('New Folder') - ->color('gray') + ->hiddenLabel()->icon('tabler-folder-plus')->iconButton()->iconSize(IconSize::Large) + ->tooltip('New Folder') + ->color('primary') ->action(function ($data) { try { $this->getDaemonFileRepository()->createDirectory($data['name'], $this->path); @@ -485,7 +487,9 @@ class ListFiles extends ListRecords ]), HeaderAction::make('upload') ->authorize(fn () => auth()->user()->can(Permission::ACTION_FILE_CREATE, $server)) - ->label('Upload') + ->hiddenLabel()->icon('tabler-upload')->iconButton()->iconSize(IconSize::Large) + ->tooltip('Upload') + ->color('success') ->action(function ($data) { if (count($data['files']) > 0 && !isset($data['url'])) { /** @var UploadedFile $file */ @@ -534,7 +538,11 @@ class ListFiles extends ListRecords ]), HeaderAction::make('search') ->authorize(fn () => auth()->user()->can(Permission::ACTION_FILE_READ, $server)) - ->label('Global Search') + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->tooltip('Global Search') + ->color('primary') + ->icon('tabler-world-search') + ->modalHeading('Global Search') ->modalSubmitActionLabel('Search') ->form([ TextInput::make('searchTerm') diff --git a/app/Filament/Server/Resources/ScheduleResource/Pages/EditSchedule.php b/app/Filament/Server/Resources/ScheduleResource/Pages/EditSchedule.php index 38cad99df..91e4b651e 100644 --- a/app/Filament/Server/Resources/ScheduleResource/Pages/EditSchedule.php +++ b/app/Filament/Server/Resources/ScheduleResource/Pages/EditSchedule.php @@ -10,6 +10,7 @@ use App\Traits\Filament\CanCustomizeHeaderActions; use App\Traits\Filament\CanCustomizeHeaderWidgets; use Filament\Actions; use Filament\Resources\Pages\EditRecord; +use Filament\Support\Enums\IconSize; class EditSchedule extends EditRecord { @@ -46,14 +47,26 @@ class EditSchedule extends EditRecord { return [ Actions\DeleteAction::make() + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->icon('tabler-trash') + ->tooltip('Delete Schedule') ->after(function ($record) { Activity::event('server:schedule.delete') ->property('name', $record->name) ->log(); }), - ExportScheduleAction::make(), - $this->getSaveFormAction()->formId('form')->label('Save'), - $this->getCancelFormAction()->formId('form'), + ExportScheduleAction::make() + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->icon('tabler-download') + ->tooltip('Export Schedule'), + $this->getSaveFormAction()->formId('form') + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->icon('tabler-device-floppy') + ->tooltip('Save Schedule'), + $this->getCancelFormAction()->formId('form') + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->icon('tabler-cancel') + ->tooltip('Cancel'), ]; } diff --git a/app/Filament/Server/Resources/ScheduleResource/Pages/ListSchedules.php b/app/Filament/Server/Resources/ScheduleResource/Pages/ListSchedules.php index 512aeecc3..eb83ca79a 100644 --- a/app/Filament/Server/Resources/ScheduleResource/Pages/ListSchedules.php +++ b/app/Filament/Server/Resources/ScheduleResource/Pages/ListSchedules.php @@ -10,6 +10,7 @@ use Filament\Actions\Action; use Filament\Actions\ActionGroup; use Filament\Actions\CreateAction; use Filament\Resources\Pages\ListRecords; +use Filament\Support\Enums\IconSize; class ListSchedules extends ListRecords { @@ -23,8 +24,13 @@ class ListSchedules extends ListRecords { return [ CreateAction::make() - ->label('New Schedule'), - ImportScheduleAction::make(), + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->icon('tabler-calendar-plus') + ->tooltip('New Schedule'), + ImportScheduleAction::make() + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->icon('tabler-download') + ->tooltip('Import Schedule'), ]; } diff --git a/app/Filament/Server/Resources/ScheduleResource/Pages/ViewSchedule.php b/app/Filament/Server/Resources/ScheduleResource/Pages/ViewSchedule.php index 5147799e8..d89d2af02 100644 --- a/app/Filament/Server/Resources/ScheduleResource/Pages/ViewSchedule.php +++ b/app/Filament/Server/Resources/ScheduleResource/Pages/ViewSchedule.php @@ -14,6 +14,7 @@ use Filament\Actions\ActionGroup; use Filament\Actions\EditAction; use Filament\Facades\Filament; use Filament\Resources\Pages\ViewRecord; +use Filament\Support\Enums\IconSize; class ViewSchedule extends ViewRecord { @@ -41,7 +42,10 @@ class ViewSchedule extends ViewRecord $this->fillForm(); }), - EditAction::make(), + EditAction::make() + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->icon('tabler-calendar-code') + ->tooltip('Edit Schedule'), ]; } diff --git a/app/Filament/Server/Resources/UserResource/Pages/ListUsers.php b/app/Filament/Server/Resources/UserResource/Pages/ListUsers.php index 0b2797154..10243d3f5 100644 --- a/app/Filament/Server/Resources/UserResource/Pages/ListUsers.php +++ b/app/Filament/Server/Resources/UserResource/Pages/ListUsers.php @@ -24,6 +24,7 @@ use Filament\Forms\Get; use Filament\Forms\Set; use Filament\Notifications\Notification; use Filament\Resources\Pages\ListRecords; +use Filament\Support\Enums\IconSize; class ListUsers extends ListRecords { @@ -69,7 +70,9 @@ class ListUsers extends ListRecords return [ Actions\CreateAction::make('invite') - ->label('Invite User') + ->hiddenLabel()->iconButton()->iconSize(IconSize::Large) + ->icon('tabler-user-plus') + ->tooltip('Invite User') ->createAnother(false) ->authorize(fn () => auth()->user()->can(Permission::ACTION_USER_CREATE, $server)) ->form([ From 20071a64faf33426881beb31e4af57597d69eed2 Mon Sep 17 00:00:00 2001 From: Lance Pioch Date: Tue, 22 Jul 2025 14:39:02 -0400 Subject: [PATCH 3/4] Laravel 12.21.0 Shift (#1551) Co-authored-by: Shift --- composer.json | 10 ++-- composer.lock | 158 +++++++++++++++++++++++++------------------------- 2 files changed, 84 insertions(+), 84 deletions(-) diff --git a/composer.json b/composer.json index 956c50e79..e4d53449e 100644 --- a/composer.json +++ b/composer.json @@ -10,14 +10,14 @@ "ext-pdo": "*", "ext-zip": "*", "abdelhamiderrahmouni/filament-monaco-editor": "^0.2.5", - "aws/aws-sdk-php": "^3.344", + "aws/aws-sdk-php": "^3.351", "calebporzio/sushi": "^2.5", "chillerlan/php-qrcode": "^5.0.2", "dedoc/scramble": "^0.12.10", "doctrine/dbal": "~3.6.0", "filament/filament": "^3.3", "guzzlehttp/guzzle": "^7.9", - "laravel/framework": "^12.20", + "laravel/framework": "^12.21", "laravel/helpers": "^1.7", "laravel/sanctum": "^4.1", "laravel/socialite": "^5.21", @@ -34,10 +34,10 @@ "socialiteproviders/authentik": "^5.2", "socialiteproviders/discord": "^4.2", "socialiteproviders/steam": "^4.3", - "spatie/laravel-data": "^4.15", + "spatie/laravel-data": "^4.17", "spatie/laravel-fractal": "^6.3", "spatie/laravel-health": "^1.34", - "spatie/laravel-permission": "^6.19", + "spatie/laravel-permission": "^6.20", "spatie/laravel-query-builder": "^6.3", "spatie/temporary-directory": "^2.3", "symfony/http-client": "^7.2", @@ -48,7 +48,7 @@ "webmozart/assert": "~1.11.0" }, "require-dev": { - "barryvdh/laravel-ide-helper": "^3.5", + "barryvdh/laravel-ide-helper": "^3.6", "fakerphp/faker": "^1.23.1", "larastan/larastan": "^3.4", "laravel/pail": "^1.2.2", diff --git a/composer.lock b/composer.lock index 34be85dd1..2f1dc9f2c 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "8fbfe45ff997bd502e0b8ea765c30192", + "content-hash": "c1c3e31cb57271e9ce2edcc715d16d4c", "packages": [ { "name": "abdelhamiderrahmouni/filament-monaco-editor", @@ -1020,16 +1020,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.351.1", + "version": "3.351.3", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "f3e20c8cdd2cc5827d77a0b3c0872fab89cdf805" + "reference": "7c58f4a8acd2230daad1ef23bceb9972e62bdf94" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/f3e20c8cdd2cc5827d77a0b3c0872fab89cdf805", - "reference": "f3e20c8cdd2cc5827d77a0b3c0872fab89cdf805", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/7c58f4a8acd2230daad1ef23bceb9972e62bdf94", + "reference": "7c58f4a8acd2230daad1ef23bceb9972e62bdf94", "shasum": "" }, "require": { @@ -1111,9 +1111,9 @@ "support": { "forum": "https://github.com/aws/aws-sdk-php/discussions", "issues": "https://github.com/aws/aws-sdk-php/issues", - "source": "https://github.com/aws/aws-sdk-php/tree/3.351.1" + "source": "https://github.com/aws/aws-sdk-php/tree/3.351.3" }, - "time": "2025-07-17T18:07:08+00:00" + "time": "2025-07-21T18:04:02+00:00" }, { "name": "blade-ui-kit/blade-heroicons", @@ -2558,7 +2558,7 @@ }, { "name": "filament/actions", - "version": "v3.3.32", + "version": "v3.3.33", "source": { "type": "git", "url": "https://github.com/filamentphp/actions.git", @@ -2611,16 +2611,16 @@ }, { "name": "filament/filament", - "version": "v3.3.32", + "version": "v3.3.33", "source": { "type": "git", "url": "https://github.com/filamentphp/panels.git", - "reference": "af470f710de176796a50b17433e1ef3a70676c88" + "reference": "8e6618036c9235d968740d43bb8afb58fe705e5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/filamentphp/panels/zipball/af470f710de176796a50b17433e1ef3a70676c88", - "reference": "af470f710de176796a50b17433e1ef3a70676c88", + "url": "https://api.github.com/repos/filamentphp/panels/zipball/8e6618036c9235d968740d43bb8afb58fe705e5b", + "reference": "8e6618036c9235d968740d43bb8afb58fe705e5b", "shasum": "" }, "require": { @@ -2672,20 +2672,20 @@ "issues": "https://github.com/filamentphp/filament/issues", "source": "https://github.com/filamentphp/filament" }, - "time": "2025-07-16T08:51:29+00:00" + "time": "2025-07-21T10:08:08+00:00" }, { "name": "filament/forms", - "version": "v3.3.32", + "version": "v3.3.33", "source": { "type": "git", "url": "https://github.com/filamentphp/forms.git", - "reference": "65f81769261ba56a9eafa563ecb25fdfdedb742c" + "reference": "72ec2ede65d8e9fa979a066bce78812458793dde" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/filamentphp/forms/zipball/65f81769261ba56a9eafa563ecb25fdfdedb742c", - "reference": "65f81769261ba56a9eafa563ecb25fdfdedb742c", + "url": "https://api.github.com/repos/filamentphp/forms/zipball/72ec2ede65d8e9fa979a066bce78812458793dde", + "reference": "72ec2ede65d8e9fa979a066bce78812458793dde", "shasum": "" }, "require": { @@ -2728,11 +2728,11 @@ "issues": "https://github.com/filamentphp/filament/issues", "source": "https://github.com/filamentphp/filament" }, - "time": "2025-07-16T08:51:37+00:00" + "time": "2025-07-21T10:07:59+00:00" }, { "name": "filament/infolists", - "version": "v3.3.32", + "version": "v3.3.33", "source": { "type": "git", "url": "https://github.com/filamentphp/infolists.git", @@ -2783,7 +2783,7 @@ }, { "name": "filament/notifications", - "version": "v3.3.32", + "version": "v3.3.33", "source": { "type": "git", "url": "https://github.com/filamentphp/notifications.git", @@ -2835,7 +2835,7 @@ }, { "name": "filament/support", - "version": "v3.3.32", + "version": "v3.3.33", "source": { "type": "git", "url": "https://github.com/filamentphp/support.git", @@ -2894,7 +2894,7 @@ }, { "name": "filament/tables", - "version": "v3.3.32", + "version": "v3.3.33", "source": { "type": "git", "url": "https://github.com/filamentphp/tables.git", @@ -2946,7 +2946,7 @@ }, { "name": "filament/widgets", - "version": "v3.3.32", + "version": "v3.3.33", "source": { "type": "git", "url": "https://github.com/filamentphp/widgets.git", @@ -3718,16 +3718,16 @@ }, { "name": "laravel/framework", - "version": "v12.20.0", + "version": "v12.21.0", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "1b9a00f8caf5503c92aa436279172beae1a484ff" + "reference": "ac8c4e73bf1b5387b709f7736d41427e6af1c93b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/1b9a00f8caf5503c92aa436279172beae1a484ff", - "reference": "1b9a00f8caf5503c92aa436279172beae1a484ff", + "url": "https://api.github.com/repos/laravel/framework/zipball/ac8c4e73bf1b5387b709f7736d41427e6af1c93b", + "reference": "ac8c4e73bf1b5387b709f7736d41427e6af1c93b", "shasum": "" }, "require": { @@ -3929,7 +3929,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2025-07-08T15:02:21+00:00" + "time": "2025-07-22T15:41:55+00:00" }, { "name": "laravel/helpers", @@ -4049,16 +4049,16 @@ }, { "name": "laravel/sanctum", - "version": "v4.1.2", + "version": "v4.2.0", "source": { "type": "git", "url": "https://github.com/laravel/sanctum.git", - "reference": "e4c09e69aecd5a383e0c1b85a6bb501c997d7491" + "reference": "fd6df4f79f48a72992e8d29a9c0ee25422a0d677" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/sanctum/zipball/e4c09e69aecd5a383e0c1b85a6bb501c997d7491", - "reference": "e4c09e69aecd5a383e0c1b85a6bb501c997d7491", + "url": "https://api.github.com/repos/laravel/sanctum/zipball/fd6df4f79f48a72992e8d29a9c0ee25422a0d677", + "reference": "fd6df4f79f48a72992e8d29a9c0ee25422a0d677", "shasum": "" }, "require": { @@ -4109,7 +4109,7 @@ "issues": "https://github.com/laravel/sanctum/issues", "source": "https://github.com/laravel/sanctum" }, - "time": "2025-07-01T15:49:32+00:00" + "time": "2025-07-09T19:45:24+00:00" }, { "name": "laravel/serializable-closure", @@ -4174,16 +4174,16 @@ }, { "name": "laravel/socialite", - "version": "v5.21.0", + "version": "v5.22.0", "source": { "type": "git", "url": "https://github.com/laravel/socialite.git", - "reference": "d83639499ad14985c9a6a9713b70073300ce998d" + "reference": "99d0fe750a7c68e5b60d8b1850de2554f3ea4072" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/socialite/zipball/d83639499ad14985c9a6a9713b70073300ce998d", - "reference": "d83639499ad14985c9a6a9713b70073300ce998d", + "url": "https://api.github.com/repos/laravel/socialite/zipball/99d0fe750a7c68e5b60d8b1850de2554f3ea4072", + "reference": "99d0fe750a7c68e5b60d8b1850de2554f3ea4072", "shasum": "" }, "require": { @@ -4242,7 +4242,7 @@ "issues": "https://github.com/laravel/socialite/issues", "source": "https://github.com/laravel/socialite" }, - "time": "2025-05-19T12:56:37+00:00" + "time": "2025-07-08T22:07:57+00:00" }, { "name": "laravel/tinker", @@ -4513,16 +4513,16 @@ }, { "name": "league/commonmark", - "version": "2.7.0", + "version": "2.7.1", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "6fbb36d44824ed4091adbcf4c7d4a3923cdb3405" + "reference": "10732241927d3971d28e7ea7b5712721fa2296ca" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/6fbb36d44824ed4091adbcf4c7d4a3923cdb3405", - "reference": "6fbb36d44824ed4091adbcf4c7d4a3923cdb3405", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/10732241927d3971d28e7ea7b5712721fa2296ca", + "reference": "10732241927d3971d28e7ea7b5712721fa2296ca", "shasum": "" }, "require": { @@ -4551,7 +4551,7 @@ "symfony/process": "^5.4 | ^6.0 | ^7.0", "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0 | ^7.0", "unleashedtech/php-coding-standard": "^3.1.1", - "vimeo/psalm": "^4.24.0 || ^5.0.0" + "vimeo/psalm": "^4.24.0 || ^5.0.0 || ^6.0.0" }, "suggest": { "symfony/yaml": "v2.3+ required if using the Front Matter extension" @@ -4616,7 +4616,7 @@ "type": "tidelift" } ], - "time": "2025-05-05T12:20:28+00:00" + "time": "2025-07-20T12:47:49+00:00" }, { "name": "league/config", @@ -7920,16 +7920,16 @@ }, { "name": "secondnetwork/blade-tabler-icons", - "version": "v3.34.0", + "version": "v3.34.1", "source": { "type": "git", "url": "https://github.com/secondnetwork/blade-tabler-icons.git", - "reference": "e48c0a5a53798d42c7beff760de8cbc7dbbccff4" + "reference": "7d0ccb01eb878cf5a5df306967b59242d3615811" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/secondnetwork/blade-tabler-icons/zipball/e48c0a5a53798d42c7beff760de8cbc7dbbccff4", - "reference": "e48c0a5a53798d42c7beff760de8cbc7dbbccff4", + "url": "https://api.github.com/repos/secondnetwork/blade-tabler-icons/zipball/7d0ccb01eb878cf5a5df306967b59242d3615811", + "reference": "7d0ccb01eb878cf5a5df306967b59242d3615811", "shasum": "" }, "require": { @@ -7972,9 +7972,9 @@ ], "support": { "issues": "https://github.com/secondnetwork/blade-tabler-icons/issues", - "source": "https://github.com/secondnetwork/blade-tabler-icons/tree/v3.34.0" + "source": "https://github.com/secondnetwork/blade-tabler-icons/tree/v3.34.1" }, - "time": "2025-06-09T08:41:55+00:00" + "time": "2025-07-22T15:28:08+00:00" }, { "name": "socialiteproviders/authentik", @@ -8623,16 +8623,16 @@ }, { "name": "spatie/laravel-health", - "version": "1.34.3", + "version": "1.34.4", "source": { "type": "git", "url": "https://github.com/spatie/laravel-health.git", - "reference": "d421bc223c7a8c872ad944706d98a74b1056f761" + "reference": "ac04fb0b82b4c89ab88c18897f9eda4e559d624b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/laravel-health/zipball/d421bc223c7a8c872ad944706d98a74b1056f761", - "reference": "d421bc223c7a8c872ad944706d98a74b1056f761", + "url": "https://api.github.com/repos/spatie/laravel-health/zipball/ac04fb0b82b4c89ab88c18897f9eda4e559d624b", + "reference": "ac04fb0b82b4c89ab88c18897f9eda4e559d624b", "shasum": "" }, "require": { @@ -8704,7 +8704,7 @@ "spatie" ], "support": { - "source": "https://github.com/spatie/laravel-health/tree/1.34.3" + "source": "https://github.com/spatie/laravel-health/tree/1.34.4" }, "funding": [ { @@ -8712,7 +8712,7 @@ "type": "github" } ], - "time": "2025-06-04T22:04:19+00:00" + "time": "2025-07-22T08:06:42+00:00" }, { "name": "spatie/laravel-package-tools", @@ -12152,20 +12152,20 @@ "packages-dev": [ { "name": "barryvdh/laravel-ide-helper", - "version": "v3.5.5", + "version": "v3.6.0", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-ide-helper.git", - "reference": "8d441ec99f8612b942b55f5183151d91591b618a" + "reference": "8d00250cba25728373e92c1d8dcebcbf64623d29" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/8d441ec99f8612b942b55f5183151d91591b618a", - "reference": "8d441ec99f8612b942b55f5183151d91591b618a", + "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/8d00250cba25728373e92c1d8dcebcbf64623d29", + "reference": "8d00250cba25728373e92c1d8dcebcbf64623d29", "shasum": "" }, "require": { - "barryvdh/reflection-docblock": "^2.3", + "barryvdh/reflection-docblock": "^2.4", "composer/class-map-generator": "^1.0", "ext-json": "*", "illuminate/console": "^11.15 || ^12", @@ -12230,7 +12230,7 @@ ], "support": { "issues": "https://github.com/barryvdh/laravel-ide-helper/issues", - "source": "https://github.com/barryvdh/laravel-ide-helper/tree/v3.5.5" + "source": "https://github.com/barryvdh/laravel-ide-helper/tree/v3.6.0" }, "funding": [ { @@ -12242,7 +12242,7 @@ "type": "github" } ], - "time": "2025-02-11T13:59:46+00:00" + "time": "2025-07-17T20:11:57+00:00" }, { "name": "barryvdh/reflection-docblock", @@ -12890,16 +12890,16 @@ }, { "name": "larastan/larastan", - "version": "v3.5.0", + "version": "v3.6.0", "source": { "type": "git", "url": "https://github.com/larastan/larastan.git", - "reference": "e8ccd73008487ba91da9877b373f8c447743f1ce" + "reference": "6431d010dd383a9279eb8874a76ddb571738564a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/larastan/larastan/zipball/e8ccd73008487ba91da9877b373f8c447743f1ce", - "reference": "e8ccd73008487ba91da9877b373f8c447743f1ce", + "url": "https://api.github.com/repos/larastan/larastan/zipball/6431d010dd383a9279eb8874a76ddb571738564a", + "reference": "6431d010dd383a9279eb8874a76ddb571738564a", "shasum": "" }, "require": { @@ -12967,7 +12967,7 @@ ], "support": { "issues": "https://github.com/larastan/larastan/issues", - "source": "https://github.com/larastan/larastan/tree/v3.5.0" + "source": "https://github.com/larastan/larastan/tree/v3.6.0" }, "funding": [ { @@ -12975,7 +12975,7 @@ "type": "github" } ], - "time": "2025-06-19T22:41:50+00:00" + "time": "2025-07-11T06:52:52+00:00" }, { "name": "laravel/pail", @@ -13127,16 +13127,16 @@ }, { "name": "laravel/sail", - "version": "v1.43.1", + "version": "v1.44.0", "source": { "type": "git", "url": "https://github.com/laravel/sail.git", - "reference": "3e7d899232a8c5e3ea4fc6dee7525ad583887e72" + "reference": "a09097bd2a8a38e23ac472fa6a6cf5b0d1c1d3fe" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/sail/zipball/3e7d899232a8c5e3ea4fc6dee7525ad583887e72", - "reference": "3e7d899232a8c5e3ea4fc6dee7525ad583887e72", + "url": "https://api.github.com/repos/laravel/sail/zipball/a09097bd2a8a38e23ac472fa6a6cf5b0d1c1d3fe", + "reference": "a09097bd2a8a38e23ac472fa6a6cf5b0d1c1d3fe", "shasum": "" }, "require": { @@ -13186,7 +13186,7 @@ "issues": "https://github.com/laravel/sail/issues", "source": "https://github.com/laravel/sail" }, - "time": "2025-05-19T13:19:21+00:00" + "time": "2025-07-04T16:17:06+00:00" }, { "name": "mockery/mockery", @@ -13945,16 +13945,16 @@ }, { "name": "phpstan/phpstan", - "version": "2.1.18", + "version": "2.1.19", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "ee1f390b7a70cdf74a2b737e554f68afea885db7" + "reference": "473a8c30e450d87099f76313edcbb90852f9afdf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/ee1f390b7a70cdf74a2b737e554f68afea885db7", - "reference": "ee1f390b7a70cdf74a2b737e554f68afea885db7", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/473a8c30e450d87099f76313edcbb90852f9afdf", + "reference": "473a8c30e450d87099f76313edcbb90852f9afdf", "shasum": "" }, "require": { @@ -13999,7 +13999,7 @@ "type": "github" } ], - "time": "2025-07-17T17:22:31+00:00" + "time": "2025-07-21T19:58:24+00:00" }, { "name": "phpunit/php-code-coverage", From 88943563c7c15f13e689ca137c6d9dcda175baee Mon Sep 17 00:00:00 2001 From: Hasyirin Fakhriy Date: Wed, 23 Jul 2025 02:39:18 +0800 Subject: [PATCH 4/4] Add tags field to eggs transformer. (#1550) --- app/Transformers/Api/Application/EggTransformer.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/Transformers/Api/Application/EggTransformer.php b/app/Transformers/Api/Application/EggTransformer.php index a416ed026..87955c0a1 100644 --- a/app/Transformers/Api/Application/EggTransformer.php +++ b/app/Transformers/Api/Application/EggTransformer.php @@ -47,6 +47,7 @@ class EggTransformer extends BaseTransformer 'author' => $model->author, 'description' => $model->description, 'features' => $model->features, + 'tags' => $model->tags, // "docker_image" is deprecated, but left here to avoid breaking too many things at once // in external software. We'll remove it down the road once things have gotten the chance // to upgrade to using "docker_images".