where("username", $request->username) ->orWhere("email", $request->username) ->first(); if (! $user || ! Hash::check($request->password, $user->password)) { throw ValidationException::withMessages([ 'username' => [__("auth.failed")], ]); } return $this->success([ 'data' => [ 'token' => $user->createToken('user')->plainTextToken, ] ]); } public function logout() { Auth::user()->currentAccessToken()->delete(); return $this->noContent(); } }