diff --git a/next-env.d.ts b/next-env.d.ts
index c4b7818..9edff1c 100644
--- a/next-env.d.ts
+++ b/next-env.d.ts
@@ -1,6 +1,6 @@
///
///
-import "./.next/dev/types/routes.d.ts";
+import "./.next/types/routes.d.ts";
// NOTE: This file should not be edited
// see https://nextjs.org/docs/app/api-reference/config/typescript for more information.
diff --git a/src/app/(full-page)/forgot-password/page.tsx b/src/app/(full-page)/forgot-password/page.tsx
new file mode 100644
index 0000000..1cf396d
--- /dev/null
+++ b/src/app/(full-page)/forgot-password/page.tsx
@@ -0,0 +1,94 @@
+'use client';
+
+import Link from 'next/link';
+import { MailCheck, Send } from 'lucide-react';
+import { Suspense } from 'react';
+
+import { FormField } from '@/components/form';
+import { Button } from '@/components/ui/button';
+import { Input } from '@/components/ui/input';
+import { GuestGuard } from '@/guards';
+import { useForgotPasswordForm } from '@/hooks/useForgotPasswordForm';
+import { ROUTES } from '@/utils/routes';
+import { Loader2 } from 'lucide-react';
+
+function ForgotPasswordContent() {
+ const {
+ register,
+ handleSubmit,
+ errors,
+ isLoading,
+ isSubmitted,
+ isFormSubmitted,
+ canSubmit,
+ displayInfo,
+ } = useForgotPasswordForm();
+
+ return (
+
+
+
+
+
+
+
+ {!isSubmitted ? (
+
+ ) : (
+
+ )}
+
+
+
+
+ );
+}
+
+export default function ForgotPasswordPage() {
+ return (
+
+
+
+ );
+}
diff --git a/src/app/(full-page)/login/page.tsx b/src/app/(full-page)/login/page.tsx
index 12c140a..d137fb5 100644
--- a/src/app/(full-page)/login/page.tsx
+++ b/src/app/(full-page)/login/page.tsx
@@ -1,10 +1,14 @@
'use client';
+import Link from 'next/link';
+
+import { PasswordField } from '@/components/form';
import { Button } from '@/components/ui/button';
import { Input } from '@/components/ui/input';
import { Label } from '@/components/ui/label';
import { GuestGuard } from '@/guards';
import { useLoginForm } from '@/hooks/useLoginForm';
+import { ROUTES } from '@/utils/routes';
import { Loader2 } from 'lucide-react';
export default function LoginPage() {
@@ -47,25 +51,24 @@ export default function LoginPage() {
)}
-
-
-
- {errors.password && (
-
- {errors.password.message}
-
- )}
-
+
+ Forgot password?
+
+ }
+ placeholder="Enter password"
+ autoComplete="current-password"
+ disabled={isLoading}
+ aria-invalid={!!errors.password}
+ error={errors.password?.message}
+ {...register('password', {
+ required: 'Password is required',
+ })}
+ />