2025-10-11 00:29:04 -07:00
|
|
|
import { useEffect } from "react";
|
|
|
|
|
import { useSearchParams } from "react-router";
|
|
|
|
|
import { toast } from "sonner";
|
2025-10-10 23:04:50 -07:00
|
|
|
|
|
|
|
|
import type { Route } from "./+types/home";
|
|
|
|
|
import { Welcome } from "../welcome/welcome";
|
2025-10-11 20:56:00 -07:00
|
|
|
import { expressValueContext } from "~/contexts/express";
|
2025-10-10 23:04:50 -07:00
|
|
|
|
2025-10-11 01:03:58 -07:00
|
|
|
export function meta() {
|
2025-10-10 23:04:50 -07:00
|
|
|
return [
|
2025-10-11 01:03:31 -07:00
|
|
|
{ title: "Brackt - Fantasy Sports Brackets" },
|
2025-10-11 01:03:58 -07:00
|
|
|
{
|
|
|
|
|
name: "description",
|
|
|
|
|
content: "Create and manage your fantasy sports leagues",
|
|
|
|
|
},
|
2025-10-10 23:04:50 -07:00
|
|
|
];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export async function loader({ context }: Route.LoaderArgs) {
|
|
|
|
|
return {
|
2025-10-11 20:56:00 -07:00
|
|
|
message: context.get(expressValueContext) || "No message from Express",
|
2025-10-10 23:04:50 -07:00
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
2025-10-11 01:03:31 -07:00
|
|
|
export default function Home({ loaderData }: Route.ComponentProps) {
|
2025-10-11 00:29:04 -07:00
|
|
|
const [searchParams, setSearchParams] = useSearchParams();
|
|
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
|
if (searchParams.get("deleted") === "true") {
|
|
|
|
|
toast.success("League deleted successfully");
|
|
|
|
|
// Remove the query parameter
|
|
|
|
|
setSearchParams({});
|
|
|
|
|
}
|
|
|
|
|
}, [searchParams, setSearchParams]);
|
|
|
|
|
|
2025-10-11 01:03:31 -07:00
|
|
|
return <Welcome message={loaderData.message} />;
|
2025-10-10 23:04:50 -07:00
|
|
|
}
|