From bd6263708ddab9e50770493ec688fc84ab1e1f2d Mon Sep 17 00:00:00 2001 From: Constantin Graf Date: Mon, 22 Apr 2024 11:55:28 +0200 Subject: [PATCH] Added filament lookup for extensions --- app/Providers/Filament/AdminPanelProvider.php | 25 +++++++++++++++++-- app/Providers/TelescopeServiceProvider.php | 2 +- config/logging.php | 11 ++++++++ 3 files changed, 35 insertions(+), 3 deletions(-) diff --git a/app/Providers/Filament/AdminPanelProvider.php b/app/Providers/Filament/AdminPanelProvider.php index 2fd6d226..d6b25610 100644 --- a/app/Providers/Filament/AdminPanelProvider.php +++ b/app/Providers/Filament/AdminPanelProvider.php @@ -21,14 +21,14 @@ use Illuminate\Session\Middleware\AuthenticateSession; use Illuminate\Session\Middleware\StartSession; use Illuminate\Support\Facades\App; use Illuminate\View\Middleware\ShareErrorsFromSession; +use Nwidart\Modules\Facades\Module; use pxlrbt\FilamentEnvironmentIndicator\EnvironmentIndicatorPlugin; class AdminPanelProvider extends PanelProvider { public function panel(Panel $panel): Panel { - return $panel - ->default() + $panel->default() ->id('admin') ->path('admin') ->colors([ @@ -72,5 +72,26 @@ class AdminPanelProvider extends PanelProvider ->authMiddleware([ Authenticate::class, ]); + + $modules = Module::allEnabled(); + + foreach ($modules as $module) { + $panel->discoverResources( + in: module_path($module->getName(), 'app/Filament/Resources'), + for: 'Extensions\\'.$module->getName().'\\App\\Filament\\Resources' + ); + + $panel->discoverPages( + in: module_path($module->getName(), 'app/Filament/Pages'), + for: 'Extensions\\'.$module->getName().'\\App\\Filament\\Pages' + ); + + $panel->discoverWidgets( + in: module_path($module->getName(), 'app/Filament/Widgets'), + for: 'Extensions\\'.$module->getName().'\\App\\Filament\\Widgets' + ); + } + + return $panel; } } diff --git a/app/Providers/TelescopeServiceProvider.php b/app/Providers/TelescopeServiceProvider.php index ded37e5c..62817a52 100644 --- a/app/Providers/TelescopeServiceProvider.php +++ b/app/Providers/TelescopeServiceProvider.php @@ -21,7 +21,7 @@ class TelescopeServiceProvider extends TelescopeApplicationServiceProvider $this->hideSensitiveRequestDetails(); - Telescope::filter(function (IncomingEntry $entry) { + Telescope::filter(function (IncomingEntry $entry): bool { if ($this->app->environment('local')) { return true; } diff --git a/config/logging.php b/config/logging.php index cd3851a0..7599b746 100644 --- a/config/logging.php +++ b/config/logging.php @@ -67,6 +67,11 @@ return [ 'replace_placeholders' => true, ], + 'stack_production' => [ + 'driver' => 'stack', + 'channels' => ['single', 'sentry'], + ], + 'daily' => [ 'driver' => 'daily', 'path' => storage_path('logs/laravel.log'), @@ -84,6 +89,12 @@ return [ 'replace_placeholders' => true, ], + 'sentry' => [ + 'driver' => 'sentry', + 'level' => env('LOG_LEVEL', 'error'), + 'bubble' => true, + ], + 'papertrail' => [ 'driver' => 'monolog', 'level' => env('LOG_LEVEL', 'debug'),