diff --git a/app/components/ui/footer.tsx b/app/components/ui/footer.tsx index f834900c..68fb7daf 100644 --- a/app/components/ui/footer.tsx +++ b/app/components/ui/footer.tsx @@ -1,10 +1,10 @@ import { FC } from "react"; -import facebook from "../../../public/images/facebook.png"; -import instagram from "../../../public/images/instagram.png"; -import linkedin from "../../../public/images/linkedin.png"; -import twitter from "../../../public/images/twitter.png"; -import youtube from "../../../public/images/youtube.png"; +import facebook from "../../../images/facebook.png"; +import instagram from "../../../images/instagram.png"; +import linkedin from "../../../images/linkedin.png"; +import twitter from "../../../images/twitter.png"; +import youtube from "../../../images/youtube.png"; const Footer: FC = () => { return ( diff --git a/app/routes/magicLink.tsx b/app/routes/magicLink.tsx new file mode 100644 index 00000000..ee67d6f2 --- /dev/null +++ b/app/routes/magicLink.tsx @@ -0,0 +1,98 @@ +import { Form } from "@remix-run/react"; +import shield from "/static/image/shield-check.svg"; +import { useForm } from "react-hook-form"; + +import Navbar from "~/components/static-navbar/static-navbar"; +import { Button } from "~/components/ui/button"; +import Footer from "~/components/ui/footer"; +import { Input } from "~/components/ui/input"; +import { Label } from "~/components/ui/label"; + +interface FormData { + email: string; +} + +const LoginWithMagicLink = () => { + const { + register, + handleSubmit, + formState: { errors, isSubmitting }, + } = useForm(); + + const onSubmit = async (data: FormData) => { + console.log("Valid email submitted", data.email); + }; + + return ( + <> + +
+
+ Login With Email Link +
+
+
+ + + {errors.email && ( + + {errors.email.message} + + )} +
+ + +
+
+
+ shield +
+
+ + By logging in, you agree to the{" "} + + + Terms of Service + + and + + Privacy Policy + +
+
+
+