import { Form, Link, useActionData, useLoaderData, useSearchParams, useTransition } from "@remix-run/react"; import type { SignInActionData } from "../actions/sign-in"; import type { SignInLoaderData } from "../loaders/sign-in"; import LabeledTextField from "~/features/core/components/labeled-text-field"; import Alert from "~/features/core/components/alert"; import Button from "~/features/core/components/button"; export default function SignInPage() { const [searchParams] = useSearchParams(); const loaderData = useLoaderData(); const actionData = useActionData(); const transition = useTransition(); const isSubmitting = transition.state === "submitting"; return (

Welcome back!

Need an account?  Create yours for free

{loaderData?.errors ? (
) : null} Forgot your password? } />
); }