projects = Project::ownedByCurrentTeamCached() ->each(fn (Project $project) => $project->setRelation('environments', $project->environments ->filter(fn (Environment $environment) => auth()->user()->can('viewSharedVariables', $environment)) ->values())) ->filter(fn (Project $project) => $project->environments->isNotEmpty()) ->values(); } public function render() { return view('livewire.shared-variables.environment.index'); } }