<?php

namespace Modules\Auth\Actions\Fortify;

use Illuminate\Http\JsonResponse;
use Laravel\Fortify\Contracts\RegisterResponse as RegisterResponseContract;
use Modules\Auth\Services\AuthSessionService;

class RegisterResponse implements RegisterResponseContract
{
    public function __construct(
        protected AuthSessionService $authSession,
    ) {}

    public function toResponse($request): JsonResponse
    {
        return $this->authSession->createAuthResponse(
            $request->user(),
            'Pendaftaran berjaya. Akaun anda sedang menunggu pengaktifan daripada pentadbir sistem.',
            201
        );
    }
}
