|
1 |
| -import { AlertProvider } from "@/components/alert"; |
2 |
| -import { Toaster } from "@/components/ui/toaster"; |
3 |
| -import { TooltipProvider } from "@/components/ui/tooltip"; |
| 1 | +import { useToast } from "@/hooks/use-toast"; |
4 | 2 | import { Hub } from "aws-amplify/utils";
|
5 | 3 | import { useEffect } from "react";
|
| 4 | +import { useTranslation } from "react-i18next"; |
6 | 5 | import { Outlet, useNavigate } from "react-router";
|
7 | 6 |
|
8 | 7 | export default function Root() {
|
9 | 8 | const navigate = useNavigate();
|
| 9 | + const { toast } = useToast(); |
| 10 | + const { t } = useTranslation(); |
10 | 11 | useEffect(() => {
|
11 | 12 | Hub.listen("auth", (data) => {
|
12 | 13 | if (data.payload.event === "signedOut") {
|
| 14 | + toast({ |
| 15 | + title: t("auth.signedOut"), |
| 16 | + description: t("auth.signedOutDescription"), |
| 17 | + }); |
13 | 18 | navigate("/");
|
14 | 19 | }
|
15 | 20 | if (data.payload.event === "signedIn") {
|
| 21 | + toast({ |
| 22 | + title: t("auth.signedIn"), |
| 23 | + description: t("auth.signedInDescription"), |
| 24 | + }); |
16 | 25 | navigate("/");
|
17 | 26 | }
|
18 | 27 | });
|
19 |
| - }, [navigate]); |
| 28 | + }, [navigate, toast, t]); |
20 | 29 | return (
|
21 | 30 | <div className=" min-h-screen">
|
22 |
| - <TooltipProvider delayDuration={0}> |
23 |
| - <AlertProvider> |
24 |
| - <Outlet /> |
25 |
| - <Toaster /> |
26 |
| - </AlertProvider> |
27 |
| - </TooltipProvider> |
| 31 | + <Outlet /> |
28 | 32 | </div>
|
29 | 33 | );
|
30 | 34 | }
|
0 commit comments