diff --git a/app/login/page.tsx b/app/login/page.tsx
index b29ed90..4be0708 100644
--- a/app/login/page.tsx
+++ b/app/login/page.tsx
@@ -1,10 +1,8 @@
// Caminho: app/login/page.tsx
-
"use client";
-
-import {usersService} from "@/services/usersApi.mjs";
+import { usersService } from "@/services/usersApi.mjs";
import { LoginForm } from "@/components/LoginForm";
import Link from "next/link";
import Image from "next/image";
@@ -14,70 +12,67 @@ import { ArrowLeft, X } from "lucide-react";
import { useState } from "react";
import RenderFromTemplateContext from "next/dist/client/components/render-from-template-context";
-
export default function LoginPage() {
const [isModalOpen, setIsModalOpen] = useState(false);
const [email, setEmail] = useState("");
const [isLoading, setIsLoading] = useState(false);
- const [message, setMessage] = useState<{ type: "success" | "error"; text: string } | null>(null);
-
+ const [message, setMessage] = useState<{
+ type: "success" | "error";
+ text: string;
+ } | null>(null);
const handleOpenModal = () => {
// Tenta pegar o email do input do formulário de login
- const emailInput = document.querySelector('input[type="email"]') as HTMLInputElement;
+ const emailInput = document.querySelector(
+ 'input[type="email"]'
+ ) as HTMLInputElement;
if (emailInput?.value) {
setEmail(emailInput.value);
}
setIsModalOpen(true);
};
-
const handleResetPassword = async () => {
- if (!email.trim()) {
- setMessage({ type: "error", text: "Por favor, insira um e-mail válido." });
- return;
- }
+ if (!email.trim()) {
+ setMessage({
+ type: "error",
+ text: "Por favor, insira um e-mail válido.",
+ });
+ return;
+ }
+ setIsLoading(true);
+ setMessage(null);
- setIsLoading(true);
- setMessage(null);
-
-
- try {
- // Chama o método que já faz o fetch corretamente
- const data = await usersService.resetPassword(email);
-
-
- console.log("Resposta resetPassword:", data);
-
-
- setMessage({
- type: "success",
- text: "E-mail de recuperação enviado! Verifique sua caixa de entrada.",
- });
-
-
- setTimeout(() => {
- setIsModalOpen(false);
- setMessage(null);
- setEmail("");
- }, 2000);
- } catch (error) {
- console.error("Erro no reset de senha:", error);
- setMessage({
- type: "error",
- text:
- error instanceof Error
- ? error.message
- : "Erro ao enviar e-mail. Tente novamente.",
- });
- } finally {
- setIsLoading(false);
- }
-};
+ try {
+ // Chama o método que já faz o fetch corretamente
+ const data = await usersService.resetPassword(email);
+ console.log("Resposta resetPassword:", data);
+ setMessage({
+ type: "success",
+ text: "E-mail de recuperação enviado! Verifique sua caixa de entrada.",
+ });
+ setTimeout(() => {
+ setIsModalOpen(false);
+ setMessage(null);
+ setEmail("");
+ }, 2000);
+ } catch (error) {
+ console.error("Erro no reset de senha:", error);
+ setMessage({
+ type: "error",
+ text:
+ error instanceof Error
+ ? error.message
+ : "Erro ao enviar e-mail. Tente novamente.",
+ });
+ } finally {
+ setIsLoading(false);
+ }
+ };
const closeModal = () => {
setIsModalOpen(false);
@@ -85,30 +80,46 @@ export default function LoginPage() {
setEmail("");
};
-
return (
<>
-
{/* PAINEL ESQUERDO: O Formulário */}
-
{/* Link para Voltar */}
-
+
Voltar à página inicial
-
{/* O contêiner principal que agora terá a sombra e o estilo de card */}
-
-
Acesse sua conta
-
Bem-vindo(a) de volta ao MedConnect!
+ {/* NOVO: Bloco da Logo e Nome (Painel Esquerdo) */}
+
+
+
+ MedConnect
+
+ {/* FIM: Bloco da Logo e Nome */}
+
+ {/* Título de boas-vindas movido para baixo da logo */}
+
+ Acesse sua conta
+
+
+ Bem-vindo(a) de volta ao MedConnect!
+
+
{/* Children para o LoginForm */}
@@ -122,9 +133,10 @@ export default function LoginPage() {
-
- Não tem uma conta de paciente?
+
+ Não tem uma conta de paciente?{" "}
+
Crie uma agora
@@ -141,7 +153,7 @@ export default function LoginPage() {
src="https://images.unsplash.com/photo-1576091160550-2173dba999ef?q=80&w=2070"
alt="Médica utilizando um tablet na clínica MedConnect"
fill
- style={{ objectFit: 'cover' }}
+ style={{ objectFit: "cover" }}
priority
/>
{/* Camada de sobreposição para escurecer a imagem e destacar o texto */}
@@ -156,15 +168,13 @@ export default function LoginPage() {
Tecnologia e Cuidado a Serviço da Sua Saúde.
- Acesse seu portal para uma experiência de saúde integrada, segura e eficiente.
+ Acesse seu portal para uma experiência de saúde integrada, segura
+ e eficiente.
-
-
-
{/* Modal de Recuperação de Senha */}
{isModalOpen && (