import { useEffect } from "react"; import { Layers, LogIn } from "lucide-react"; import { useNavigate, useSearch } from "@tanstack/react-router"; import { useMe } from "@/client/auth/use-me"; import { buildLoginUrl } from "@/client/auth/login-redirect"; import { BUTTON_BASE_CLASSES, BUTTON_SIZE_CLASSES, BUTTON_VARIANT_CLASSES, } from "@/client/components/ui/button-classes"; import { paths } from "@/client/lib/paths"; export function LoginPage() { const search = useSearch({ from: paths.login }); const navigate = useNavigate(); const me = useMe(); useEffect(() => { if (me.data) { navigate({ to: search.return_to ?? paths.home, replace: true }); } }, [me.data, navigate, search.return_to]); return (
Your DAV-native data home — calendars, contacts, and files on one opaque host, accessible by any standards client.
You will be redirected to tessera and brought back here once authenticated.