diff --git a/client/.prettierrc.json b/client/.prettierrc.json
index 03f6b229..24c09652 100644
--- a/client/.prettierrc.json
+++ b/client/.prettierrc.json
@@ -1,6 +1,6 @@
{
"trailingComma": "es5",
- "tabWidth": 3,
+ "tabWidth": 2,
"semi": true,
"printWidth": 80,
"arrowParens": "avoid"
diff --git a/client/app/contact/page.tsx b/client/app/(landing-pages)/contact/page.tsx
similarity index 100%
rename from client/app/contact/page.tsx
rename to client/app/(landing-pages)/contact/page.tsx
diff --git a/client/app/doctors/page.tsx b/client/app/(landing-pages)/doctors/page.tsx
similarity index 100%
rename from client/app/doctors/page.tsx
rename to client/app/(landing-pages)/doctors/page.tsx
diff --git a/client/app/products/page.tsx b/client/app/(landing-pages)/products/page.tsx
similarity index 100%
rename from client/app/products/page.tsx
rename to client/app/(landing-pages)/products/page.tsx
diff --git a/client/app/staff/@signin/(.)otp-verification/page.tsx b/client/app/staff/@signin/(.)otp-verification/page.tsx
new file mode 100644
index 00000000..a31ae8f5
--- /dev/null
+++ b/client/app/staff/@signin/(.)otp-verification/page.tsx
@@ -0,0 +1,7 @@
+import React from 'react'
+import OtpVerificationModel from '@/components/OtpVerificationModel'
+
+const OptInterceptor = () =>
+
+
+export default OptInterceptor
\ No newline at end of file
diff --git a/client/app/staff/@signin/default.tsx b/client/app/staff/@signin/default.tsx
new file mode 100644
index 00000000..21088585
--- /dev/null
+++ b/client/app/staff/@signin/default.tsx
@@ -0,0 +1,13 @@
+
+import React from 'react'
+import SignIn from './page'
+
+const DefaultSigninPage = () => {
+ return (
+
+
+
+ )
+}
+
+export default DefaultSigninPage
\ No newline at end of file
diff --git a/client/app/staff/@signin/otp-verification/page.tsx b/client/app/staff/@signin/otp-verification/page.tsx
new file mode 100644
index 00000000..05fff084
--- /dev/null
+++ b/client/app/staff/@signin/otp-verification/page.tsx
@@ -0,0 +1,53 @@
+'use client'
+import OtpForm from "@/components/forms/OtpForms";
+import Image from "next/image";
+import Link from "next/link";
+import { FormEvent } from "react";
+
+const OtpVerificationPage = () => {
+ const handleVerify =(e:FormEvent)=>{
+ e.preventDefault();
+ console.log('');
+
+ }
+ const handleResend = ()=>{
+ console.log('');
+ }
+ return (
+
+
+
+
+
+
+
+
+ © 2024 AVM Ayurveda's
+
+
+ Go Back
+
+
+
+
+
+
+
+
+ )
+}
+
+
+export default OtpVerificationPage
\ No newline at end of file
diff --git a/client/app/staff/signin/page.tsx b/client/app/staff/@signin/page.tsx
similarity index 91%
rename from client/app/staff/signin/page.tsx
rename to client/app/staff/@signin/page.tsx
index 21b2c989..77d2153d 100644
--- a/client/app/staff/signin/page.tsx
+++ b/client/app/staff/@signin/page.tsx
@@ -19,8 +19,8 @@ const SignIn = () => {
© 2024 AVM Ayurveda's
-
- Patient
+
+ opt
diff --git a/client/app/staff/default.tsx b/client/app/staff/default.tsx
new file mode 100644
index 00000000..26f53e05
--- /dev/null
+++ b/client/app/staff/default.tsx
@@ -0,0 +1,8 @@
+import React from 'react'
+import Dashboard from './page'
+
+const DashboardDefaultPage = () => {
+ return
+}
+
+export default DashboardDefaultPage
\ No newline at end of file
diff --git a/client/app/staff/layout.tsx b/client/app/staff/layout.tsx
index 2c29d1ff..439d8773 100644
--- a/client/app/staff/layout.tsx
+++ b/client/app/staff/layout.tsx
@@ -1,19 +1,22 @@
-import React from "react";
+import { ReactNode, FC } from "react";
import SideBar from "@/components/SideBar";
import { Metadata } from "next";
interface AdminLayoutWrapperProps {
- children: React.ReactNode;
+ children: ReactNode;
+ signin: ReactNode;
}
export const metadata: Metadata = {
title: "Dashboard",
};
-const AdminLayoutWrapper: React.FC = ({
+const AdminLayoutWrapper: FC = ({
+ signin,
children,
}) => {
- return (
+ const isLoggedIn = false;
+ return isLoggedIn ? (
@@ -22,6 +25,8 @@ const AdminLayoutWrapper: React.FC
= ({
+ ) : (
+ signin
);
};
diff --git a/client/app/staff/page.tsx b/client/app/staff/page.tsx
index e6af69ff..d182ca00 100644
--- a/client/app/staff/page.tsx
+++ b/client/app/staff/page.tsx
@@ -15,21 +15,3 @@ const Dashboard = () => {
export default Dashboard;
-// import React from "react";
-
-// const Dashboard = () => {
-// return (
-//
-//
-//
Dashboard
-//
-//
-//
-// );
-// };
-
-// export default Dashboard;
diff --git a/client/app/staff/products/page.tsx b/client/app/staff/products/page.tsx
new file mode 100644
index 00000000..5d892769
--- /dev/null
+++ b/client/app/staff/products/page.tsx
@@ -0,0 +1,9 @@
+import React from 'react'
+
+const ProductsPage = () => {
+ return (
+ ProductsPage
+ )
+}
+
+export default ProductsPage
\ No newline at end of file
diff --git a/client/components/Footer.tsx b/client/components/Footer.tsx
index 29ab83de..6109219c 100644
--- a/client/components/Footer.tsx
+++ b/client/components/Footer.tsx
@@ -26,7 +26,7 @@ const Footer = () => {
/>
- © {new Date().getFullYear()} AVM Ayurvedic. All rights reserved.
+ © {new Date().getFullYear()} AVM Ayurvedic.
diff --git a/client/components/otp-verfication.tsx b/client/components/OtpVerificationModel.tsx
similarity index 95%
rename from client/components/otp-verfication.tsx
rename to client/components/OtpVerificationModel.tsx
index 29ccb8a5..57303375 100644
--- a/client/components/otp-verfication.tsx
+++ b/client/components/OtpVerificationModel.tsx
@@ -1,9 +1,7 @@
"use client";
-
import { useState } from "react";
import Image from "next/image";
import { useRouter } from "next/navigation";
-
import {
AlertDialog,
AlertDialogAction,
@@ -19,8 +17,9 @@ import {
InputOTPSlot,
} from "@/components/ui/input-otp";
import { Otptimer } from "otp-timer-ts";
+import { OptModelProps } from "@/types";
-const OtpVerificationModel = () => {
+const OtpVerificationModel = ({ returnRoute }: OptModelProps) => {
const router = useRouter();
const [open, setOpen] = useState(true);
const [otp, setOtp] = useState("");
@@ -28,7 +27,7 @@ const OtpVerificationModel = () => {
const closeModal = () => {
setOpen(false);
- router.push(`/`);
+ router.push(returnRoute);
};
const handleResend = () => {
diff --git a/client/components/forms/OtpForms.tsx b/client/components/forms/OtpForms.tsx
new file mode 100644
index 00000000..ef2fcc99
--- /dev/null
+++ b/client/components/forms/OtpForms.tsx
@@ -0,0 +1,52 @@
+"use client";
+
+import { useState} from "react";
+import {
+ InputOTP,
+ InputOTPGroup,
+ InputOTPSlot,
+} from "@/components/ui/input-otp";
+import { Button } from "@/components/ui/button";
+import { Otptimer } from "otp-timer-ts";
+import { OtpFromProps } from "@/types/fromTypes";
+
+export default function OtpVerificationSection({handleVerify,handleResend,timer}:OtpFromProps) {
+ const [otp, setOtp] = useState("");
+
+ return (
+
+ );
+}
diff --git a/client/components/forms/staff/SigninForm.tsx b/client/components/forms/staff/SigninForm.tsx
index 5770e498..d886e719 100644
--- a/client/components/forms/staff/SigninForm.tsx
+++ b/client/components/forms/staff/SigninForm.tsx
@@ -33,7 +33,7 @@ const SigninForm = () => {
className="space-y-6 flex-1"
>
- Doctor Signin
+ Staffs Signin
Please signin to go to dashboard
diff --git a/client/types/fromTypes.ts b/client/types/fromTypes.ts
index 8f9cf83e..4decd8e5 100644
--- a/client/types/fromTypes.ts
+++ b/client/types/fromTypes.ts
@@ -1,4 +1,4 @@
-import { FC } from "react";
+import { FC, FormEvent } from "react";
import { Control } from "react-hook-form";
export enum FormFieldType {
@@ -30,3 +30,10 @@ export interface CustomProps {
Icon?: FC<{ className?: string }>;
doctor?: string;
}
+
+
+export interface OtpFromProps {
+ handleVerify:(e:FormEvent)=>void;
+ handleResend:()=>void;
+ timer:number;
+}
\ No newline at end of file
diff --git a/client/types/index.ts b/client/types/index.ts
index 39a59aaa..e638a947 100644
--- a/client/types/index.ts
+++ b/client/types/index.ts
@@ -28,3 +28,7 @@ export type AnimatedCardProps = {
imageClassName?: string;
children?: ReactNode;
};
+
+export type OptModelProps = {
+ returnRoute:string;
+}
\ No newline at end of file