*/ public function handle( Project $project, bool $canEditTickets, bool $canCreateTickets, ?string $status, ): array { return [ 'backlogTicketStatuses' => $project->ticketStatuses() ->whereNull('board_column_id') ->get(), 'canCreateTickets' => $canCreateTickets, 'canEditTickets' => $canEditTickets, 'project' => $project, 'status' => $status, 'ticketStatusOptions' => $project->ticketStatuses() ->with('boardColumn') ->get(), 'ticketPriorities' => $project->ticketPriorities()->get(), 'ticketTypes' => $project->ticketTypes()->get(), 'tickets' => Ticket::query() ->with([ 'ticketPriority', 'ticketStatus.allowedTargetStatuses.boardColumn', 'ticketStatus.boardColumn', 'ticketType', ]) ->where('project_id', $project->id) ->whereHas('ticketStatus', fn ($query) => $query->whereNull('board_column_id')) ->orderByDesc('sequence_number') ->get(), 'users' => User::query() ->orderBy('name') ->get(), ]; } }