validate([ 'email' => 'required|email', 'password' => 'required', ]); } catch (ValidationException $e) { return $this->fail($e->validator->errors()->first()); } /** @var User|null $user */ $user = User::query()->where('email', $request->email)->first(); if (! $user || ! Hash::check($request->password, $user->password)) { return $this->fail('The email address or password is incorrect.'); } $token = $user->createToken($user->email)->plainTextToken; return $this->success('success', compact('token')); } public function clear(): Response { /** @var User $user */ $user = Auth::user(); $user->tokens()->delete(); return $this->success(); } }