|
|
@@ -5,13 +5,14 @@
|
|
|
use App\DataTransferObjects\AuthDto;
|
|
|
use App\Http\Requests\AuthRequest;
|
|
|
use App\Http\Requests\RefreshTokenRequest;
|
|
|
-use Illuminate\Http\Request;
|
|
|
use Illuminate\Http\JsonResponse;
|
|
|
use App\Http\Resources\AuthResource;
|
|
|
use App\Services\AuthService;
|
|
|
use App\DataTransferObjects\RefreshTokenDto;
|
|
|
+use Illuminate\Http\Request;
|
|
|
|
|
|
class AuthController extends Controller
|
|
|
+
|
|
|
{
|
|
|
public function __construct(
|
|
|
protected AuthService $authService,
|
|
|
@@ -29,24 +30,18 @@ public function login(AuthRequest $request): JsonResponse
|
|
|
return $this->successResponse(payload: new AuthResource($tokens), message: __('auth.logged_in'));
|
|
|
}
|
|
|
|
|
|
- public function logout(Request $request): JsonResponse
|
|
|
+ public function logout(): JsonResponse
|
|
|
{
|
|
|
- $user = $request->user();
|
|
|
- if (!$user) {
|
|
|
- return $this->successResponse(message: __('auth.logout'));
|
|
|
- }
|
|
|
- $user()->tokens()->delete();
|
|
|
+ $this->authService->logout();
|
|
|
return $this->successResponse(message: __('auth.logout'));
|
|
|
}
|
|
|
|
|
|
public function refresh(RefreshTokenRequest $request): JsonResponse
|
|
|
{
|
|
|
-
|
|
|
$tokens = $this->authService->refresh(RefreshTokenDto::fromRequest($request));
|
|
|
if (is_null($tokens)) {
|
|
|
return $this->errorResponse(message: __('auth.unauthorized'), code: 403);
|
|
|
}
|
|
|
-
|
|
|
return $this->successResponse(payload: new AuthResource($tokens));
|
|
|
}
|
|
|
}
|