<?php

namespace App\Http\Resources\Profiles;

use App\Http\Resources\AccountProfileResultWinnerResource;
use App\Http\Resources\Projects\ProjectResource;
use App\Http\Resources\User\UserResultJuryMemberResource;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;

class ProfileTeamDetailResourceCollection extends JsonResource
{
    private $userResultJuryMembers;
    private $userResultWinners;
    private $userProjects;

    public function __construct($data, $userResultJuryMembers = null, $userResultWinners = null, $userProjects = null)
    {
        parent::__construct($data);
        $this->userResultJuryMembers = $userResultJuryMembers;
        $this->userResultWinners = $userResultWinners;
        $this->userProjects = $userProjects;
    }

    public function toArray(Request $request): array
    {
        return [
            'data' => new ProfileTeamDetailResource($this->resource),
            'userResultJuryMembers' => UserResultJuryMemberResource::collection($this->userResultJuryMembers),
            'userResultWinners' => AccountProfileResultWinnerResource::collection($this->userResultWinners),
            'userProjects' => ProjectResource::collection($this->userProjects),
        ];
    }
}
