validated(); $user = $request->user(); $room = Room::query() ->where('join_code', $validated['join_code']) ->firstOrFail(); $player = $this->roomParticipation->joinEmbedded( $room, $user, $validated['player_name'], $request->session()->get("room_players.{$room->id}"), ); $request->session()->put("room_players.{$room->id}", $player->id); $pageData = $this->roomPage->prepare($room, $player, $user); return Inertia::render('embedded/Room', [ 'room' => (new RoomResource($pageData))->resolve($request), 'currentPlayer' => (new CurrentPlayerResource($pageData))->resolve($request), ]); } }