Implements spec `099-alerts-v1-teams-email`. - Monitoring navigation: Alerts as a cluster under Monitoring; default landing is Alert deliveries. - Tenant panel: Alerts points to `/admin/alerts` and the cluster navigation is hidden in tenant panel. - Guard compliance: removes direct `Gate::` usage from Alert resources so `NoAdHocFilamentAuthPatternsTest` passes. Verification: - Full suite: `1348 passed, 7 skipped` (EXIT=0). Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #121
28 lines
710 B
PHP
28 lines
710 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Filament\Clusters\Monitoring;
|
|
|
|
use BackedEnum;
|
|
use Filament\Clusters\Cluster;
|
|
use Filament\Facades\Filament;
|
|
use Filament\Pages\Enums\SubNavigationPosition;
|
|
use UnitEnum;
|
|
|
|
class AlertsCluster extends Cluster
|
|
{
|
|
protected static string|BackedEnum|null $navigationIcon = 'heroicon-o-bell-alert';
|
|
|
|
protected static string|UnitEnum|null $navigationGroup = 'Monitoring';
|
|
|
|
protected static ?int $navigationSort = 20;
|
|
|
|
protected static ?SubNavigationPosition $subNavigationPosition = SubNavigationPosition::Start;
|
|
|
|
public static function shouldRegisterNavigation(): bool
|
|
{
|
|
return Filament::getCurrentPanel()?->getId() === 'admin';
|
|
}
|
|
}
|