Tab::make('All Donors') ->icon('heroicon-o-users'), 'monthly' => Tab::make('Monthly Supporters') ->icon('heroicon-o-arrow-path') ->modifyQueryUsing(fn (Builder $query) => $query ->whereHas('scheduledGivingDonations', fn ($q) => $q->where('is_active', true)) ), 'major' => Tab::make('Major Donors') ->icon('heroicon-o-star') ->modifyQueryUsing(fn (Builder $query) => $query ->whereIn('id', function ($sub) { $sub->select('customer_id') ->from('donations') ->join('donation_confirmations', 'donations.id', '=', 'donation_confirmations.donation_id') ->whereNotNull('donation_confirmations.confirmed_at') ->groupBy('customer_id') ->havingRaw('SUM(donations.amount) >= 100000'); }) ), 'recent' => Tab::make('New (30 days)') ->icon('heroicon-o-sparkles') ->modifyQueryUsing(fn (Builder $query) => $query ->where('created_at', '>=', now()->subDays(30)) ), ]; } protected function getHeaderActions(): array { return []; } }